原因はDynamoDBを操作する権限がないことです。
対応方法
ロールにDynamoDBを操作するポリシーをアタッチします。
横文字ばかりで「日本語でおk」状態ですのでポリシーをアタッチするまでの画面遷移を載せます。
僕の場合はLambda関数の実行時に出たので、Lambda関数にDynamoDBのポリシーをアタッチする操作での説明となります。
ロール画面に遷移
Lamdba>関数>該当の関数をクリックし、開いた画面で設定タブをクリックしてください。
その後、ロール名に表示されているリンクをクリックします。
※ receiving_ordersというのは僕が作っていた関数名なので適宜読み替えてください。
ポリシーアタッチ画面に遷移
「ポリシーをアタッチします」ボタンをクリックします。
DynamoDBのポリシーをアタッチ
ポリシーのフィルタでDynamoDB関連のもので絞り込んで「AmazonDynamoDBFullAccess」をアタッチします。
注意点
説明のためにフルアクセスのポリシーにしていますが、フルアクセスは強い権限であり、ちゃんと理解していないと意図していないことまで実行できるようになってしまいます。
ちゃんと運用しようとするなら「ポリシーの作成」からできることを絞ったポリシーを作成してアタッチしてください。
アタッチ後
アタッチされていることが確認できます。
ここまででエラーが解消されると思いますので再度実行してみてください。
コメント