我想使用电话号码作为我的应用程序的用户名,并且希望每次登录时都只需验证电话号码即可简化注册过程-无需记住任何麻烦的密码。
如何使用AWS Cognito用户池来执行此操作,要求我为每个用户强制配置密码。
我想到了为每个用户使用虚拟密码并配置强制用户验证。每次用户注销时,我都可以“取消验证”用户,以便下次自动要求他们验证电话号码。另外,如果用户通过验证,我会将我的应用程序连接为仅“登录”。
请让我知道最好的方法是否是:(我是AWS新手,在这种情况下我找不到任何帖子。
谢谢 !!
由于AWS Cognito当前不支持无密码身份验证,因此您需要使用外部存储的随机密码实施变通方法。您可以按以下方式实施身份验证流程。
检查以下代码示例以了解MFA的见解,并参考此链接以获取更多详细信息。
var userData = {
Username : 'username',
Pool : userPool
};
cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);
var authenticationData = {
Username : 'username',
Password : 'password',
};
var authenticationDetails = new AWSCognito.CognitoIdentityServiceProvider.AuthenticationDetails(authenticationData);
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
alert('authentication successful!')
},
onFailure: function(err) {
alert(err);
},
mfaRequired: function(codeDeliveryDetails) {
var verificationCode = prompt('Please input verification code' ,'');
cognitoUser.sendMFACode(verificationCode, this);
}
});
注意:此处,带有手机号码的MFA并非用于MFA,而是一种满足您要求的解决方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句