IAM 정책에 태그 사용 - AWS IoT Core

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

IAM 정책에 태그 사용

API 작업에 사용하는 IAM AWS IoT 정책에서 태그 기반 리소스 수준 권한을 적용할 수 있습니다. 이를 통해 사용자가 생성, 수정 또는 사용할 수 있는 리소스를 더욱 정확하게 제어할 수 있습니다. IAM 정책의 다음 조건 컨텍스트 키 및 값과 함께 Condition 요소(Condition블록이라고도 함)를 사용하여 리소스의 태그를 기반으로 사용자 액세스(권한)를 제어합니다.

  • aws:ResourceTag/tag-key: tag-value를 사용하여 특정 태그가 지정된 리소스에 대한 사용자 작업을 허용 또는 거부합니다.

  • aws:RequestTag/tag-key: tag-value 태그를 허용하는 리소스를 생성하거나 수정하도록 API 요청할 때 특정 태그를 사용하도록(또는 사용하지 않도록) 요구하려면 를 사용합니다.

  • aws:TagKeys: [tag-key, ...] 태그를 허용하는 리소스를 생성하거나 수정할 것을 API 요청할 때 특정 태그 키 세트를 사용하도록(또는 사용하지 않도록) 하려면 를 사용합니다.

참고

IAM 정책의 조건 컨텍스트 키 및 값은 태그가 지정될 수 있는 리소스의 식별자가 필수 파라미터인 AWS IoT 작업에만 적용됩니다. 예를 들어, 이 요청에서는 태그 지정 가능 리소스( 사물 그룹, 사물 유형, 주제 규칙, 작업 또는 보안 프로필)DescribeEndpoint가 참조되지 않으므로 조건 컨텍스트 키 및 값을 기준으로 의 사용이 허용되거나 거부되지 않습니다. 태그 지정이 가능한 AWS IoT 리소스와 지원하는 조건 키에 대한 자세한 내용은 에 대한 작업, 리소스 및 조건 키를 AWS IoT 참조하세요.

자세한 내용은 AWS Identity and Access Management 사용 설명서태그를 사용한 액세스 제어를 참조하세요. 이 가이드의 IAM JSON 정책 참조 섹션에는 에서 JSON 정책의 요소, 변수 및 평가 로직에 대한 자세한 구문, 설명 및 예제가 나와 있습니다IAM.

다음은 ThingGroup 작업에 대해 2개의 태그 기반 제한을 적용하는 정책 예제입니다. 이 정책에 의해 제한된 IAM 사용자:

  • 사물 그룹을 "env=prod" 태그로 생성할 수 없습니다(예에서 "aws:RequestTag/env" : "prod" 줄 참조).

  • 기존 태그 "env=prod"가 지정된 사물 그룹을 수정 또는 액세스할 수 없습니다. 이 예에서는 "aws:ResourceTag/env" : "prod" 행을 참조하세요.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iot:CreateThingGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:UpdateThingGroup" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iot:CreateThingGroup", "iot:DeleteThingGroup", "iot:DescribeThingGroup", "iot:UpdateThingGroup" ], "Resource": "*" } ] }

또한 다음과 같이 목록에서 태그를 둘러싸 지정된 태그 키에 대해 여러 태그 값을 지정할 수도 있습니다.

"StringEquals" : { "aws:ResourceTag/env" : ["dev", "test"] }
참고

태그를 기준으로 리소스에 대한 사용자 액세스를 허용 또는 거부하는 경우 동일한 리소스에서 태그를 추가 또는 제거할 수 있도록 사용자를 명시적으로 거부할 것을 고려해야 합니다. 그렇지 않으면 사용자가 제한을 피해 태그를 수정하여 리소스에 대한 액세스 권한을 얻을 수 있습니다.