Error code 모음/11. Aws errors

[AWS ERROR] AccessDeniedException when calling the PutJobSuccessResult

쟈누이 2024. 2. 7. 17:18
반응형

 

1. 원인


  • lambda 실행시 PutJobSuccessResult 작업을 호출할 수 있는 권한이 없을 경우 발생
  • lambda 에서 PutJobSuccessResult를 호출하지 않았을 경우에도 발생

 

 

2. 해결 방안


  • 우선 IAM 유저를 이용할 경우 Root 유저를 이용해서 IAM 유저에게 PutJobSuccessResult 정책을 사용할 수 있는 권한을 할당할 것
  • 그 다음 IAM 유저로 돌아가서 Lambda 함수에 사용할 Role 에 아래의 정책 필드를 붙여넣기 할 것
{
  "Version": "2012-10-17", 
  "Statement": [
    {
      "Action": [ 
        "logs:*"
      ],
      "Effect": "Allow", 
      "Resource": "arn:aws:logs:*:*:*"
    },
    {
      "Action": [
        "codepipeline:PutJobSuccessResult",
        "codepipeline:PutJobFailureResult"
        ],
        "Effect": "Allow",
        "Resource": "*"
     }
  ]
}

 

 

 

3. 참고 링크


https://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/actions-invoke-lambda-function.html

 

CodePipeline의 파이프라인에서 AWS Lambda 함수 호출 - AWS CodePipeline

Amazon S3가 파이프라인의 소스 공급자인 경우, 소스 파일을 .zip 하나로 압축하고 그 .zip을 소스 버킷에 업로드할 수 있습니다. 압축이 풀린 단일 파일을 업로드할 수도 있지만 .zip 파일을 예상하는

docs.aws.amazon.com

https://stackoverflow.com/questions/43547240/permission-denied-when-calling-aws-lambda-function-from-aws-codepipeline

 

Permission denied when calling AWS Lambda function from AWS CodePipeline

I've set my pipeline to invoke a AWS Lamba function. After a runtime of 10 minutes, this is the error I get: Action execution failed The AWS Lambda function addAMIToAutoScalingLC failed to ret...

stackoverflow.com

 

반응형