특정 S3 버킷에서 객체가 생성되거나 업데이트될 때 AWS Lambda 함수를 트리거하도록 Amazon S3 이벤트 소스를 구성했습니다. Lambda는 이벤트에서 버킷 이름과 객체 키를 사용하여 객체를 읽고 내용을 구문 분석한 다음, 구문 분석된 데이터를 DynamoDB 테이블에 씁니다. Lambda의 실행 역할에는 S3 버킷을 읽고 DynamoDB에 쓸 수 있는 권한이 있지만, 객체가 추가되거나 수정될 때 함수가 호출되지 않습니다. 이 문제를 해결하는 방법은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 해당 버킷에 대해 Amazon S3가 함수를 호출할 수 있는 권한을 부여하는 리소스 기반 정책을 Lambda 함수에 추가합니다..
이것이 정답인 이유
S3 버킷이 Lambda 함수를 호출하려면 Lambda 함수에 S3가 해당 함수를 호출할 수 있도록 허용하는 리소스 기반 정책(권한 정책)이 필요합니다. 이 정책은 S3 버킷이 Lambda 함수를 트리거할 수 있는 권한을 명시적으로 부여합니다. 다른 옵션들은 이 문제를 해결하지 못합니다. S3 버킷 정책은 S3 버킷 자체에 대한 접근 권한을 제어하지만, S3가 Lambda를 호출할 수 있는 권한을 부여하지는 않습니다. SQS 큐를 사용하는 방법은 S3 이벤트 알림을 처리하는 다른 패턴이지만, 현재 문제의 근본 원인인 S3가 Lambda를 호출할 권한이 없다는 문제를 해결하지 못합니다.
끝없는 정답 찾기 없이 시험 합격
이 시험에 대한 모든 검증된 문제와 설명을 한곳에서 얻고, 준비 시간을 몇 시간 절약하세요. 1,000개 이상의 자격증 · 20개 이상의 언어 · 무료로 시작.
더 빠르게 시험 합격 → 카드 필요 없음