メニュー
AWS Lambda
開発者ガイド

ポリシーテンプレート

設計図を使用してコンソールで AWS Lambda 関数を作成する場合、Lambda ポリシーテンプレートのリストから関数用のロールを作成できます。

これらのテンプレートの 1 つを選択することで、Lambda 関数によってそのポリシーに添付する必要があるアクセス権限をもったロールが自動的に作成されます。

以下は、[ポリシーテンプレート] のリストの各ポリシーテンプレートに適用されたアクセス権限をまとめたものです。ポリシーテンプレートは、対応する設計図にちなんで名付けられています。Lambda は自動的にプレースホルダー項目 (リージョンアカウント ID など) に適切な情報を入力します。ポリシーテンプレートを使用した Lambda 関数の作成の詳細については、「ステップ 2.1: Hello World Lambda 関数を作成する」を参照してください。

以下のテンプレートが、作成する Lambda 関数のタイプによって自動的に適用されます。

基本: 「基本的な Lambda のアクセス権限」

Copy
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"logs:CreateLogGroup", "Resource":"arn:aws:logs:region:accountId:*" }, { "Effect":"Allow", "Action":[ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource":[ "arn:aws:logs:region:accountId:log-group:[[logGroups]]:*" ] } ] }

VPCAccess: 「Lambda の VPC アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:DescribeNetworkInterfaces" ], "Resource": "*" } ] }

Kinesis: 「Lambda の Kinesis ストリームポーリングアクセス権限」

Copy
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"lambda:InvokeFunction", "Resource":"arn:aws:lambda:region:accountId:function:functionName*" }, { "Effect":"Allow", "Action":"kinesis:ListStreams", "Resource":"arn:aws:kinesis:region:accountId:stream/*" }, { "Effect":"Allow", "Action":[ "kinesis:DescribeStream", "kinesis:GetRecords", "kinesis:GetShardIterator" ], "Resource":"arn:aws:kinesis:region:accountId: stream/streamName" } ] }

DynamoDB: 「Lambda の DynamoDB Stream ポーリングアクセス権限」

Copy
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"lambda:InvokeFunction", "Resource":"arn:aws:lambda:region:accountId:function:functionName*" }, { "Effect":"Allow", "Action":[ "dynamodb:DescribeStream", "dynamodb:GetRecords", "dynamodb:GetShardIterator", "dynamodb:ListStreams" ], "Resource":"arn:aws:dynamodb:region:accountId:table/tableName/stream/*" } ] }

Edge: 「基本的なエッジ Lambda のアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }

RedrivePolicySNS: 「デッドレターキュー SNS アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "arn:aws:sns:region:accountId:topicName" } ] }

RedrivePolicySQS: 「デッドレターキュー SQS アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:SendMessage" ], "Resource": "arn:aws:sqs:region:accountId:queueName" } ] }

以下のテンプレートが、選択した設計図によって選ばれます。権限を追加するため、ドロップダウンから選択することもできます。

CloudFormation: 「CloudFormation のスタック読み取り専用アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:DescribeStacks" ], "Resource": "*" } ] }

AMI: 「AMI の読み取り専用アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeImages" ], "Resource": "*" } ] }

KMS: 「KMS の復号化アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "*" } ] }

S3: 「S3 オブジェクトの読み取り専用アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::*" } ] }

Elasticsearch: 「Elasticsearch のアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "es:ESHttpPost" ], "Resource": "*" } ] }

SES: 「SES バウンスのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ses:SendBounce" ], "Resource": "*" } ] }

TestHarness: 「テストハーネスのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:PutItem" ], "Resource": "arn:aws:dynamodb:region:accountId:table/*" }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": "arn:aws:lambda:region:accountId:function:*" } ] }

マイクロサービス: 「シンプルなマイクロハーネスのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:Scan", "dynamodb:UpdateItem" ], "Resource": "arn:aws:dynamodb:region:accountId:table/*" } ] }

VPN: 「VPN 接続のモニタリングのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:DescribeRegions", "ec2:DescribeVpnConnections" ], "Resource": "*" } ] }

SQS: 「SQS ポーリングのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:DeleteMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:*" }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": "arn:aws:lambda:region:accountId:function:functionName*" } ] }

IoTButton: 「AWS IoT ボタンのアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:ListSubscriptionsByTopic", "sns:CreateTopic", "sns:SetTopicAttributes", "sns:Subscribe", "sns:Publish" ], "Resource": "*" } ] }

RekognitionNoDataAccess: 「Amazon Rekognition データなしアクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rekognition:CompareFaces", "rekognition:DetectFaces", "rekognition:DetectLabels" ], "Resource": "*" } ] }

RekognitionReadOnlyAccess: 「Amazon Rekognition 読み取り専用アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rekognition:ListCollections", "rekognition:ListFaces", "rekognition:SearchFaces", "rekognition:SearchFacesByImage" ], "Resource": "*" } ] }

RekognitionWriteOnlyAccess: 「Amazon Rekognition 書き込み専用アクセス権限」

Copy
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rekognition:CreateCollection", "rekognition:IndexFaces" ], "Resource": "*" } ] }