한 AWS 계정에서 생성한 Lambda 함수를 다른 AWS 계정의 AWS CloudFormation 사용자 지정 리소스와 함께 사용하려면 어떻게 해야 합니까?

2분 분량
0

한 계정에서 AWS Lambda 함수를 생성한 다음 다른 계정의 AWS CloudFormation 사용자 지정 리소스에서 해당 함수를 호출하려고 합니다.

간략한 설명

함수와 리소스가 동일한 AWS 리전에 있는 경우에만 다른 계정의 사용자 지정 리소스에서 Lambda 함수를 호출할 수 있습니다. AWS::CloudFormation::CustomResourceServiceToken 속성은 AWS CloudFormation 스택을 생성한 리전과 동일한 리전에 있어야 합니다. 리소스 기반 정책을 사용하여 사용자 지정 리소스가 있는 계정에 Lambda 함수를 호출할 수 있는 권한을 부여해야 합니다.

참고: Lambda 함수를 사용자 지정 리소스와 연결하면 사용자 지정 리소스가 생성, 업데이트 또는 삭제될 때마다 해당 함수가 호출됩니다. CloudFormation은 Lambda API를 호출하여 요청 유형 및 리소스 속성 등의 모든 요청 데이터를 함수에 전달합니다.

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

기본 계정(Account A)에서 AWS CLI add-permission 명령을 실행합니다. 이 명령은 Lambda 함수가 다른 계정(Account B)의 사용자 정의 리소스에 대한 액세스 권한을 부여합니다.

-또는-

AWS::Lambda::Permission 리소스를 사용하여 Account BAccount A에서 Lambda 함수를 호출할 수 있는 권한을 부여합니다.

  1. Account A에서 스택을 통해 Lambda 함수가 생성된 경우 AWS::Lambda::Permission 리소스를 사용하여 Account B에 권한을 부여합니다.
  2. Account B에서 사용자 지정 리소스가 포함된 AWS CloudFormation 스택을 시작합니다.
    참고: 서비스 토큰계정 A의 Lambda 함수의 Amazon 리소스 이름(ARN)을 참조하는지 확인합니다. 사용자 지정 리소스에 입력으로 보낼 추가 속성을 포함하세요.
  3. Amazon CloudWatch Logs를 사용하여 계정 B의 사용자 지정 리소스가 계정 A에서 Lambda 함수를 호출했는지 확인합니다.

관련 정보

다른 계정에 함수 액세스 권한 부여

AWS 공식
AWS 공식업데이트됨 4년 전
댓글 없음