IAM 역할 사용 - AWS Identity and Access Management

IAM 역할 사용

IAM 사용자, 애플리케이션 또는 서비스에서 이전에 생성한 역할을 사용하려면 그 역할로 전환할 수 있는 권한을 부여해야 합니다. IAM 사용자 그룹 중 하나 또는 사용자 자신에게 추가된 어떤 정책도 필요한 권한을 부여하는 데 사용할 수 있습니다. 이 단원에서는 역할 사용 권한을 사용자에게 부여하는 방법과 사용자가 AWS Management 콘솔, Windows PowerShell용 도구, AWS Command Line Interface(AWS CLI) 및 AssumeRole API를 사용하여 원하는 역할로 전환하는 방법을 살펴보겠습니다.

중요

IAM 콘솔 대신 프로그래밍 방식으로 역할을 생성하는 경우에는 사용자의 선택에 따라 최대 64자인 RoleName뿐만 아니라 최대 512자인 Path도 추가할 수 있습니다. 그러나 AWS Management 콘솔에서 역할 전환 기능이 있는 역할을 사용하려면 PathRoleName을 합해 64자를 초과할 수 없습니다.

AWS Management 콘솔에서 역할을 전환할 수 있습니다. AWS CLI 또는 API 작업을 호출하거나 사용자 지정 URL을 사용하여 역할을 위임할 수 있습니다. 사용한 방법에 따라 역할을 수임할 수 있는 사용자와 역할 세션의 지속 가능 기간이 결정됩니다.

역할 사용을 위한 방법 비교
역할을 수임하는 방법 역할을 위임할 수 있는 사용자 자격 증명의 수명을 지정하는 방법 자격 증명의 수명(최소 | 최대 | 기본)
AWS Management 콘솔 IAM 사용자(역할 전환을 통해) 역할 요약 페이지의 최대 세션 지속 시간 1시간 | 최대 세션 지속 시간 설정² | 1시간
assume-role CLI 또는 AssumeRole API 작업 IAM 사용자 또는 역할¹ duration-seconds CLI 또는 DurationSeconds API 파라미터 15분 | 최대 세션 기간 설정² | 1시간
assume-role-with-saml CLI 또는 AssumeRoleWithSAML API 작업 SAML을 사용하여 인증된 모든 사용자 duration-seconds CLI 또는 DurationSeconds API 파라미터 15분 | 최대 세션 기간 설정² | 1시간
assume-role-with-web-identity CLI 또는 AssumeRoleWithWebIdentity API 작업 웹 자격 증명 공급자를 사용하여 인증된 모든 사용자 duration-seconds CLI 또는 DurationSeconds API 파라미터 15분 | 최대 세션 기간 설정² | 1시간
AssumeRole로 구성된 콘솔 URL IAM 사용자 또는 역할 URL의 SessionDuration HTML 파라미터 15분 | 12시간 | 1시간
AssumeRoleWithSAML로 구성된 콘솔 URL SAML을 사용하여 인증된 모든 사용자 URL의 SessionDuration HTML 파라미터 15분 | 12시간 | 1시간
AssumeRoleWithWebIdentity로 구성된 콘솔 URL 웹 자격 증명 공급자를 사용하여 인증된 모든 사용자 URL의 SessionDuration HTML 파라미터 15분 | 12시간 | 1시간

¹ 하나의 역할이 자격 증명을 사용하여 다른 역할을 위임하는 것을 역할 함께 묶기라고 합니다. 역할 함께 묶기를 사용하는 경우, 새 자격 증명은 최대 1시간의 지속 시간으로 제한됩니다. 역할을 사용하여 EC2 인스턴스에서 실행되는 애플리케이션에 권한을 부여하면 해당 애플리케이션에 이러한 제한이 적용되지 않습니다.

² 이 설정은 1~12시간의 값을 가질 수 있습니다. 최대 세션 지속 시간 설정을 수정하는 방법에 대한 자세한 내용은 역할 변경 단원을 참조하십시오. 이 설정은 역할 자격 증명을 얻을 때 요청할 수 있는 최대 세션 기간을 결정합니다. 예를 들어 AssumeRole* API 작업을 사용하여 역할을 위임할 때 DurationSeconds 파라미터를 사용하여 세션 길이를 지정할 수 있습니다. 이 파라미터를 사용하여 역할 세션의 길이를 900초(15분)에서 역할에 대한 최대 세션 지속 시간 설정까지 지정할 수 있습니다. 콘솔에서 역할을 전환 중인 IAM 사용자에게 최대 세션 지속 시간 또는 IAM 사용자 세션의 남은 시간 중 적은 시간이 부여됩니다. 역할에 대해 최대 지속 시간이 5시간으로 설정된 것으로 가정합니다. 10시간 동안 콘솔에 로그인한 IAM 사용자가 역할로 전환합니다. 사용 가능한 역할 세션 지속 시간은 2시간입니다. 역할에 대한 최댓값을 확인하는 방법을 알아보려면 이 페이지 뒷부분에 나오는 역할에 대한 최대 세션 기간 설정 보기 단원을 참조하십시오.

참고

최대 세션 지속 시간 설정은 AWS 서비스에서 수임한 세션을 제한하지 않습니다.

역할에 대한 최대 세션 기간 설정 보기

AWS Management 콘솔을 사용하거나 AWS CLI 또는 AWS API를 사용하여 역할의 최대 세션 지속 시간을 지정할 수 있습니다. AWS CLI 또는 API 작업을 사용하여 역할을 수임하는 경우, DurationSeconds 파라미터에 대한 값을 지정할 수 있습니다. 이 파라미터를 사용하여 역할 세션의 지속 시간을 900초(15분)에서 해당 역할에 대한 최대 세션 지속 시간 설정까지 지정할 수 있습니다. 이 파라미터를 지정하기 전에 역할에 대한 이 설정을 확인해야 합니다. DurationSeconds 파라미터의 값을 최대 설정보다 높게 지정하면 작업에 실패합니다.

역할의 최대 세션 기간을 보려면(콘솔)

  1. IAM 콘솔의 탐색 창에서 [Roles]를 선택합니다.

  2. 보려는 역할의 이름을 선택합니다.

  3. 최대 세션 지속 시간 옆에서 역할에 대해 부여된 최대 세션 길이를 확인합니다. AWS CLI 또는 API 작업에서 지정할 수 있는 최대 세션 지속 시간입니다.

역할의 최대 세션 기간 설정을 보려면(AWS CLI)

  1. 수임할 역할의 이름을 모르는 경우 다음 명령을 실행하여 계정의 역할을 나열합니다.

  2. 역할에 대한 현재 최대 세션 기간 설정을 확인하려면 다음 명령을 실행합니다. 그런 다음 최대 세션 기간 파라미터를 확인합니다.

역할의 최대 세션 기간 설정을 보려면(AWS API)

  1. 수임할 역할의 이름을 모르는 경우 다음 연산을 호출하여 계정의 역할을 나열합니다.

  2. 역할에 대한 현재 최대 세션 기간 설정을 확인하려면 다음 연산을 실행합니다. 그런 다음 최대 세션 기간 파라미터를 확인합니다.