使用 AWS Cognito 通过 SMS OTP 注册和登录

时间:2021-01-21 08:17:32

标签: node.js amazon-web-services authentication amazon-cognito

我正在尝试使用 AWS Cognito 和 expressJS 后端集成基于 SMS OTP 的注册和登录流程。

我只需要遵循基本功能:

  1. 在 express 应用中调用 /sendSMS API 后,应将 OTP 发送到该电话号码。
  2. /verifySMS API 上,应验证电话号码和 OTP,并应在用户池中创建用户。
  3. /resendSMS API 上,将 OTP 重新发送到该特定电话号码。

我可以使用 npm 包 (https://www.npmjs.com/package/amazon-cognito-identity-js) 的 userPool.signUp 方法将 OTP 发送到电话号码。但这仅允许注册而不允许登录。此外,如果没有密码,这是不可能的。

如何在没有密码的情况下实现上述功能,也可以用于登录?

感谢任何帮助。