공유 계정의 Lambda 함수가 여러 개발 계정에서 ec2:DescribeInstances를 호출해야 합니다. 최소 권한(least privilege)을 따르려면 계정 간에 권한을 어떻게 구성해야 합니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 각 개발 계정에 ec2:DescribeInstances 권한을 가진 IAM 역할을 생성하고, 공유 계정이 해당 역할을 수임(assume)할 수 있도록 신뢰 관계를 설정한 다음, 공유 계정의 Lambda 역할에 해당 역할을 수임할 수 있는 iam:AssumeRole 권한을 부여합니다..
이것이 정답인 이유
정답은 최소 권한 원칙을 따르면서 교차 계정 액세스를 설정하는 올바른 방법입니다. 각 개발 계정에 ec2:DescribeInstances 권한을 가진 역할을 생성하고, 이 역할의 신뢰 정책에 공유 계정을 지정하여 공유 계정이 이 역할을 수임할 수 있도록 합니다. 공유 계정의 Lambda 실행 역할에는 iam:AssumeRole 권한을 부여하여 개발 계정의 역할을 수임할 수 있게 합니다. 이렇게 하면 Lambda 함수는 필요한 경우에만 특정 개발 계정의 ec2:DescribeInstances 권한을 얻게 됩니다.
오답 1은 공유 계정에 ec2:DescribeInstances 권한을 직접 부여하여 개발 계정의 리소스에 액세스하게 하므로, 개발 계정의 리소스에 대한 제어권이 약화됩니다. 오답 3은 iam:AssumeRole 권한만 부여하고 어떤 역할을 수임할지에 대한 명확한 설정을 제공하지 않아 불완전합니다. 오답 4는 각 개발 계정에 역할을 생성하지만, 공유 계정의 Lambda 실행 역할에 ec2:DescribeInstances를 추가하는 것은 교차 계정 역할 수임의 목적과 맞지 않습니다.