【发布时间】:2021-05-03 14:34:37
【问题描述】:
我正在开发一个 react/aws 放大应用程序。我想实现一个基于电子邮件的 MFA 身份验证流程。从我在 aws 文档中看到的情况来看,似乎唯一的选择是基于文本的 MFA 或 TOTP。
有没有办法配置登录过程以将代码发送到用户的电子邮件而不是短信?
【问题讨论】:
标签: reactjs aws-amplify
我正在开发一个 react/aws 放大应用程序。我想实现一个基于电子邮件的 MFA 身份验证流程。从我在 aws 文档中看到的情况来看,似乎唯一的选择是基于文本的 MFA 或 TOTP。
有没有办法配置登录过程以将代码发送到用户的电子邮件而不是短信?
【问题讨论】:
标签: reactjs aws-amplify
Cognito 可以配置为在用户首次注册时验证用户的电子邮件。 Cognito 将通过电子邮件发送确认码并等待用户确认收据。
您说的是登录的多重身份验证。我认为 Cognito 没有任何用于登录的预构建电子邮件身份验证挑战。
但是,您可以创建自己的自定义挑战。见Custom Authentication Challenge Lambda Triggers。
一个简单的实现是生成一个随机代码,并将其保存到 DynamoDB。使用 Amazon SES 将代码发送给您的用户。在您的验证 Lambda 中,从 DynamoDB 检索代码并根据用户提供的内容对其进行检查。如果两者匹配,则从 Lambda 返回成功。
【讨论】: