【问题标题】:Aws cognito create user by admin nodejsAws cognito 通过管理员 nodejs 创建用户
【发布时间】:2020-03-06 05:22:17
【问题描述】:

我正在使用 javascript sdk amazon-cognito-identity-js,我正在尝试在 nodejs 中的 cognito 中创建一个用户,但错误即将到来 以下是我的代码:-

var AWS = require("aws-sdk")
var params = {
    UserPoolId: "id",
    Username: req.body.username,
    DesiredDeliveryMediums: ["EMAIL"],
    ForceAliasCreation: false,
    TemporaryPassword: req.body.password,
    UserAttributes: [
      { Name: "name", Value: req.body.name },
      { Name: "email", Value: req.body.user_email}
    ],
 };
let client = new AWS.CognitoIdentityServiceProvider();
client.adminCreateUser(params, function(err, data) {
    if (err) {
        console.log("EE",err);
      //  reject(err);
    } else {
        console.log("DDD",data);
        //resolve(data);
    }
})

但是我使用代码得到了这个错误:-

EE { UnknownError:在 Request.extractError 处未找到 (/var/task/node_modules/aws-sdk/lib/protocol/json.js:48:27) }

请帮我解决这个问题。

【问题讨论】:

标签: node.js amazon-cognito


【解决方案1】:

这是解决方案。

前置要求 如果您想在 aws-sdk 中使用凭证(手动流程) 1. 创建 IAM 用户并将 Cognito 角色分配给您的用户。 2. 为该用户生成访问密钥和秘密密钥。 3. 在 aws-sdk 中使用该 Access Key 和 Secret Key。

像这样,

let AWS = require("aws-sdk");
AWS.config.update({
    accessKeyId: "YOURKEY",
    secretAccessKey: "YOURSECRET",
    region: "YOURREGION"
});

创建CognitoIdentityServiceProvider类的对象

const COGNITO_CLIENT = new AWS.CognitoIdentityServiceProvider({
  apiVersion: "2016-04-19",
  region: "us-east-1"
});


var poolData = {
    UserPoolId: "XXXXXXXXX",
    Username: "kurulezomi@themailpro.net",
    DesiredDeliveryMediums: ["EMAIL"],
    TemporaryPassword: "Abc@321",
    UserAttributes: [
      {
        Name: "email",
        Value: "kuri@themailpro.net"
      },
      {
        Name: "email_verified",
        Value: "true"
      }
    ]
  };
  COGNITO_CLIENT.adminCreateUser(poolData, (error, data) => {
    console.log(error);
    console.log(data);
    callback(null, {
      statusCode: 200,
      body: JSON.stringify(data)
    });
  });

或者,您可以直接将 IAM 角色分配给您的 EC2 实例,在这种情况下,您无需在 AWS.config 部分设置凭证。

猜你喜欢
  • 2019-04-19
  • 2021-08-06
  • 2020-02-06
  • 1970-01-01
  • 2018-08-23
  • 2018-12-22
  • 1970-01-01
  • 1970-01-01
  • 2019-05-17
相关资源
最近更新 更多