한 소매 회사는 AWS Organizations에서 각자의 AWS 계정을 관리하는 여러 비즈니스 팀을 보유하고 있습니다. 각 팀은 해당 계정의 DynamoDB 테이블에 제품 재고를 저장합니다. 공유 계정에서 중앙 재고 보고 애플리케이션이 실행되며 모든 팀의 DynamoDB 테이블에서 항목을 읽어야 합니다. 다음 인증 옵션 중 이러한 요구 사항을 가장 안전하게 충족하는 것은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 모든 비즈니스 계정에 DynamoDB 테이블에 대한 액세스 권한을 부여하는 정책과 재고 애플리케이션 계정의 특정 역할을 신뢰하는 신뢰 정책이 있는 BU_ROLE이라는 IAM 역할을 생성합니다. 재고 계정에 STS AssumeRole API를 호출할 수 있는 APP_ROLE이라는 역할을 생성합니다. DynamoDB 테이블을 읽기 위해 APP_ROLE을 사용하고 교차 계정 BU_ROLE을 가정하도록 애플리케이션을 구성합니다..
이것이 정답인 이유
이 솔루션은 AWS IAM 역할을 사용하여 교차 계정 액세스를 안전하게 관리합니다. 중앙 애플리케이션은 APPROLE을 사용하여 자체 계정 내에서 실행되고, STS AssumeRole API를 통해 각 비즈니스 계정의 BUROLE을 가정하여 해당 DynamoDB 테이블에 접근합니다. 이 방식은 자격 증명을 공유하거나 하드코딩할 필요 없이 최소 권한 원칙을 따릅니다.
다른 옵션들은 다음과 같은 이유로 적합하지 않습니다.
Secrets Manager는 자격 증명 관리에 유용하지만, 이 시나리오에서는 각 계정에 대한 개별 자격 증명을 생성하고 관리해야 하므로 복잡합니다.
IAM 사용자 액세스 키는 장기 자격 증명이며, 여러 계정에 걸쳐 공유하거나 애플리케이션에 직접 포함하는 것은 보안상 좋지 않습니다. 수동 교체도 번거롭습니다.
ACM은 SSL/TLS 인증서 관리에 사용되며, DynamoDB 인증에는 직접적으로 관련이 없습니다.