【问题标题】:Send OTP on email instead of SMS -Cognito通过电子邮件而不是 SMS 发送 OTP -Cognito
【发布时间】:2021-04-28 13:31:08
【问题描述】:
有没有办法通过电子邮件而不是短信发送一次性密码?
SMS 在不同国家/地区有许多限制和规定,而 TOTP 恰好对非技术用户不友好。
我知道我可以有自定义流程,但我们想继续使用 Amplify 进行登录。在 cognito 服务中实现这一目标的最直接方法是什么?
【问题讨论】:
标签:
amazon-cognito
aws-amplify
serverless-framework
aws-serverless
multi-factor-authentication
【解决方案1】:
不,您不能使用 Amplify
import { Auth } from 'aws-amplify';
##您可以选择首选的mfa类型,例如:
##选择 TOTP 作为首选
Auth.setPreferredMFA(user, 'TOTP').then((data) => {
console.log(data);
// ...
}).catch(e => {});
// 选择短信为首选
Auth.setPreferredMFA(user, 'SMS');
// 选择no-mfa
Auth.setPreferredMFA(user, 'NOMFA');