1

を使用しSwift AWS Mobile Hub Helperて iOS アプリをビルドし、DynamoDBデータベースに接続しています。を使用してログインした後、Facebook SignInProvider接続しようとしているテーブルの承認されたロールの想定ロール arn を取得していることがわかりますが、自分で load メソッドを使用しようとすると、DynamoDBObjectMapper次のようなエラーが表示されます:

リソースに対して dynamodb:GetItem を実行する権限がありません

モバイル ハブ ページから新しいベース アプリをダウンロードしようとしましたが、他の変更を加えずに新しいテーブルを指すようにしましたが、同じエラーが発生しました。私の同僚は、私たちのアプリの Android バージョンを作成しています。彼はデータベースに接続でき、接続方法を変更していないと言っているので、何がエラーの原因なのかわかりません。

編集:表向きは割り当てられているフェデレーション ID プールを調べていて、コードが作成しているデータセットで検索すると、cognito がデバイス (シミュレーター) に割り当てている ID ID がそこに表示されます。

4

1 に答える 1

0

Mobile Hub アプリのテーブルごとに、Hub は IAM ロール ポリシーを作成し、それをユーザーが引き受けるポリシーにアタッチします。アプリの auth/unauth ロールの下を見ると (Mobile Hub プロジェクト名が含まれています)。添付されたポリシーのリストが表示されます。これらのポリシーの 1 つは、Hub で作成したテーブル用です。そのポリシーに拡張機能を持たせたい場合、またはあなたの場合、別のテーブルへのアクセスを許可します。ポリシーを編集するか、新しいポリシーを作成する必要があります。

于 2016-08-31T20:59:38.033 に答える