如何在服务器上验证AWS Cognito用户(在nodeJS上运行)

时间:2018-01-14 00:44:39

标签: amazon-web-services jwt amazon-cognito

我使用AWS Cognito用户池注册&登录我的用户(客户端,iOS)。我的用户调用NodeJS上运行的服务器上的端点(EC2实例)。如何在服务器(NodeJS)上验证我的用户?

我看到的一种方法是,在客户端生成JWT令牌,并将其与POST请求一起传递给服务器并对其进行验证。

使用Cognito Userpools可以实现吗?还是有更好的选择吗?

1 个答案:

答案 0 :(得分:0)

首先,AWS Cognito Userpools能够在针对Userpool进行身份验证后生成JWT令牌(id_token)。

有两种方法可以生成JWT令牌。

  • 使用AWS Cognito Userpools Hosted UI,您可以获得id_token。如果您启用openid声明并使用隐式授权,它将直接从Cognito登录页面重定向到您定义的URL。如果您使用授权代码流,则需要使用AWS SDK和令牌端点的后端代码。

  • 您还可以使用AWS SDK并实施自定义登录页面,使用SDK生成id_token。

使用标准JWT验证库,id_token可以是verified at your API