[트러블슈팅] AWS Step Function 에러: not authorized to perform: lambda:InvokeFunction

brillog·2023년 9월 6일
0

AWS

목록 보기
6/7

에러 메시지

Step Function 'Start execution' 시 아래와 같은 에러 메시지가 발생하였습니다.

User: arn:aws:sts::<ACCOUNT_ID>:assumed-role/<STEP_FUNCTION_IAM_ROLE_NAME>/<RANDOM_NUM> is not authorized to perform: lambda:InvokeFunction on resource: arn:aws:lambda::<ACCOUNT_ID>:function:<LAMBDA_FUNC_NAME>:$LATEST because no identity-based policy allows the lambda:InvokeFunction action (Service: AWSLambda; Status Code: 403; Error Code: AccessDeniedException; Request ID: 7ffc22e2-0550-406f-81d8-df95dfa60261; Proxy: null)

Step Function 내 Lambda: Invoke 단계에서 발생한 에러입니다.

해결

Step Function의 IAM Role 내 IAM Policy에 아래 한 줄을 추가하였습니다.

"arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:<LAMBDA_NAME>:*"
(Lambda의 ARN 뒤에 :* 추가)

기존의 IAM Policy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "lambda:InvokeFunction",
            "Resource": [
                "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:<LAMBDA_NAME>"
            ]
        },
        {
            ...
        }
    ]
}

변경된 IAM Policy

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "lambda:InvokeFunction",
            "Resource": [
                "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:<LAMBDA_NAME>",
                "arn:aws:lambda:<REGION>:<ACCOUNT_ID>:function:<LAMBDA_NAME>:*"
            ]
        },
        {
            ...
        }
    ]
}

개인적으로 공부하며 작성한 글로, 내용에 오류가 있을 수 있습니다.

profile
Cloud & DevOps ♡

0개의 댓글