IAM 사용자 및 역할 태그 지정 - AWS Identity and Access Management

IAM 사용자 및 역할 태그 지정

IAM 태그를 사용하여 키–값 페어 태그를 사용하여 IAM 엔터티(사용자 또는 역할)에 사용자 지정 속성을 추가할 수 있습니다. 예를 들어 사용자에게 위치 정보를 추가하려면 태그 키 location 및 태그 값 us_wa_seattle을 추가할 수 있습니다. 또는 세 개의 개별 위치 태그 키–값 페어 loc-country = us, loc-state = waloc-city = seattle을 사용할 수도 있습니다. 태그를 사용하여 리소스에 대한 엔터티의 액세스를 제어하거나 엔터티에 연결할 수 있는 태그를 제어할 수 있습니다. 태그를 사용하여 액세스를 제어하는 방법에 대한 자세한 내용은 IAM 리소스 태그를 사용하여 IAM 사용자 및 역할에 대한 액세스 제어 단원을 참조하십시오.

역할을 수임하거나 사용자를 연동할 때 AWS STS에서 태그를 사용하여 사용자 지정 속성을 추가할 수도 있습니다. 자세한 내용은 AWS STS에서 세션 태그 전달 단원을 참조하십시오.

AWS 태그 이름 지정 규칙 선택

IAM 사용자 및 역할에 태그 연결을 시작할 때 태그 이름 지정 규칙을 신중하게 선택합니다. 모든 AWS 태그에 동일한 규칙을 적용합니다. 정책에서 태그를 사용하여 AWS 리소스에 대한 액세스를 제어하는 경우 특히 중요합니다. AWS에서 태그를 이미 사용하고 있다면 이름 지정 규칙을 검토하고 적절하게 조정하십시오. 태그 지정 범주 및 전략에 대한 자세한 내용은 AWS General Reference 안내서AWS 리소스 AWS 태그 지정을 참조하십시오. 태그 지정 사용 사례 및 모범 사례를 보려면 태그 지정 모범 사례 백서를 다운로드하십시오.

IAM 및 AWS STS의 태그 지정 규칙

IAM 및 AWS STS에서 태그의 생성과 적용을 관리하는 규칙은 여러 가지가 있습니다.

태그 이름 지정

IAM 사용자, IAM 역할, AWS STS 역할 맡기 세션 및 AWS STS 연동 사용자 세션에 대한 태그 이름 지정 규칙을 공식화하는 경우 다음 규칙을 준수합니다.

  • 태그 키 및 값은 문자, 숫자, 공백 및 _ . : / = + - @ . 기호를 포함할 수 있습니다.

  • 태그 키–값 페어는 대소문자를 구분하지 않지만 대소문자는 유지됩니다. 즉, 별도의 Departmentdepartment 태그 키를 가질 수 없음을 의미합니다. Department=foo 태그로 사용자 태그를 지정하고 department=bar 태그를 추가하면 첫 번째 태그가 바뀝니다. 두 번째 태그는 추가되지 않습니다.

  • aws:로 시작하는 태그 키 또는 값을 생성할 수 없습니다. 이 태그 접두사는 AWS 내부 전용으로 예약되어 있습니다.

  • phoneNumber = 와 같이 값이 비어 있는 태그를 만들 수 있습니다. 빈 태그 키는 생성할 수 없습니다.

  • 단일 태그에 여러 값을 지정할 수 없지만 단일 값으로 사용자 지정 다중 값 구조를 생성할 수 있습니다. 예를 들어 사용자 Zhang이 엔지니어링 팀과 QA 팀에서 근무한다고 가정합니다. team = Engineering 태그를 연결하고 team = QA 태그를 연결한 경우 태그 값을 Engineering에서 QA로 변경합니다 . 대신 사용자 지정 구분자를 사용하여 단일 태그에 여러 값을 포함할 수 있습니다. 이 예에서는 Zhang에게 team = Engineering:QA 태그를 연결할 수 있습니다.

    참고

    이 예제에서 team 태그를 사용하여 엔지니어에 대한 액세스를 제어하려면 Engineering:QA를 포함하여 Engineering을 포함할 수 있는 모든 구성을 허용하는 정책을 만들어야 합니다. 정책에서의 태그 사용에 대한 자세한 내용은 IAM 리소스 태그를 사용하여 IAM 사용자 및 역할에 대한 액세스 제어 단원을 참조하십시오.

태그 적용 및 편집

태그를 IAM 엔터티(사용자 및 역할)에 연결할 때 다음 규칙을 준수하십시오.

  • 그룹이나 정책이 아닌 사용자나 역할에 태그를 지정할 수 있습니다.

  • Tag Editor를 사용하여 IAM 엔터티에 태그를 지정할 수 없습니다. Tag Editor는 IAM 태그를 지원하지 않습니다. Tag Editor를 다른 서비스와 함께 사용하는 방법에 대한 내용은 AWS Management 콘솔 사용 설명서Tag Editor 작업 단원을 참조하십시오.

  • IAM 엔터티에 태그를 지정하려면 특정 권한이 있어야 합니다. 역할과 사용자에 태그를 지정하거나 태그를 해제하려면 태그를 나열할 수 있는 권한이 있어야 합니다. 자세한 내용은 IAM 엔터티 태그 지정에 필요한 권한 단원을 참조하십시오.

  • AWS 계정의 IAM 리소스 수와 크기는 제한되어 있습니다. 자세한 내용은 IAM 및 STS 할당량 단원을 참조하세요.

  • 여러 개의 IAM 엔터티에 동일한 태그를 적용할 수 있습니다. 예를 들어, 12명의 멤버가 있는 AWS_Development 부서가 있다고 가정합니다. 태그 키 department 및 값 awsDevelopment(department = awsDevelopment)를 가진 12명의 사용자와 역할이 있을 수 있습니다. 태그 지정을 지원하는 다른 서비스의 리소스에도 동일한 태그를 사용할 수 있습니다.

  • IAM 엔터티는 동일한 태그 키의 여러 인스턴스를 가질 수 없습니다. 예를 들어 태그 키–값 페어 costCenter = 1234가 지정된 사용자가 있는 경우 태그 키–값 페어 costCenter = 5678을 연결할 수 있습니다. IAM은 costCenter 태그의 값을 5678로 업데이트합니다.

  • IAM 사용자 또는 역할에 연결된 태그를 편집하려면 새 값으로 태그를 연결하여 기존 태그를 덮어씁니다. 예를 들어, 태그 키–값 페어 department = Engineering을 가진 사용자가 있다고 가정합니다. 사용자를 QA 부서로 이동해야 하는 경우 department = QA 태그 키–값 쌍을 사용자에게 연결할 수 있습니다. 결과적으로 department 태그 키의 Engineering 값이 QA 값으로 대체됩니다.

IAM 엔터티 태그 지정에 필요한 권한

IAM 엔터티(사용자 또는 역할)이 다른 엔터티에 태그를 지정할 수 있도록 권한을 구성해야 합니다. IAM 정책에서 다음 IAM 태그 작업 중 하나 또는 모두를 지정할 수 있습니다.

  • iam:ListRoleTags

  • iam:ListUserTags

  • iam:TagRole

  • iam:TagUser

  • iam:UntagRole

  • iam:UntagUser

특정 사용자의 태그를 추가, 나열 또는 제거하도록 IAM 엔터티를 허용하려면

태그를 관리해야 하는 IAM 엔터티의 권한 정책에 다음 명령문을 추가합니다. 계정 번호를 사용하여 <username>을 관리해야 할 사용자 이름으로 바꿉니다. 이 예제 JSON 정책 문서를 사용하여 정책을 생성하는 방법에 대해 자세히 알아보려면 JSON 탭에서 정책 만들기 단원을 참조하십시오.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser", "iam:UntagUser" ], "Resource": "arn:aws:iam:*:<account-number>:user/<username>" }

IAM 사용자가 태그를 자체 관리할 수 있게 하려면

사용자가 자신의 태그를 관리할 수 있도록 권한 정책에 다음 명령문을 추가합니다. 이 예제 JSON 정책 문서를 사용하여 정책을 생성하는 방법에 대해 자세히 알아보려면 JSON 탭에서 정책 만들기 단원을 참조하십시오.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser", "iam:UntagUser" ], "Resource": "arn:aws:iam:*:user/${aws:username}" }

IAM 엔터티를 사용하여 특정 사용자에게 태그를 추가하려면

특정 사용자의 태그를 추가하기만 하고 제거하지는 않으려면 IAM 엔터티의 권한 정책에 다음 명령문을 추가합니다.

참고

iam:AddRoleTagsiam:AddUserTags 작업을 수행하려면 iam:ListRoleTagsiam:ListUserTags 작업도 포함해야 합니다.

이 정책을 사용하려면 <username>을 관리해야 할 사용자 이름으로 바꿉니다. 이 예제 JSON 정책 문서를 사용하여 정책을 생성하는 방법에 대해 자세히 알아보려면 JSON 탭에서 정책 만들기 단원을 참조하십시오.

{ "Effect": "Allow", "Action": [ "iam:ListUserTags", "iam:TagUser" ], "Resource": "arn:aws:iam:*:<account-number>:user/<username>" }

특정 역할의 태그를 추가, 나열 또는 제거하도록 IAM 엔터티를 허용하려면

태그를 관리해야 하는 IAM 엔터티의 권한 정책에 다음 명령문을 추가합니다. <rolename>을 관리해야 하는 역할의 이름으로 바꿉니다. 이 예제 JSON 정책 문서를 사용하여 정책을 생성하는 방법에 대해 자세히 알아보려면 JSON 탭에서 정책 만들기 단원을 참조하십시오.

{ "Effect": "Allow", "Action": [ "iam:ListRoleTags", "iam:TagRole", "iam:UntagRole" ], "Resource": "arn:aws:iam:*:<account-number>:role/<rolename>" }

또는 IAMFullAccess 등의 AWS 관리형 정책을 사용하여 IAM에 모든 액세스 권한을 제공할 수 있습니다.

IAM 엔터티에 대한 태그 관리(콘솔)

AWS Management 콘솔에서 IAM 사용자 또는 역할에 대한 태그를 관리할 수 있습니다.

사용자 또는 역할에 대한 태그를 관리하려면(콘솔)

  1. AWS Management 콘솔에 로그인한 다음 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 콘솔의 탐색 창에서 역할 또는 사용자를 선택한 다음 편집할 엔터티의 이름을 선택합니다.

  3. 태그 탭을 선택하고 다음 작업 중 하나를 완료하십시오.

    • 엔터티에 아직 태그가 없는 경우 태그 추가를 선택합니다.

    • 기존 태그 세트를 관리하려면 태그 편집을 선택합니다.

  4. 태그를 추가하거나 제거하여 태그 세트를 완성합니다. 변경 사항 저장을 선택합니다.

IAM 엔터티에 대한 태그 관리(AWS CLI 또는 AWS API)

IAM 사용자 및 역할에 대한 태그를 나열, 연결 또는 제거할 수 있습니다. AWS CLI 또는 AWS API를 사용하여 IAM 사용자 및 역할에 대한 태그를 관리할 수 있습니다.

IAM 역할에 현재 연결된 태그를 나열하려면(AWS CLI 또는 AWS API)

IAM 사용자에 현재 연결된 태그를 나열하려면(AWS CLI 또는 AWS API)

IAM 역할에 태그를 연결하려면(AWS CLI 또는 AWS API)

IAM 사용자에 태그를 연결하려면(AWS CLI 또는 AWS API)

IAM 역할에서 태그를 제거하려면(AWS CLI 또는 AWS API)

IAM 사용자의 태그를 제거하려면(AWS CLI 또는 AWS API)

다른 AWS 서비스의 리소스에 대한 태그 연결 정보는 해당 서비스의 설명서를 참조하십시오.

태그를 사용하여 IAM 권한 정책으로 보다 세부적인 권한을 설정하는 방법에 대한 자세한 내용은 IAM 정책 요소: 변수 및 태그 단원을 참조하십시오.