Amazon Cognito连接找不到IdentityPool

cbn*_*cbn 5 java token amazon-web-services amazon-cognito

我花了一天时间试图让Cognito在我的服务器上工作.我找不到任何有用的文档,因为没有明确的例子来设置它.

我的服务器上有以下代码:

BasicAWSCredentials credentials = new BasicAWSCredentials(
        "A**************",
        "+y*****************************");

AmazonCognitoIdentityClient client =
        new AmazonCognitoIdentityClient(credentials);
GetOpenIdTokenForDeveloperIdentityRequest tokenRequest =
        new GetOpenIdTokenForDeveloperIdentityRequest();
tokenRequest.setIdentityPoolId("eu-west-1:be9d19a5-*******************");
HashMap<String, String> map = new HashMap<String, String>();

//Key -> Developer Provider Name used when creating the identity pool
//Value -> Unique identifier of the user in your <u>backend</u>
map.put("access.com.cbn.postref", "fred");

//Duration of the generated OpenID Connect Token
tokenRequest.setLogins(map);
tokenRequest.setTokenDuration(1000l);

GetOpenIdTokenForDeveloperIdentityResult result = client
        .getOpenIdTokenForDeveloperIdentity(tokenRequest);
String identityId = result.getIdentityId();
String token = result.getToken();

System.out.println("id = " + identityId + "  token = " + token);
Run Code Online (Sandbox Code Playgroud)

我创建了一个IAM用户,并在上面的代码中使用了公钥和私钥.我用Dev在Cognito上创建了一个IndentityPool.验证.代码中给出的ID:access.com.cbn.postref.

当我运行此代码时,我得到一个例外:

com.amazonaws.services.cognitoidentity.model.ResourceNotFoundException:IdentityPool'eu-west-1:be9d19a5 - ***********************'找不到.(服务:AmazonCognitoIdentity;状态代码:400

生成于

GetOpenIdTokenForDeveloperIdentityResult result = client
                .getOpenIdTokenForDeveloperIdentity(tokenRequest);
Run Code Online (Sandbox Code Playgroud)

我完全失去知道如何继续,因为我看不出我做错了什么.我确实尝试获取IdentityPools列表但返回0大小的列表.

Bob*_*ney 8

访问eu-west-1区域中的标识池时,必须明确设置客户端的区域以使用该区域:

client.setRegion(Region.getRegion(Regions.EU_WEST_1)); 
Run Code Online (Sandbox Code Playgroud)

我们目前正在开发一个示例开发人员身份验证身份后端以及iOS/Android应用程序,我们希望尽快发布.