내용으로 건너뛰기

IAM을 사용하여 다른 AWS 계정의 리소스에 액세스하려면 어떻게 해야 합니까?

3분 분량
0

다른 AWS 계정의 AWS Identity and Access Management(IAM) 역할에 대한 교차 계정 액세스를 설정하려고 합니다.

간략한 설명

중요: AWS는 장기 자격 증명(액세스 키)이 있는 IAM 사용자 대신 교차 계정 액세스를 위한 임시 자격 증명이 있는 IAM 역할을 사용할 것을 권장합니다. IAM 역할은 자동으로 교체되는 임시 보안 자격 증명을 제공하므로 장기 자격 증명과 관련된 보안 위험이 줄어듭니다.

다른 AWS 계정의 리소스에 액세스하려면 IAM 역할과 신뢰 관계를 설정합니다. 이 접근 방식은 AssumeRole API 작업을 사용하여 임시 보안 자격 증명을 가져옵니다.

예를 들어 소스 계정에서 대상 계정에 액세스하려고 합니다. 소스 계정에서 IAM 역할을 구성하여 대상 계정의 IAM 역할을 수임합니다. IAM 역할을 사용한 교차 계정 액세스에 대한 자세한 내용은 내가 소유한 다른 AWS 계정의 IAM 사용자에 대한 액세스를 참조하십시오.

참고: 또한 역할 체인화를 사용하여 소스 IAM 역할에서 대상 IAM 역할로 역할을 수임할 수 있습니다. 역할 체인은 AWS Command Line Interface(AWS CLI) 또는 API와 같은 프로그래밍 방식 액세스에서만 작동합니다. AWS Management Console에서는 역할 체인화를 사용할 수 없습니다.

해결 방법

참고: AWS CLI 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.

IAM을 사용하여 다른 AWS 계정의 리소스에 액세스하려면 다음 단계를 완료하십시오.

소스 계정

다음 단계를 완료하십시오.

  1. JSON 편집기를 사용하여 대상 역할을 수임할 권한을 부여하는 IAM 정책을 만듭니다.
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "sts:AssumeRole"
          ],
          "Resource": [
            "arn:aws:iam::DESTINATION-ACCOUNT-ID:role/DESTINATION-ROLENAME"
          ]
        }
      ]
    }
    
    참고: DESTINATION-ACCOUNT-IDDESTINATION-ROLENAME을 해당 값으로 바꾸십시오.
  2. SourceRole에 IAM 정책을 연결합니다.

대상 계정

다음 단계를 완료하십시오.

  1. 콘솔에서 IAM 역할을 생성합니다.
  2. 소스 계정 역할이 이 역할을 수임하도록 허용하는 사용자 지정 신뢰 정책을 만듭니다.
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::SOURCE-ACCOUNT-ID:role/SOURCE-ROLENAME"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    참고: SOURCE-ACCOUNT-IDSOURCE-ROLENAME을 자체 값으로 바꾸십시오.
  3. 대상 계정에 필요한 특정 리소스에 대한 액세스 권한을 부여하는 권한 정책을 이 역할에 연결합니다.

참고: IAM 역할을 만들고 편집할 수 있는 액세스 권한이 없는 경우 계정 소유자의 도움을 받아 프로세스를 완료하십시오. 신뢰할 수 있는 엔터티만 액세스할 수 있도록 계정 및 리소스에 대한 액세스를 제한하는 것이 가장 좋습니다.

여러 개의 소스 엔터티가 필요한 만큼의 대상 역할을 수임할 수 있도록 이 정책을 수정할 수 있습니다. 예를 들어 대상 계정 신뢰 정책의 Principal 값을 **"AWS": "SOURCE-ACCOUNT-ID"**로 변경할 수 있습니다. 이렇게 하면 역할을 맡을 권한이 있는 소스 계정의 모든 엔터티가 대상 계정 역할을 맡을 수 있습니다. 자세한 내용은 보안 주체 지정 방법정책 생성 또는 편집을 참조하십시오.

액세스 테스트

액세스를 테스트하려면 사용자에서 IAM 역할로 전환(콘솔) 또는 IAM 역할로 전환(AWS CLI)의 지침을 따르십시오. 자세한 내용은 IAM 자습서: IAM 역할을 사용하여 AWS 계정 전체에 대한 액세스 위임을 참조하십시오.

관련 정보

IAM의 교차 계정 리소스 액세스

AWS CLI를 사용하여 IAM 역할을 수임하려면 어떻게 해야 합니까?

IAM 정책을 만들거나 업데이트할 때 표시되는 "Has prohibited field Principal" 오류를 해결하려면 어떻게 해야 합니까?

Amazon S3 버킷에 있는 객체에 교차 계정 액세스를 제공하려면 어떻게 해야 합니까?

교차 계정 IAM 역할을 수임하려고 할 때 "AccessDenied" 또는 "Invalid information" 오류를 해결하려면 어떻게 해야 합니까?