在 AWS Cognito 和 Lambda 中获取 Facebook 访问令牌

Posted

技术标签:

【中文标题】在 AWS Cognito 和 Lambda 中获取 Facebook 访问令牌【英文标题】:Get Facebook access token in AWS Cognito and Lambda 【发布时间】:2018-04-01 14:12:27 【问题描述】:

我正在使用 Amazon 的 AWS Cognito 以及 Lambda 和 Facebook Login 创建一个小型 API。

当用户/我的应用程序向 Lambda 发送 API 请求时,Cognito 会做得很好,并使用它的 Facebook-Login 即时对用户进行身份验证。我的观点是,据我所知,Cognito 没有提供有关用户的任何信息(如 ID 或 Fb 访问令牌),当然我在请求中提供了它。

在我的例子中,我想在 AWS Lambda 中获取用户 Facebook 访问令牌来使用它做一些事情。

有谁知道如何获取当前用户的任何信息,即访问 API(如 Fb 访问令牌)还是 Cognito 以这种方式是一个封闭系统?

【问题讨论】:

【参考方案1】:

如果您使用 Facebook 与 Cognito 用户池的集成(在联合 -> 身份提供者下),则可以通过转到联合 -> 属性映射 -> Facebook 选项卡将 Facebook 集成中的 access_token 映射到可用的 Cognito 属性. facebook ID 是用户名,减去“Facebook_”前缀。

希望这会有所帮助!

【讨论】:

您好 JoshuaC,请您进一步详细说明。我有 facebook 访问令牌需要帮助在 Cognito 用户池中将其映射到适当的用户 ID

以上是关于在 AWS Cognito 和 Lambda 中获取 Facebook 访问令牌的主要内容,如果未能解决你的问题,请参考以下文章

通过 AWS Lambda 和 Cognito 注册用户(无服务器架构)

我是不是需要在 Lambda 和 API 网关中验证 AWS Cognito 令牌?

AWS API Gateway + Cognito 用户池授权方 + Lambda - 我需要设置哪些 HTTP 标头和权限?

使用 Lambda 授权方的 AWS Cognito 和 API 网关

在 AWS lambda 上列出 cognito userpool 用户

在 AWS Cognito 用户池中删除用户时触发 Lambda 函数