gpt4 book ai didi

node.js - 如何将 AWS Cognito 与自定义 NodeJS 服务器结合使用?

转载 作者:搜寻专家 更新时间:2023-11-01 00:28:34 25 4
gpt4 key购买 nike

我正在使用 Angular 和 NodeJS 构建应用。

我听说过 AWS Cognito 并想在我的应用程序中使用它。但是,文档中并不清楚它应该如何工作。

There is an example关于如何将 Cognito 与 Angular SPA 一起使用,但没有关于如何使用它在我的支持 NodeJS 服务器上对用户进行身份验证的消息。

NodeJS 应该如何知道用户是否已登录?我可以想到几个可能的答案,但没有一个出现在文档中,而且令人惊讶的是没有代码示例。所以我决定在投入大量时间进行反复试验之前先在这里问一下。

最佳答案

您可以在后端 NodeJS 服务器中使用 AWS Cognito 用户池来对用户进行身份验证。步骤如下。

  • 创建 Cognito 用户池并设置 App 客户端。
  • 创建一个 Cognito 用户池(如果您希望您的用户直接允许受控访问 AWS 服务,则可以选择 Cognito 联合身份)。
  • 配置 Cognito 托管用户界面(内置登录页面和可选的注册页面)。
  • 对于用户登录,将用户重定向到此域 URL 以进行登录。
  • 为 Oauth2 流程设置一个带有重定向 URL 的应用程序客户端。
  • 用户登录后,您将在 URL 中收到一个 id_token(例如,在隐式授权流程中),您可以将其转发到您的 NodeJS 服务器,您可以在其中使用 NodeJS 中间件对其进行验证。
  • 您可以决定是将 id_token 存储在 cookie 中还是浏览器存储中,并为后续请求相应地实现存储和验证。

注意:由于 id_token 是标准的 JavaScript Web token (JWT),您可以找到一个库来验证它。引用AWS documentation Using Tokens with User Pools了解更多详情。

关于node.js - 如何将 AWS Cognito 与自定义 NodeJS 服务器结合使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47893369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com