【发布时间】:2018-08-11 16:42:32
【问题描述】:
鉴于用户的 cognito-Id 有没有办法在 lambda 中获取与他们关联的自定义属性?
我指的属性是时区,因为时间保存在数据库中的unix中,当它转换为用户查看时,我需要知道他们的时区。
作为问题的额外文字不符合质量标准
【问题讨论】:
标签: amazon-web-services aws-lambda aws-cognito
鉴于用户的 cognito-Id 有没有办法在 lambda 中获取与他们关联的自定义属性?
我指的属性是时区,因为时间保存在数据库中的unix中,当它转换为用户查看时,我需要知道他们的时区。
作为问题的额外文字不符合质量标准
【问题讨论】:
标签: amazon-web-services aws-lambda aws-cognito
如果您将 API Gateway 与 Cognito 授权方(和 Lambda 代理集成)一起使用,您可以通过 requestContext 获取用户的自定义属性,例如 event.requestContext.authorizer.claims["custom:timezone"]。
(顺便说一下,Cognito 提供了一个名为zoneinfo 的标准属性。)
如果您没有使用 Cognito 授权方,您可以通过提供用户名和用户池 ID 使用 AdminGetUser 获取用户的自定义属性。在这种情况下,您的 Lambda 函数的 IAM 角色需要有一个允许规则才能对您的用户池资源执行 "cognito-idp:AdminGetUser" 操作。
【讨论】: