parametreleri kaldırmaya çalışırken lambda hatası
Bu makaleyi yığımı oluşturmak için kullandım.
https://aws.amazon.com/blogs/infrastructure-and-automation/scheduling-automatic-deletion-of-aws-cloudformation-stacks/
Ama bir hata alıyorum:
Kullanıcı: arn: aws: sts :: xxx: varsayılan-rol / deleteCurrent-DeleteAfter-DeleteCFNLambdaExecution-T1WHQG2UTLWM / DeleteCFNLambda-deleteCurrent gerçekleştirme yetkisine sahip değil: ssm: Kaynakta DeleteParameter: arn: aws: ssm: us-east-1: xxx: parametre / CFN-DemoParameter-plOl5Hg4QuI5 (Hizmet: AmazonSSM; Durum Kodu: 400; Hata Kodu: AccessDeniedException;
Şablon buradan görüntülenebilir ...
https://datameetgeobk.s3.amazonaws.com/cftemplates/delete_after_5m.template
Hatayı düzeltmek için herhangi bir öneri takdir edilecektir.
Yanıtlar
Hata, lambda yürütme rolünüzün rolü yürütme iznine sahip olmadığını söylüyor ssm:DeleteParameter. Böylece, eksik izni lambda rolüne ekleyebilirsiniz:
Resources:
DeleteCFNLambdaExecutionRole:
Type: "AWS::IAM::Role"
Properties:
AssumeRolePolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: "Allow"
Principal:
Service: ["lambda.amazonaws.com"]
Action: "sts:AssumeRole"
Path: "/"
Policies:
- PolicyName: "lambda_policy"
PolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: "Allow"
Action:
- "logs:CreateLogGroup"
- "logs:CreateLogStream"
- "logs:PutLogEvents"
Resource: "arn:aws:logs:*:*:*"
- Effect: "Allow"
Action:
- "cloudformation:DeleteStack"
Resource: !Sub "arn:aws:cloudformation:${AWS::Region}:${AWS::AccountId}:stack/${StackName}/*"
- Effect: "Allow"
Action:
- "ssm:DeleteParameter"
Resource: "*"