AWS re:Post을(를) 사용하면 다음에 동의하게 됩니다. AWS re:Post 이용 약관

교차 계정 Kinesis 스트림을 통해 Lambda 함수를 호출하려면 어떻게 해야 하나요?

2분 분량
0

다른 AWS 계정에 있는 Amazon Kinesis 스트림을 통해 AWS Lambda 함수를 호출하려고 합니다.

해결 방법

Amazon Kinesis Data Streams는 리소스 기반 정책을 지원합니다. 이를 통해 한 계정의 스트림에 수집된 데이터를 다른 계정의 AWS Lambda 함수를 사용하여 처리할 수 있습니다.

다음 단계에 따라 Lambda 함수를 생성한 다음 Kinesis 데이터 스트림에 액세스하도록 구성하세요.

Lambda 실행 역할 생성

  1. IAM 콘솔에 액세스하고 역할 탭을 선택합니다.
  2. 역할 생성을 선택합니다.
  3. AWS 서비스에서 신뢰할 수 있는 엔터티 유형을 선택합니다. 서비스에서 Lambda를 선택합니다.
  4. 권한 정책 테이블에서 관리형 IAM policy AWSLambdaKinesisExecutionRole을 선택합니다.
  5. 역할 이름을 입력하고 역할 생성을 선택합니다.

참고: 관리형 IAM 정책 AWSLambdaKinesisExecutionRole에 필수 Kinesis Data Streams 및 Lambda 호출 권한이 있습니다. 또한 액세스할 수 있는 모든 잠재적 Kinesis Data Streams 리소스에 대한 액세스 권한도 부여합니다.

Lambda 함수 생성

Amazon Kinesis Data Streams의 레코드를 처리할 수 있는 AWS Lambda 함수를 생성합니다.

실행 역할에서 생성한 역할을 선택합니다.

참고: 이 정책에는 필수 Kinesis Data Streams 및 Lambda 호출 권한이 있습니다. 또한 액세스할 수 있는 모든 잠재적 Kinesis Data Streams 리소스에 대한 액세스 권한도 부여합니다.
Kinesis Data Streams 리소스 소유자에게 실행 역할을 추가하여 리소스 정책을 구성합니다.

Kinesis Data Streams 구성

  1. Amazon Kinesis Data Streams 콘솔에 액세스하고 데이터 스트림을 선택합니다.
  2. 데이터 스트림 공유 탭을 선택합니다.
  3. 정책 생성 버튼을 선택하여 시각적 정책 편집기를 시작합니다.
  4. 향상된 팬아웃 탭에서 소비자를 선택하여 데이터 스트림 내에서 등록된 소비자를 공유할 수 있습니다.
  5. 정책 생성을 선택합니다. JSON 정책을 직접 작성할 수도 있습니다.
  6. 주체에 생성한 교차 계정 Lambda 실행 역할을 입력합니다. kinesis:DescribeStream 동작이 포함되었는지 확인하세요.
    Kinesis Data Streams의 예제 리소스 정책에 대한 자세한 내용은 Kinesis Data Streams의 예제 리소스 기반 정책을 참조하세요.
  7. 정책 생성을 선택합니다. 또는 PutResourcePolicy를 사용하여 정책을 리소스에 연결할 수 있습니다.

AWS 관리형 키로 서버 측 암호화를 사용하고 리소스 정책을 통해 액세스를 공유하려는 경우 고객 관리형 키(AWS KMS 키)를 사용해야 합니다. 자세한 내용은 Kinesis Data Streams의 서버 측 암호화란 무엇인가요?를 참조하세요. 또한 공유 주체 엔터티가 KMS 크로스 계정 액세스를 통해 KMS 키에 액세스할 수 있도록 허용해야 합니다. 자세한 내용은 다른 계정의 사용자가 KMS 키를 사용하도록 허용을 참조하세요.

AWS 공식
AWS 공식업데이트됨 9달 전