1

我正在使用Swift AWS Mobile Hub Helper构建我的 iOS 应用程序并连接到我的DynamoDB数据库。我可以看到,在使用 a 登录后,Facebook SignInProvider我得到了一个假定的角色 arn,它是我试图连接的表的授权角色,但是当我尝试在我的上使用 load 方法时,我DynamoDBObjectMapper得到一个这样的错误提示:

无权执行:dynamodb:GetItem on resource

我尝试从移动中心页面下载一个新的基础应用程序,并且没有进行其他更改,而是将其指向新表,但它有同样的错误。我的同事正在构建我们应用程序的 android 版本,他能够连接到数据库,他说他没有更改连接方式,所以我不确定是什么导致了错误。

编辑:我一直在查看表面上分配给我的联合身份池,如果我使用我的代码正在创建的数据集搜索它,那么 cognito 分配给我的设备(模拟器)的身份 ID 就会出现在那里。

4

1 回答 1

0

对于您的 Mobile Hub 应用程序中的每个表,Hub 创建一个 IAM 角色策略,并将其附加到您的用户采用的策略。如果您查看应用程序的 auth/unauth 角色(其中将包含 Mobile Hub 项目名称)。您应该会看到附加策略的列表。其中一项策略将适用于您在 Hub 中创建的表。如果您希望该策略具有扩展功能,或者在您的情况下允许访问不同的表。您将需要编辑策略或创建新策略。

于 2016-08-31T20:59:38.033 回答