gpt4 book ai didi

java - Cognito 通过用户名获取用户

转载 作者:行者123 更新时间:2023-12-04 02:02:29 26 4
gpt4 key购买 nike

我有一个 Web 角度前端,一个由 Cognito 和 Lambda 保护的 API 网关用于其他业务用例。登录和授权工作正常。我正在使用 AWS Javascript SDK 进行授权。类似于 https://s3.amazonaws.com/solutions-reference/mobile-backend/latest/mobile-app-backend.pdf

在我的 lambda 中,我需要通过传递我在 Lambda 中拥有的电子邮件 ID 来获取其他用户信息,例如名字、名字、DOB 等。(电子邮件 ID 是 Cognito 中的必填字段)。这个 lambda 是从前端 Action 中启动的。想象一下查看其他用户个人资料的场景。

我相信这是 API http://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminGetUser.html但我找不到用 Java 代码做的方法。

最佳答案

使用AWSCognitoIdentityProvider

AWSCognitoIdentityProvider client = AWSCognitoIdentityProviderClientBuilder.standard()
.withCredentials(awsCredentialsProvider).build();

AdminGetUserRequest adminGetUserRequest = new AdminGetUserRequest()
.withUserPoolId("XXXXXXXXXXX")
.withUsername("userName");
AdminGetUserResult adminGetUserResult = client.adminGetUser(adminGetUserRequest);

还有很多其他功能,比如列出所有 Cognito 用户,这些都可以做到:

ListUsersRequest listUserRequest = new 
ListUsersRequest().withUserPoolId("XXXXXXXXX");
ListUsersResult listUsersResult = client.listUsers(listUserRequest);

Maven 是:

    <dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-cognitoidp</artifactId>
<version>${aws-cloud-version}</version>
</dependency>

请确保您的 lambda 角色有权使用 Cognito,例如 cognito-idp:AdminGetUser

关于java - Cognito 通过用户名获取用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46189325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com