【发布时间】:2022-12-11 11:48:03
【问题描述】:
我有以下场景,并试图了解实现它的正确方法。
我有 Okta 作为我的 IDP。用于管理我的 API 和一些处理 API 请求的 lambda 的 Amazon API 网关。身份池用于向访问 API 的客户端提供 AWS 凭证。
当客户端访问 API 时,我需要我的 lambda(处理请求)从 DynamoDB 获取数据,并根据登录到客户端的用户特定的一些属性对其进行过滤。例如我需要使用 API 检索客户的帐户,但用户只能访问某些帐户,因此 lambda 应该过滤结果。
我正在考虑为 Okta 中的每个用户定义一些自定义声明。当客户端使用 Okta 进行身份验证时,它会收到一个包含这些声明的 JWT 令牌。它使用此令牌从身份池中获取 AWS 凭证,以访问 API。 API 会触发 lambda。在这里,我想检索声明并使用它们来过滤数据。
关于如何实现这一目标的任何想法?或者有更好的方法来解决这个问题吗?
谢谢你。
【问题讨论】:
-
嗯,你真的需要这里的身份池吗? API Gateway Lambda 授权方对您不起作用?
-
让我探索 API Gateway Lambda 授权方。我不知道他们是如何工作的。谢谢你。
标签: aws-lambda jwt amazon-cognito aws-identitypools