要在Amazon Cognito中使用具有低开销限额的Amazon SNS服务器位置,您可以通过使用AWS SDK for JavaScript中的CognitoIdentityServiceProvider类来设置Cognito User Pool的自定义消息配置。以下是一个示例代码,演示如何设置低开销限额的Amazon SNS服务器位置。
首先,您需要安装AWS SDK for JavaScript,并配置AWS凭证。然后,使用以下代码示例:
const AWS = require('aws-sdk');
const cognitoIdentityServiceProvider = new AWS.CognitoIdentityServiceProvider();
const userPoolId = 'YOUR_USER_POOL_ID';
const params = {
UserPoolId: userPoolId,
AutoVerifiedAttributes: ['email'],
SmsVerificationMessage: 'Your verification code is {####}',
EmailVerificationMessage: 'Your verification code is {####}',
EmailVerificationSubject: 'Verify your email',
DefaultEmailOption: 'CONFIRM_WITH_LINK',
CustomEmailSender: {
LambdaArn: 'YOUR_CUSTOM_EMAIL_SENDER_LAMBDA_ARN'
},
CustomSmsSender: {
LambdaArn: 'YOUR_CUSTOM_SMS_SENDER_LAMBDA_ARN'
}
};
cognitoIdentityServiceProvider.setUserPoolMfaConfig(params, (err, data) => {
if (err) {
console.log('Error:', err);
} else {
console.log('Success:', data);
}
});
在上面的示例中,将YOUR_USER_POOL_ID替换为您的Cognito User Pool ID。然后,将YOUR_CUSTOM_EMAIL_SENDER_LAMBDA_ARN和YOUR_CUSTOM_SMS_SENDER_LAMBDA_ARN替换为您的自定义Amazon SNS服务器位置的Lambda ARN。
通过调用setUserPoolMfaConfig方法,并提供所需的参数,您可以设置Cognito User Pool的自定义消息配置。在示例中,我们设置了自定义的电子邮件和短信发送器Lambda ARN。
这样,当用户需要通过电子邮件或短信验证其身份时,Cognito将使用您指定的低开销限额的Amazon SNS服务器位置发送验证消息。