登录的Cognito用户不会出现在身份池中

时间:2017-05-19 21:39:41

标签: amazon-web-services amazon-cognito

用户注册并验证其帐户。然后用户登录:

// in real life, these fields are replaced with my values
var cognitoUser = userPool.getCurrentUser();

if (cognitoUser != null) {
    cognitoUser.getSession(function(err, result) {
        if (result) {
            console.log('You are now logged in.');

            // Add the User's Id Token to the Cognito credentials login map.
            AWS.config.credentials = new AWS.CognitoIdentityCredentials({
                IdentityPoolId: 'YOUR_IDENTITY_POOL_ID',
                Logins: {
                    'cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>': result.getIdToken().getJwtToken()
                }
            });
        }
    });
}

http://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-integrating-user-pools-with-identity-pools.html

因此,登录用户因此被认证并允许使用Web应用程序中的各种页面。

然而,在此期间,零用户显示在身份池中 enter image description here

这些注册/登录的用户是否应该出现在这里?或者,我是否误解了身份库的重点?

1 个答案:

答案 0 :(得分:1)

你的直觉是正确的,我只是认为你的身份池的调用没有被发现。我的猜测是你正在创建这些凭据,但实际上并没有填充它们。您可以尝试在该对象上调用get或refresh,然后再次检查吗?