あなたは知っていますが、私はCOgnitoを使用しましたが、サブ(またはユーザ名以外の他のパラメータ)で検索する必要はありませんでした。確かにできるので、私はそれを調べましたが、それは非常に明確ではありません(多くの文書のように)。ここで私はあなたが試みることができることを見ました...それが人を助けることを願っています。
// the imported ListUsersResult is...
import com.amazonaws.services.cognitoidp.model.ListUsersRequest;
import com.amazonaws.services.cognitoidp.model.ListUsersResult;
// class var
protected final AWSCognitoIdentityProviderClient identityUserPoolProviderClient;
// omitted stuff...
// initialize the Cognito Provider client. This is used to talk to the user pool
identityUserPoolProviderClient = new AWSCognitoIdentityProviderClient(new BasicAWSCredentials(AWS_ACCESS_KEY, AWS_SECRET_KEY)); // creds are loaded via variables that are supplied to my program dynamically
identityUserPoolProviderClient.setRegion(RegionUtils.getRegion(USER_POOL_REGION)); // var loaded
// ...some code omitted
ListUsersRequest listUsersRequest = new ListUsersRequest();
listUsersRequest.withUserPoolId(USER_POOL_ID); // id of the userpool, look this up in Cognito console
listUsersRequest.withFilter("sub=xyz"); // i THINK this is how the Filter works... the documentation is terribad
// get the results
ListUsersResult result = identityUserPoolProviderClient.listUsers(listUsersRequest);
List<UserType> userTypeList = result.getUsers();
// loop through them
for (UserType userType : userTypeList) {
List<AttributeType> attributeList = userType.getAttributes();
for (AttributeType attribute : attributeList) {
String attName = attribute.getName();
String attValue = attribute.getValue();
System.out.println(attName + ": " + attValue);
}
}
は、ユーザー名を持っている場合は、この
// build the request
AdminGetUserRequest idRequest = new AdminGetUserRequest();
idRequest.withUserPoolId(USER_POOL_ID);
idRequest.withUsername(username);
// call cognito for the result
AdminGetUserResult result = identityUserPoolProviderClient.adminGetUser(idRequest);
// loop through results
のようなユーザーは、この答えをどうもありがとうございます得ることができる、それは非常に有用とそのドキュメントに沿っているようです。不思議なことに、私はListUsersRequestライブラリを正常にインポートしていますが、私のEclipseは.withFilterはListUsersRequestクラスのメソッドではないと言っています。私は正しいListUsersRequestクラスを使用して正しい場所からインポートしていると確信しています。それがうまくいかない理由は何ですか? – HelloCoding
また、私はどのようなクラスidentityUserPoolProviderClientがこのコードにあるのだろうか?私はAmazonCognitoIdentityClientクラスのドキュメントをチェックしましたが、メソッドlistUsersはありませんでしたので、それはそれだとは思いません。 – HelloCoding
こんにちは、うれしかったです。ここに答えに追加されたいくつかの情報があります... – Matt