如何在 API 网关上的 cognito 授权方保护的 lambda 函数中获取 AWS Cognito 用户数据
Posted
技术标签:
【中文标题】如何在 API 网关上的 cognito 授权方保护的 lambda 函数中获取 AWS Cognito 用户数据【英文标题】:How to get AWS Cognito user data inside a lambda function protected by a cognito authorizer on API gateway 【发布时间】:2018-09-13 08:03:06 【问题描述】:我正在使用无服务器。我已经创建了我的用户池并使用 AWS APi 网关上的 Cognito 用户池授权器保护了我的 lambda 函数。
现在,在我的 lambda 函数中,我想让我的用户 ID 和其他数据用作 dynamodb 存储的键,如下所示:
module.exports.helloprotected = (event, context, callback) =>
// event.request.userAttributes; -> does not work
;
【问题讨论】:
【参考方案1】:设法得到它:
event.requestContext
我发现可能适用于其他设置/场合的其他答案:
event.request.userAttributes
context.authorizer
注意:为了能够获取用户详细信息,您应该在您的 API 网关(在您的集成请求中)或在创建您的方法时启用 使用 Lambda 代理集成 .
【讨论】:
以上是关于如何在 API 网关上的 cognito 授权方保护的 lambda 函数中获取 AWS Cognito 用户数据的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Terraform 在 API 网关上启用 HEAD 方法
如何解决“在集成或 API 网关上配置的 IAM 角色没有调用集成的权限
具有 Cognito 用户池授权方的 AWS SAM API
如何允许API网关代理与POST请求的Cognito Authorizer集成?