有没有办法获得的用户的详细信息(profile属性等)如果我有IdentityPool或UserPool ID(子)用户传输?
使用的情况是,我是节省一些提交信息的用户数据库与的一个关键平等的用户标识(子). 所以,当我读它从数据库中,我想要恢复一些用户信息从我的泳池我的应用程序的用户界面。
我发现了一个类似的问题(得到cognito用户池用户名从cognito身份池identityId),但它看来,给出的答案是围绕着无服务器的部署,仍有一些差距。
在此先感谢
有没有办法获得的用户的详细信息(profile属性等)如果我有IdentityPool或UserPool ID(子)用户传输?
使用的情况是,我是节省一些提交信息的用户数据库与的一个关键平等的用户标识(子). 所以,当我读它从数据库中,我想要恢复一些用户信息从我的泳池我的应用程序的用户界面。
我发现了一个类似的问题(得到cognito用户池用户名从cognito身份池identityId),但它看来,给出的答案是围绕着无服务器的部署,仍有一些差距。
在此先感谢
因为你有用户的 sub
你可以使用 AdminGetUser. 它返回 UserAttributes
在游泳池。
我想我找到一个解决方案,它是在表面上实际。
具有用户池id一个可以使用 ListUsers
呼叫滤 sub = \"${userId}\"
. 客户使用 CognitoIdentityProviderClient
如果JS是使用。
const client = new CognitoIdentityProviderClient({
region: REGION,
credentials: fromCognitoIdentityPool({
client: new CognitoIdentityClient({ region: REGION }),
logins: {
[PROVIDER_ID]: token
},
identityPoolId: ID_POOL_ID
})
});
const filter = `sub = \"${userPoolId}\"`;
const resp = await client.send(new ListUsersCommand({
UserPoolId: USER_POOL_ID,
Filter: filter,
Limit: 1
}));
当然AdminGetUser可以使用,作为乌拉长沙雷凯莱斯上所述,如果它是适用