

# AWS Lambda: Lambda 関数に Amazon DynamoDB テーブルへのアクセスを許可する
<a name="reference_policies_examples_lambda-access-dynamodb"></a>

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

このポリシーを使用するには、Lambda [サービスロール](id_roles_create_for-service.md)にポリシーをアタッチします。サービスロールは、サービスがユーザーに代わってアクションを実行すできるようにするためにアカウントに作成するロールです。このサービスのロールには、信頼ポリシーのプリンシパルとして AWS Lambda を含める必要があります。このポリシーの使用方法の詳細については、AWS セキュリティブログの「[Amazon DynamoDB テーブルへの AWS Lambda のアクセスを許可する AWS IAM ポリシーを作成する方法](https://aws.amazon.com/blogs/security/how-to-create-an-aws-iam-policy-to-grant-aws-lambda-access-to-an-amazon-dynamodb-table/)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "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": "*"
        }
    ]
}
```

------