我正在尝试从以下git repo运行AWS android示例: https://github.com/awslabs/aws-sdk-android-samples
我收到以下错误消息:
不支持未经身份验证的访问。 (服务: AmazonCognitoIdentityService;状态代码:400;错误代码: NotAuthorizedException;请求ID: 75be66eb-11b6-11e4-85d9-9933082e5eb2)
我已按照git repo中提到的步骤配置了AWS服务 网址:https://github.com/awslabs/aws-sdk-android-samples/blob/master/S3_TransferManager/README.md
我在libs中包含了以下jar:
此外,我添加了AWS_ACCOUNT_ID
,COGNITO_POOL_ID
和BUCKET_NAME
。我曾是
不确定在哪里找到COGNITO_ROLE_UNAUTH
所以我把它留在了
YOUR_COGNITO_UNAUTH_ROLE
。
有谁能告诉我这里做错了什么?
答案 0 :(得分:15)
很抱歉,您在使用该示例时遇到了问题。我认为有两件事可以解决你的问题。
首先,您是否在Congito身份池中启用了未经身份验证的访问?您可以转到Cognito控制台,转到Edit Identity Pool
,然后查看是否已选中Enable access to Unauthenticated Identities
。
其次,您需要设置COGNITO_ROLE_UNAUTH
。为此,您首先需要转到IAM控制台并创建一个角色(如果您还没有)。然后,单击IAM控制台中的角色并单击Summary
。 Summary
标签下的第一件事应该是Role ARN
。将YOUR_COGNITO_UNAUTH_ROLE
替换为此处找到的值。
希望有帮助,我会看看我们是否可以让文档更清晰。对不起再次抱歉!