AWS 자격 증명을 사용해 역할을 수임하여 AWS SDK 및 도구 인증 - AWS SDK 및 도구

AWS 자격 증명을 사용해 역할을 수임하여 AWS SDK 및 도구 인증

역할 수임에는 액세스 권한이 없을 수 있는 AWS 리소스에 액세스하기 위해 일련의 임시 보안 보안 인증을 사용하는 것이 포함됩니다. 이러한 임시 보안 인증은 액세스 키 ID, 보안 액세스 키 및 보안 토큰으로 구성됩니다. AWS Security Token Service(AWS STS) API 요청에 대해 자세히 알아보려면 AWS Security Token Service API 참조작업을 참조하세요.

역할을 수임하도록 SDK 또는 도구를 설정하려면 먼저 수임할 특정 역할을 만들거나 식별해야 합니다. IAM 역할은 Amazon 리소스 이름(ARN)역할로 고유하게 식별됩니다. 역할은 다른 엔티티와 신뢰 관계를 구축합니다. 해당 역할을 사용하는 신뢰 주체는 AWS 서비스 또는 다른 AWS 계정일 수 있습니다. IAM 역할에 대한 자세한 내용은 IAM 사용 설명서IAM 역할 섹션을 참조하십시오.

IAM 역할을 식별한 후 해당 역할을 신뢰할 수 있는 경우 해당 역할에서 부여한 권한을 사용하도록 SDK 또는 도구를 구성할 수 있습니다.

참고

가능한 경우 항상 리전 엔드포인트를 사용하고 AWS 리전를 구성하는 것이 AWS 모범 사례입니다.

IAM 역할 수임

역할 수임 시 AWS STS는 일련의 임시 보안 보안 인증을 반환합니다. 이러한 보안 인증은 다른 프로파일이나 코드가 실행되는 인스턴스 또는 컨테이너에서 제공됩니다. 일반적으로 이런 형태의 역할 수임은 한 계정의 AWS 자격 증명은 가지고 있지만, 애플리케이션이 다른 계정의 리소스에 접근해야 할 때 가장 많이 사용됩니다.

1단계: IAM 역할 설정

역할을 수임하도록 SDK 또는 도구를 설정하려면 먼저 수임할 특정 역할을 만들거나 식별해야 합니다. IAM 역할은 역할 ARN을 사용하여 고유하게 식별됩니다. 역할은 일반적으로 계정 내에서 또는 크로스 계정 액세스를 위해 다른 엔티티와 신뢰 관계를 구축합니다. 자세한 내용은 IAM 사용 설명서IAM 역할 생성을 참조하십시오.

2단계: SDK 또는 도구 구성

credential_source 또는 source_profile에서 보안 인증을 소싱하도록 SDK 또는 도구를 구성합니다.

Amazon ECS 컨테이너, Amazon EC2 인스턴스 또는 환경 변수에서 보안 인증을 소싱하는 데 credential_source를 사용합니다.

다른 프로파일에서 보안 인증을 소싱하는 데 source_profile을 사용합니다. source_profile은 또한 수임된 역할을 사용하여 다른 역할을 수임하는 프로파일 계층 구조인 역할 체인을 지원합니다.

프로파일에서 이를 지정할 때 SDK 또는 도구에서 해당 AWS STS AssumeRole API 직접 호출을 수행합니다. 역할을 수임하여 임시 보안 인증을 검색하고 사용하려면 공유 AWS config 파일에서 다음 구성 값을 지정합니다. 이러한 설정에 대한 자세한 내용은 역할 보안 인증 제공자 수임 설정 섹션을 참조하십시오.

  • role_arn - 1단계에서 생성한 IAM 역할에서

  • credential_source 또는 source_profile 중 하나를 구성

  • (선택 사항) duration_seconds

  • (선택 사항) external_id

  • (선택 사항) mfa_serial

  • (선택 사항) role_session_name

다음 예는 공유 config 파일에서 두 역할 수임 옵션 모두의 구성을 보여줍니다.

role_arn = arn:aws:iam::123456789012:role/my-role-name credential_source = Ec2InstanceMetadata
[profile-with-user-that-can-assume-role] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [profile dev] region = us-east-1 output = json role_arn = arn:aws:iam::123456789012:role/my-role-name source_profile = profile-with-user-that-can-assume-role role_session_name = my_session

모든 역할 수임 보안 인증 공급자 설정에 대한 자세한 내용은 이 안내서의 역할 보안 인증 제공자 수임를 참조하세요.