テスト外でリクエストが発生したときにログを取得して何かを印刷するのが難しい。テストは正しくログされますが、実際のリクエストは記録されません。AWS - Lambda Cloudfrontログ
IAMプロファイルに正しいアクセス許可を追加する必要があることを読んだことがあります。これは私のプロフィールが今見える方法です。
ポリシー:
AWSLambdaFullAccess
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudwatch:*",
"cognito-identity:ListIdentityPools",
"cognito-sync:GetCognitoEvents",
"cognito-sync:SetCognitoEvents",
"dynamodb:*",
"events:*",
"iam:ListAttachedRolePolicies",
"iam:ListRolePolicies",
"iam:ListRoles",
"iam:PassRole",
"kinesis:DescribeStream",
"kinesis:ListStreams",
"kinesis:PutRecord",
"lambda:*",
"logs:*",
"s3:*",
"sns:ListSubscriptions",
"sns:ListSubscriptionsByTopic",
"sns:ListTopics",
"sns:Subscribe",
"sns:Unsubscribe",
"sns:Publish",
"sqs:ListQueues",
"sqs:SendMessage",
"tag:GetResources",
"kms:ListAliases",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"iot:GetTopicRule",
"iot:ListTopicRules",
"iot:CreateTopicRule",
"iot:ReplaceTopicRule",
"iot:AttachPrincipalPolicy",
"iot:AttachThingPrincipal",
"iot:CreateKeysAndCertificate",
"iot:CreatePolicy",
"iot:CreateThing",
"iot:ListPolicies",
"iot:ListThings",
"iot:DescribeEndpoint",
"xray:PutTraceSegments",
"xray:PutTelemetryRecords"
],
"Resource": "*"
}
]
}
AWSLambdaVPCAccessExecutionRole
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents",
"ec2:CreateNetworkInterface",
"ec2:DescribeNetworkInterfaces",
"ec2:DeleteNetworkInterface"
],
"Resource": "*"
}
]
}
信頼関係:
アイデンティティプロバイダ(複数可)edgelambda.amazonaws.com
アイデンティティプロバイダ(複数可)lambda.amazonaws.com
は、私が何をしないのですか?なぜクラウドフロントのログへの実際のリクエストがないのですか?クラウドフロントからコンテンツを取得しようとすると、ラムダ関数が動作していることがわかります。
上で簡単に見て持っている価値があるだろう。 – Philip
あなたは私をplicy jsonと共有できますか? –
@ VijayanathViswanathanここには2つの問題があります。 1つ目は、CloudFront権限がない可能性が高いことです。第二の、そしておそらくより重要なことは、ワイルドカード特権を必要としない場所に付与することによって、これが「最小特権」原則に違反するということです。 –