如何集成 AWS Cognito 内置 UI?

Pab*_*nda 5 callbackurl aws-cognito

我已经试验 Cognito 几天了,现在我正在测试内置签名 UI。我已经设法让它工作,我能够看到登录页面并使用我创建的用户成功登录。对于我的回调 URL,我使用 localhost:3000 作为测试场,我在那里运行 React SPA。

但是,一旦我被重定向,我完全不知道该怎么做。文档说我应该得到一个带有 JWT 的 URL 作为查询参数。相反,我得到了表单的 URL:

localhost:3000/?code=########-####-####-####-############

其中#是字母数字字符。我不认识这段代码,我认为它不是 JWT。我非常感谢任何人都可以:

  1. 解释它是什么
  2. 指导我查看有关如何使用它的任何类型的文档?

Jay*_*dha 7

重定向后,你得到 localhost:3000/?code=########-####-####-####-############

这意味着您已启用代码授权流程

此代码用于从 Amazon Cognito 获取令牌。

请求类型:POST

网址https : //mydomain.auth.us-east-1.amazoncognito.com/oauth2/token

有效载荷grant_type=authorization_code& client_id=<CLIENT_ID>& code=<AUTHORIZATION_CODE>& redirect_uri=com.myclientapp://myclient/redirect

在这里您可以看到我们正在传递code带有重定向 url 的负载。

此 POST 请求的响应将是您的令牌(如果身份验证成功:))

示例响应:

{
 "access_token":"eyJz9sdfsdfsdfsd",
 "refresh_token":"dn43ud8uj32nk2je",
 "id_token":"dmcxd329ujdmkemkd349r",
 "token_type":"Bearer", 
 "expires_in":3600
}
Run Code Online (Sandbox Code Playgroud)

您可以将此令牌保存在 localstorage 或 sessionstorage 中以进行进一步的自定义身份验证。

有关更多详细信息,请参阅 amazon cognito 的所有可用端点。

例如: 授权端点 令牌端点

我希望现在你清楚了!

  • 我们正在自定义 UI 应用程序中进行令牌授权。但是您可以查看从浏览器的网络选项卡调用的端点。尝试通过从 PostMan/Advance Rest Client 手动调用它们来检查该 URL。希望这可以帮助! (2认同)