Lambda in VPC から VPC エンドポイント経由で、STS にアクセスする際のVPCエンドポイントポリシーの例。AWSアカウントID: 123456789012 の Role id: A*******************O からの sts:AssumeRole のみを許可している。
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Resource": "*", "Condition": { "StringLike": { "aws:userid": "A*******************O:*" } }, "Principal": { "AWS": "123456789012" } } ] }
$ aws iam get-role --role-name LambdaRole { "Role": { "Description": "Allows Lambda functions to call AWS services on your behalf.", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" } } ] }, "MaxSessionDuration": 3600, "RoleId": "A*******************O", ★ これを aws:userid に指定する "CreateDate": "2020-02-01T06:35:46Z", "RoleName": "LambdaRole", "Path": "/", "Arn": "arn:aws:iam::123456789012:role/LambdaRole" } }