如何通过aws联合身份验证获取经过身份验证的用户电子邮件

问题描述:

使用aws mobile hub创建移动应用程序,该应用程序使用Google身份验证。认证完成后,它调用api网关,网关调用lambda函数。需要提取已登录的用户的电子邮件,无论是在网关还是lamda函数中使用某些自定义逻辑。 Lambda是用java编写的。如何通过aws联合身份验证获取经过身份验证的用户电子邮件

如果不知道如何配置API Gateway-Lambda集成,很难给出具体答案。

来自Cognito的信息应通过event.requestContext.identity(除非您的API网关映射模板更改它)提供给您。您可能仍需要使用Cognito库来检索附加信息。

您需要的信息(并非总是)出现在JWT令牌中。取决于身份提供者(Google,Facebook等)的设置。如果电子邮件地址不在JWT令牌中,则无法访问它。某些身份提供商可以控制您可以访问的信息级别。

评论这篇文章的详细信息:

Introducing custom authorizers in Amazon API Gateway