계정 A는 계정 B의 DynamoDB 테이블을 쿼리해야 하는 EC2 인스턴스에서 프로덕션 앱을 실행합니다. 계정 A의 EC2 인스턴스에 계정 B의 테이블에 대한 액세스 권한을 부여하는 가장 안전한 방법은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 계정 B에서 DynamoDB 테이블을 쿼리할 수 있는 권한을 가진 IAM 역할을 생성합니다. 계정 A의 EC2 인스턴스 IAM 역할을 새 역할의 신뢰 정책에 추가합니다. 그런 다음 계정 A의 EC2 인스턴스 역할이 계정 B의 해당 역할에 대해 sts:AssumeRole을 호출하도록 허용합니다..
이것이 정답인 이유
가장 안전한 방법은 계정 간 역할 위임을 사용하는 것입니다. 계정 B에서 DynamoDB 테이블 쿼리 권한이 있는 IAM 역할을 생성하고, 이 역할의 신뢰 정책에 계정 A의 EC2 인스턴스 역할을 지정하여 계정 A의 인스턴스가 sts:AssumeRole을 통해 이 역할을 맡을 수 있도록 합니다. 이는 최소 권한 원칙을 따르며, 계정 A의 인스턴스가 직접 계정 B의 리소스에 접근하는 대신 임시 자격 증명을 사용하여 접근하게 합니다. 다른 옵션들은 다음과 같은 이유로 적절하지 않습니다. 첫 번째 옵션은 계정 A의 EC2 인스턴스 역할에 직접 계정 B의 테이블에 대한 권한을 부여하는 것이므로, 계정 간 직접 권한 부여는 보안상 권장되지 않습니다. 또한 PassRole은 서비스가 다른 서비스에 역할을 전달할 때 사용되는 권한이며, 여기서는 적절하지 않습니다. 세 번째 옵션은 계정 A의 EC2 인스턴스 역할에 직접 권한을 부여하고 리소스 정책을 수정하는 것인데, 이는 계정 간 직접 권한 부여와 유사하게 보안상 좋지 않으며, 리소스 정책이 복잡해질 수 있습니다. 네 번째 옵션은 정적 IAM 액세스 키를 사용하는 것인데, 이는 자격 증명 유출 위험이 크고 보안상 가장 취약한 방법입니다.
끝없는 정답 찾기 없이 시험 합격
이 시험에 대한 모든 검증된 문제와 설명을 한곳에서 얻고, 준비 시간을 몇 시간 절약하세요. 1,000개 이상의 자격증 · 20개 이상의 언어 · 무료로 시작.
더 빠르게 시험 합격 → 카드 필요 없음