如何验证用户使用AWS Cognito浏览器?

问题描述 投票:3回答:1

我需要在浏览器中(不是移动应用程序),使用AWS Cognito使用用​​户名来验证用户名/密码,不FB /谷歌IdProviders。

有很多文档,但他们似乎是它不完整,不符合要求或不符合每个人的独立块:(

我创建Cognito用户群,那么身份游泳池,追平了userpool到idPool,然后我坚持。不知道用哪个库以及如何使用它。我找到最接近的是:

  • https://aws.amazon.com/sdk-for-browser/但我的经验是不够的,他们的FB样品未使用FB转换
  • https://github.com/aws/aws-amplify但使用这个LIB我得研究从一开始就做出反应/角(我不是一个前端开发人员,对不起),我不知道如何把自己的基于NPM-样本转换为前端的JavaScript( NPM是这样的NodeJS后端,是不是?)。

所有我需要的是普通的HTML形式的用户名/密码,将请求发送到Cognito和方式接下来的页面加载过程中检查密码是否正确。如果它的事项,我将使用AWS lambda作为后端处理今后的任务。

我该怎么做?有没有我的情况下教程/ DOC?谢谢。

javascript amazon-web-services browser amazon-cognito
1个回答
0
投票

您可以使用托管的用户界面为你的使用情况AWS Cognito UserPools。最简单的认证形式是使用隐式授权。

For more information about setting up Hosted UI refer Add an App to Enable the Hosted Web UI.。这将创建一个了userpool,用户可以注册他们自己(如果您打算限制这一点,你需要添加或者使用AWS Web控制台,Cognito UserPools或使用其SDK用户)

步骤如下。

  • 建立Cognito托管的用户界面和注册您的应用程序域。这将为你的登录/注册页面,每个的,这将有一个唯一的URL。你所要做的是,如果用户没有通过验证(让我们来讨论如何检测后它),你需要将用户重定向到登录页面。
  • 在登录的网址,您还需要指定重定向URL后面的应用程序,以便在成功登录后,Cognito将用户重定向到在查询字符串提供令牌的应用程序。
  • 然后,您可以从应用程序中访问id_token,并用它来查询后端。
  • 由于id_token是JWT令牌则可以使用可在Cognito token endpoint公钥在后端验证。
  • 为了实现JWT验证,也可以指Cognito JWT Token validator模块的NodeJS。

注意:如果你需要保持用户对较长一段时间内登录(超过1个小时),则可能需要使用该准则格兰特流动,这将返回一个刷新令牌,它可以用来编程方式检索新id_tokens。

© www.soinside.com 2019 - 2024. All rights reserved.