역할 신뢰 정책 업데이트

역할 신뢰 정책 업데이트

역할을 수임할 수 있는 사람을 바꾸려면 역할의 신뢰 정책을 수정해야 해요. *서비스 연결 역할*의 신뢰 정책은 수정할 수 없습니다.

참고

  • 사용자가 역할 신뢰 정책에 주체(principal)로 나열되어 있는데 역할을 수임할 수 없다면 사용자의 권한 경계를 확인하세요. 사용자에게 권한 경계가 설정되어 있다면 그 권한 경계가 sts:AssumeRole 작업을 허용해야 해요.
  • 역할 세션 내에서 사용자가 현재 역할을 다시 수임할 수 있게 하려면 역할 신뢰 정책에 역할 ARN 또는 AWS 계정 ARN을 주체로 지정하세요. Amazon EC2, Amazon ECS, Amazon EKS, Lambda 같은 컴퓨팅 리소스를 제공하는 AWS 서비스는 임시 자격 증명을 제공하고 이러한 자격 증명을 자동으로 갱신합니다. 이렇게 하면 항상 유효한 자격 증명 세트를 가지게 돼요. 이런 서비스에서는 임시 자격 증명을 얻기 위해 현재 역할을 다시 수임할 필요가 없습니다. 하지만 세션 태그나 세션 정책을 전달하려면 현재 역할을 다시 수임해야 합니다.

출처: 문서

본문

역할 신뢰 정책 업데이트 (콘솔)

AWS Management Console의 IAM 콘솔에서 역할 신뢰 정책을 변경하는 방법이에요.

  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.
  2. IAM 콘솔의 탐색 창에서 역할(Roles) 을 선택합니다.
  3. 계정의 역할 목록에서 수정할 역할의 이름을 선택합니다.
  4. 신뢰 관계(Trust relationships) 탭을 선택한 다음 신뢰 정책 편집(Edit trust policy) 을 선택합니다.
  5. 필요에 따라 신뢰 정책을 편집합니다. 역할을 수임할 수 있는 추가 주체를 지정하려면 Principal 요소에 지정합니다. 예를 들어 다음 정책 스니펫은 Principal 요소에서 두 AWS 계정을 참조하는 방법을 보여줍니다.
"Principal": {
  "AWS": [
    "arn:aws:iam::111122223333:root",
    "arn:aws:iam::444455556666:root"
  ]
},

다른 계정의 주체를 지정했다면, 역할 신뢰 정책에 계정을 추가하는 것은 교차 계정 신뢰 관계를 구축하는 것의 절반에 불과합니다. 기본적으로 신뢰받는 계정의 어떤 사용자도 역할을 수임할 수 없습니다. 새로 신뢰받는 계정의 관리자는 사용자에게 역할 수임 권한을 부여해야 해요. 그러려면 관리자가 사용자에게 연결된 정책을 만들거나 편집해 사용자가 sts:AssumeRole 작업에 접근할 수 있게 해야 합니다. 자세한 내용은 다음 절차나 사용자에게 역할 전환 권한 부여 문서를 참고하세요. 다음 정책 스니펫은 Principal 요소에서 두 AWS 서비스를 참조하는 방법을 보여줍니다.

"Principal": {
  "Service": [
    "opsworks.amazonaws.com",
    "ec2.amazonaws.com"
  ]
},
  1. 신뢰 정책 편집을 마치면 정책 업데이트(Update policy) 를 선택해 변경 사항을 저장합니다. 정책 구조와 구문에 대한 자세한 내용은 AWS Identity and Access Management의 정책과 권한 및 IAM JSON 정책 요소 참조 문서를 참고하세요.

신뢰받는 외부 계정의 사용자가 역할을 사용하게 허용 (콘솔)

이 절차에 대한 자세한 내용은 사용자에게 역할 전환 권한 부여 문서를 참고하세요.

  1. 신뢰받는 외부 AWS 계정에 로그인합니다.
  2. 권한을 사용자에 연결할지 그룹에 연결할지 결정합니다. IAM 콘솔의 탐색 창에서 그에 따라 사용자(Users) 또는 사용자 그룹(User groups) 을 선택합니다.
  3. 접근 권한을 부여하려는 사용자나 그룹의 이름을 선택한 다음 권한(Permissions) 탭을 선택합니다.
  4. 다음 중 하나를 수행합니다.
    • 고객 관리 정책을 편집하려면 정책 이름을 선택하고 정책 편집(Edit policy) 을 선택한 다음 JSON 탭을 선택합니다. AWS 관리형 정책은 편집할 수 없습니다. AWS 관리형 정책은 AWS 아이콘( )과 함께 표시됩니다. AWS 관리형 정책과 고객 관리 정책의 차이에 대한 자세한 내용은 관리형 정책과 인라인 정책 문서를 참고하세요.
    • 인라인 정책을 편집하려면 정책 이름 옆의 화살표를 선택하고 정책 편집(Edit policy) 을 선택합니다.
  5. 정책 편집기에서 다음을 지정하는 새 Statement 요소를 추가합니다.
{
  "Effect": "Allow",
  "Action": "sts:AssumeRole",
  "Resource": "arn:aws:iam::ACCOUNT-ID:role/ROLE-NAME"
}

문의 ARN을 사용자가 수임할 수 있는 역할의 ARN으로 바꾸세요. 6. 화면의 프롬프트에 따라 정책 편집을 마칩니다.

역할 신뢰 정책 업데이트 (AWS CLI)

AWS CLI를 사용해 역할을 수임할 수 있는 대상을 변경할 수 있어요.

  • (선택) 수정할 역할의 이름을 모른다면 다음 명령을 실행해 계정의 역할을 나열합니다. aws iam list-roles
  • (선택) 역할의 현재 신뢰 정책을 보려면 다음 명령을 실행합니다. aws iam get-role
  • 역할에 접근할 수 있는 신뢰받는 주체를 수정하려면 업데이트된 신뢰 정책이 있는 텍스트 파일을 만듭니다. 아무 텍스트 편집기를 사용해 정책을 만들 수 있어요. 예를 들어 다음 신뢰 정책은 Principal 요소에서 두 AWS 계정을 참조하는 방법을 보여줍니다. 이 정책을 통해 서로 다른 두 AWS 계정의 사용자가 이 역할을 수임할 수 있습니다.
{
    "Version":"2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Principal": {"AWS": [
            "arn:aws:iam::111122223333:root",
            "arn:aws:iam::444455556666:root"
        ]},
        "Action": "sts:AssumeRole"
    }
}

다른 계정의 주체를 지정했다면, 역할 신뢰 정책에 계정을 추가하는 것은 교차 계정 신뢰 관계를 구축하는 것의 절반에 불과합니다. 기본적으로 신뢰받는 계정의 어떤 사용자도 역할을 수임할 수 없습니다. 새로 신뢰받는 계정의 관리자는 사용자에게 역할 수임 권한을 부여해야 해요. 자세한 내용은 사용자에게 역할 전환 권한 부여 문서를 참고하세요.

신뢰받는 외부 계정의 사용자가 역할을 사용하게 허용 (AWS CLI)

이 절차에 대한 자세한 내용은 사용자에게 역할 전환 권한 부여 문서를 참고하세요.

  1. 역할 수임 권한을 부여하는 권한 정책이 포함된 JSON 파일을 만듭니다. 예를 들어 다음 정책은 필요한 최소 권한을 포함합니다.
{
    "Version":"2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "arn:aws:iam::111122223333:role/ROLE-NAME"
    }
}

문의 ARN을 사용자가 수임할 수 있는 역할의 ARN으로 바꾸세요. 2. 신뢰 정책이 포함된 JSON 파일을 IAM에 업로드하려면 다음 명령을 실행합니다. aws iam create-policy 이 명령의 출력에는 정책의 ARN이 포함됩니다. 이후 단계에서 필요하므로 이 ARN을 기록해 두세요. 3. 정책을 연결할 사용자나 그룹을 결정합니다. 의도한 사용자나 그룹의 이름을 모른다면 다음 명령 중 하나를 사용해 계정의 사용자나 그룹을 나열합니다. aws iam list-users 또는 aws iam list-groups 4. 이전 단계에서 만든 정책을 사용자나 그룹에 연결하려면 다음 명령 중 하나를 사용합니다. aws iam attach-user-policy 또는 aws iam attach-group-policy

역할 신뢰 정책 업데이트 (AWS API)

AWS API를 사용해 역할을 수임할 수 있는 대상을 변경할 수 있어요.

  • (선택) 수정할 역할의 이름을 모른다면 다음 작업을 호출해 계정의 역할을 나열합니다. ListRoles
  • (선택) 역할의 현재 신뢰 정책을 보려면 다음 작업을 호출합니다. GetRole
  • 역할에 접근할 수 있는 신뢰받는 주체를 수정하려면 업데이트된 신뢰 정책이 있는 텍스트 파일을 만듭니다. 아무 텍스트 편집기를 사용해 정책을 만들 수 있어요. 예를 들어 다음 신뢰 정책은 Principal 요소에서 두 AWS 계정을 참조하는 방법을 보여줍니다. 이 정책을 통해 서로 다른 두 AWS 계정의 사용자가 이 역할을 수임할 수 있습니다.
{
    "Version":"2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Principal": {"AWS": [
            "arn:aws:iam::111122223333:root",
            "arn:aws:iam::444455556666:root"
        ]},
        "Action": "sts:AssumeRole"
    }
}

다른 계정의 주체를 지정했다면, 역할 신뢰 정책에 계정을 추가하는 것은 교차 계정 신뢰 관계를 구축하는 것의 절반에 불과합니다. 기본적으로 신뢰받는 계정의 어떤 사용자도 역할을 수임할 수 없습니다. 새로 신뢰받는 계정의 관리자는 사용자에게 역할 수임 권한을 부여해야 해요. 자세한 내용은 사용자에게 역할 전환 권한 부여 문서를 참고하세요.

  • 방금 만든 파일로 신뢰 정책을 업데이트하려면 다음 작업을 호출합니다. UpdateAssumeRolePolicy

신뢰받는 외부 계정의 사용자가 역할을 사용하게 허용 (AWS API)

이 절차에 대한 자세한 내용은 사용자에게 역할 전환 권한 부여 문서를 참고하세요.

  1. 역할 수임 권한을 부여하는 권한 정책이 포함된 JSON 파일을 만듭니다. 예를 들어 다음 정책은 필요한 최소 권한을 포함합니다.
{
    "Version":"2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "arn:aws:iam::111122223333:role/ROLE-NAME"
    }
}

문의 ARN을 사용자가 수임할 수 있는 역할의 ARN으로 바꾸세요. 2. 신뢰 정책이 포함된 JSON 파일을 IAM에 업로드하려면 다음 작업을 호출합니다. CreatePolicy 이 작업의 출력에는 정책의 ARN이 포함됩니다. 이후 단계에서 필요하므로 이 ARN을 기록해 두세요. 3. 정책을 연결할 사용자나 그룹을 결정합니다. 의도한 사용자나 그룹의 이름을 모른다면 다음 작업 중 하나를 호출해 계정의 사용자나 그룹을 나열합니다. ListUsers 또는 ListGroups 4. 이전 단계에서 만든 정책을 사용자나 그룹에 연결하려면 다음 작업 중 하나를 호출합니다. API: AttachUserPolicy 또는 AttachGroupPolicy

더 알아보기 (Learn more)