IAM 역할을 사용하면 일반적으로 조직의 AWS 리소스에 대한 액세스 권한이 없는 사용자나 서비스에 액세스 권한을 위임할 수 있습니다. IAM 사용자나 AWS 서비스는 AWS API 호출을 수행하는 데 사용할 수 있는 임시 보안 자격 증명을 획득할 수 있는 권한을 맡을 수 있습니다. 따라서 장기 자격 증명을 공유하거나 리소스에 액세스해야 하는 엔터티별로 권한을 정의할 필요가 없습니다.
- Introducing an Easier Way to Delegate Permissions to AWS Services: Service-Linked Roles
- Adhere to IAM Best Practices in 2016
- How to Use a Single IAM User to Easily Access All Your Accounts by Using the AWS CLI
- AWS Identity and Access Management Policy Simulator를 사용하여 역할 액세스 정책 테스트
- Make a New Year’s Resolution: Adhere to IAM Best Practices
- Enable a New Feature in the AWS Management Console: Cross-Account Access
- Sharing AWS CloudTrail Log Files Between Accounts
다음 시나리오는 액세스를 위임하는 방법으로 해결할 수 있는 몇 가지 사항을 중점적으로 다룹니다.
- Amazon EC2 인스턴스에서 실행되는 애플리케이션에 AWS 리소스에 대한 액세스 권한 부여
Amazon EC2 인스턴스의 애플리케이션에 AWS 리소스에 대한 액세스 권한을 부여하려면 개발자는 각 인스턴스에 자격 증명을 배포해야 할 수 있습니다. 그러면 애플리케이션이 이러한 자격 증명을 사용해 Amazon S3 버킷 또는 Amazon DynamoDB 데이터 등의 리소스에 액세스할 수 있습니다. 하지만 각 인스턴스에 장기 자격 증명을 배포하면 관리하기도 어렵고 잠재적인 보안 위험도 존재합니다. 위 동영상에서는 역할을 사용하여 이러한 보안 우려 사항을 해결하는 방법을 좀 더 자세히 설명합니다.
- 교차 계정 액세스
개발 환경을 프로덕션 환경과 분리하는 등, 리소스에 대한 액세스를 제어 또는 관리하려면 여러 AWS 계정이 필요할 수도 있습니다. 하지만 간혹 한 계정의 사용자가 다른 계정의 리소스에 액세스해야 하는 경우도 있습니다. 예를 들어, 개발 환경의 사용자가 업데이트를 수행하기 위해 프로덕션 환경에 액세스해야 할 수도 있습니다. 따라서 사용자는 계정별로 자격 증명을 보유하고 있어야 하지만, 여러 계정의 여러 자격 증명을 관리하자면 자격 증명 관리가 어려워집니다. IAM 역할을 사용하면 이를 간소화할 수 있습니다. 교차 계정 액세스가 적용된 사례를 보려면 Trend Micro 사례 연구를 참조하십시오.
- AWS 서비스에 권한 부여
AWS 서비스가 사용자를 대신해 작업을 수행할 수 있으려면, 이러한 작업을 수행할 수 있는 권한을 해당 서비스에 부여해야 합니다. AWS IAM 역할을 사용하면 AWS 서비스가 사용자를 대신해 다른 AWS 서비스를 호출하거나 사용자 계정에서 AWS 리소스를 생성하고 관리할 수 있는 권한을 부여할 수 있습니다. 또한, Amazon Lex와 같은 AWS 서비스는 사전에 정의되어 해당하는 특정 서비스에서만 맡을 수 있는 서비스에 연결된 역할을 제공합니다.
IAM에서 역할을 관리하는 방법에 대한 자세한 내용은 IAM 사용 안내서의 IAM 역할 섹션을 참조하십시오.