如何在nodejs

时间:2016-09-14 18:27:15

标签: node.js amazon-web-services amazon-dynamodb amazon-cognito

我正在尝试获取cognito中用户的身份池ID。

我拥有所需的所有凭据,(用户名,密码)以及我的客户端ID,池ID和身份池ID。

我可以使用以下代码使用浏览器执行此操作:

AWS.config.credentials.get(function(err, resp) {
                    if (err) {
                        console.log('get creds error', err);
                        alert('get creds error' + err);
                    } else {
                        console.log('get creds success', AWS.config.credentials);

                        // Credentials will be available when this function is called.
                        accessKeyId = AWS.config.credentials.accessKeyId;
                        secretAccessKey = AWS.config.credentials.secretAccessKey;
                        sessionToken = AWS.config.credentials.sessionToken;

                        console.log("in creds.get - accessKeyId: " + accessKeyId);
                        console.log("in creds.get - secretyKey: " + secretAccessKey);
                        console.log("in creds.get - sessionToken: " + sessionToken);
                        // get this Id and push to array
                        console.log('UserID: ', AWS.config.credentials.params.IdentityId);
                        users_identity[username] = AWS.config.credentials.params.IdentityId;
                        cognitoUser.signOut();
                    }
                });

,但是当我尝试为多个用户获取它时,我只能获得一个用户。当我打电话

时,其他人的身份池ID不正确
  console.log('UserID: ', AWS.config.credentials.params.IdentityId);

是否可以在nodejs中执行此操作?

1 个答案:

答案 0 :(得分:1)

您要打印的是身份ID ,而不是身份池ID。身份标识是Cognito给出的每个用户的唯一标识符。我不知道javascript SDK中的标识池ID的任何getter,但是这是您在凭据初始化中配置输入的值。您应该可以保持该值可访问并在需要时使用它。

相关问题