将用户 phone 号码属性更新为 AWS Cognito 并使用 node.js 通过短信 mfa 验证 phone 号码

update a user phone number attribute to AWS cognito and verify phone number through sms mfa using node.js

有谁能帮我满足上述要求吗?

我们必须更新 AWS cognito 中的 phone_number 属性并发送短信 MFA 以确认手机号码。而且我们还必须验证发送给用户的代码。

如果您在设置中启用了 phone 验证,Cognito 会自动执行此操作。只需 运行 UpdateUserAttributes 函数并设置一个新的 phone 数字。

https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserAttributes.html

当然可以。您需要使用 AWS SDK。

const AWS = require('aws-sdk');
const config = require('./config'); 

function updateAttribute(params) {
    AWS.config.update({
        'region' : config.AWSConfig.region,
        'accessKeyId': config.AWSConfig.accessKeyId,
        'secretAccessKey': config.AWSConfig.secretAccessKey
    });
    let cognitoIdentityServiceProvider = new AWS.CognitoIdentityServiceProvider();

    let parameters = { UserPoolId : config.userPoolDetails.userPoolId,
    Username : params.userName,
    UserAttributes : [
        {
            'Name': params.nameOfAttribute ,
            'Value': params.newValueOfAttribute
        },
    ]}
    
    cognitoIdentityServiceProvider.adminUpdateUserAttributes(parameters,function (err, result) {
        if(err)
        console.log(err);
        else
        console.log("Attribute updated successfully");
    })
}

let params = {
    userName : 'username',
    nameOfAttribute : 'name',
    newValueOfAttribute : 'Sachin'
}

updateAttribute(params);

您甚至可以像这样添加新属性。

您可以在此处阅读更多内容:https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminUpdateUserAttributes.html