AWS Lambda: Lambda 関数に Amazon DynamoDB テーブルへのアクセスを許可する - AWS Identity and Access Management

AWS Lambda: Lambda 関数に Amazon DynamoDB テーブルへのアクセスを許可する

この例では、特定の Amazon DynamoDB テーブルへの読み取りおよび書き込みアクセスを許可する IAM ポリシーを作成する方法を示します。このポリシーでは、CloudWatch Logs をログファイル に書き込むこともできます。このポリシーを使用するには、サンプルポリシーのイタリック体のプレースホルダーテキストを独自の情報に置き換えます。次に、ポリシーの作成またはポリシーの編集の手順に従います。

このポリシーを使用するには、Lambda サービスロールにポリシーをアタッチします。サービスロールは、サービスがユーザーに代わってアクションを実行すできるようにするためにアカウントに作成するロールです。このサービスのロールには、信頼ポリシーのプリンシパルとして AWS Lambda を含める必要があります。このポリシーの使用方法の詳細については、AWS セキュリティブログの「Amazon DynamoDB テーブルへの AWS Lambda のアクセスを許可する AWS IAM ポリシーを作成する方法」を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadWriteTable", "Effect": "Allow", "Action": [ "dynamodb:BatchGetItem", "dynamodb:GetItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchWriteItem", "dynamodb:PutItem", "dynamodb:UpdateItem" ], "Resource": "arn:aws:dynamodb:*:*:table/SampleTable" }, { "Sid": "GetStreamRecords", "Effect": "Allow", "Action": "dynamodb:GetRecords", "Resource": "arn:aws:dynamodb:*:*:table/SampleTable/stream/* " }, { "Sid": "WriteLogStreamsAndGroups", "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*" }, { "Sid": "CreateLogGroup", "Effect": "Allow", "Action": "logs:CreateLogGroup", "Resource": "*" } ] }