代码之家  ›  专栏  ›  技术社区  ›  Pablo Barría Urenda

如何集成AWS Cognito内置UI?

  •  2
  • Pablo Barría Urenda  · 技术社区  · 8 年前

    我已经用cognoto做了几天的实验,现在我正在测试内置的签名ui。我已经成功地让它工作,我能够看到登录页面,并成功地与我创建的用户登录。对于我的回调URL,我使用localhost:3000作为测试平台,在这里我运行一个React SPA。

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

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

    哪里 # 是一个字母数字字符。我不认识这个代码,我不认为它是JWT。我非常感谢任何人能够:

    1. 解释它是什么
    2. 告诉我如何使用它的任何文档?
    1 回复  |  直到 8 年前
        1
  •  3
  •   Jayesh Dhandha    8 年前

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

    这意味着您已启用 code grant flow

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

    请求类型 :发布

    统一资源定位地址 : 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
    }
    

    您可以将此令牌保存在本地存储或会话存储中,以进行进一步的自定义身份验证。

    请参考amazon cognito的所有可用端点以了解更多详细信息。

    前任: Authorization Endpoint Token Endpoint

    希望你现在明白了!