使用JavaScript SDK从AWS Cognito创建管理员用户

8
我正在尝试从AWS Lambda中创建一个AWS用户池的用户。
我尝试使用这个脚本,它似乎是AWS官方JavascriptSDK的一部分,但无法使其工作。 http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html#adminCreateUser-property 我一直收到这个错误:TypeError:cognitoidentityserviceprovider.adminCreateUser不是一个函数。
var cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider({apiVersion: '2016-04-18'});

var params = {
    UserPoolId: 'eu-west-1_XXXXXXXX', /* required */
    Username: 'me@example.com', /* required */
    DesiredDeliveryMediums: [
        'EMAIL'
    ],
    ForceAliasCreation: false,
    MessageAction: 'SUPPRESS',
    TemporaryPassword: 'tempPassword1',
    UserAttributes: [
        {
            Name: 'email', /* required */
            Value: 'me@example.com'
        },
        {
            Name: 'name', /* required */
            Value: 'Me'
        },
        {
            Name: 'last_name', /* required */
            Value: 'lastme'
        }
        /* more items */
    ]
};
cognitoidentityserviceprovider.adminCreateUser(params, function(err, data) {
    if (err) console.log(err, err.stack); // an error occurred
    else     console.log(data);           // successful response
    callback(null, data);
});

在你的例子中,AWS变量分配给了什么?是const AWS = require('aws-sdk');吗?并且你是否将该行和你的第一行放在函数本身之外?它不应该是函数的一部分。 - doorstuck
对于那些复制这些属性的人:属性last_name不存在,应该是family_name! - Arman Fatahi
2个回答

5

对于adminCreateUser(基本上需要AWS SDK,配置凭据,实例化客户端并调用特定操作)。

var aws = require('aws-sdk');
aws.config.update({accessKeyId: 'akid', secretAccessKey: 'secret'});

var CognitoIdentityServiceProvider = aws.CognitoIdentityServiceProvider;
var client = new CognitoIdentityServiceProvider({ apiVersion: '2016-04-19 });
//your code goes here

请注意,您可以以不同的方式配置AWS凭据来调用此操作。由于这是一个经过身份验证的操作,因此您确实需要凭据。其他管理员操作类似,您只需在调用中传递适当的JSON参数即可。
根据此内容,包含adminCreateUser操作的AWS JavaScript SDK版本2.7.25应该可用。

http://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html


accessKeyIdsecretAccessKey 在哪里? - Stéphane GRILLON
以下是有关JavaScript处理凭据的文档:https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-credentials.html - Ionut Trestian

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接