AWS Cognito查找CognitoSyncDemo的正确参数

时间:2015-02-28 16:22:15

标签: authentication amazon-iam amazon-cognito

我将使用Eclipse + ADK + AWS libs V2.9为Amazon Cognito Sync演示设置this Example

  1. 我在Cognito Console中创建了一个标识池,因此我获得了CognitoSyncClientManager.java中使用的标识池ID:

    private static final String IDENTITY_POOL_ID = "us-east-1:1a23b013-1abc-123-b123-123abc1fe5";
    private static final Regions REGION = Regions.US_EAST_1;**
    
  2. (可能并非所有地区似乎都在测试模式下运行)

    1. 我在卖家中心使用Eclipse帮助> Android> Bild> MD5指纹和AndroidManifest.xml中的包名注册了我的(开发 - )应用,因此得到了我的api_key.txt值。

    2. AWS doku我获得了我的提供者URL(代码作为样本),它在DeveloperAuthenticationProvider.java中使用:

      private static final String developerProvider = "cognito-sync.us-east-1.amazonaws.com";
      private static final String cognitoSampleDeveloperAuthenticationAppEndpoint = "arn:aws:iam::123456789123:role/Cognito_TestMyAppAuth_DefaultRole"
      private static final String cognitoSampleDeveloperAuthenticationAppName = "Cognito sync demo";
      
    3. 创建一些附加到具有IAM完全访问权限的组的用户以及(自动)生成的未经验证和已自动化角色的角色后,我的应用程序以这种方式运行:

      • 使用亚马逊登录 - 正在运行,但是他们的数据集将在何处创建,我是否可以在AWS控制台中看到它们?

      • 简单浏览您的数据(无需登录) - 正在运行,未经身份验证的用户及其数据集在身份控制台中显示/计算

      • 开发人员身份验证失败,用户名或密码不匹配 - 与"无法访问资源..."在LogCat中。

      现在我想,这个游戏中最后一个缺失的东西是参数cognitoSampleDeveloperAuthenticationAppEndpoint = ... 我在哪里可以找到它,还有什么我可以错过设置完整运行的示例?

1 个答案:

答案 0 :(得分:1)

感谢您使用Cognito演示。您的问题的答案

  1. 是的,您可以在AWS控制台中查看数据集。导航到AWS控制台内的Cognito,然后转到您的标识池。在左侧菜单中转到身份浏览器,您将看到身份列表,或者您可以搜索身份。单击标识,您可以看到该标识所拥有的数据集。
  2. 开发人员身份验证是一项有助于将身份验证系统与Cognito集成的功能。为此,您应该有一个后端服务器来提供用户的身份验证请求,一旦您对用户进行身份验证,您就可以使用GetOpenIdTokenForDeveloperIdentity API调用从Cognito为他们请求OpenId Connect令牌。开发人员提供程序名称是您在AWS Cognito控制台中为标识池设置的名称。要使用该示例,您可以按照此blog和服务器端应用程序的readme文件设置示例服务器应用程序。
  3. P.S。:请避免共享您的身份池ID。

    谢谢, Rachit