AWS Transfer Family 태그 기반 정책 예제 - AWS Transfer Family

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

AWS Transfer Family 태그 기반 정책 예제

다음은 태그를 기반으로 AWS Transfer Family 리소스에 대한 액세스를 제어하는 방법의 예입니다.

태그를 사용하여 AWS Transfer Family 리소스에 대한 액세스 통제

IAM 정책의 조건은 AWS Transfer Family 리소스에 대한 권한을 지정하는 데 사용하는 구문의 일부입니다. AWS Transfer Family 리소스의 태그를 기반으로 리소스 (예: 사용자, 서버, 역할 및 기타 엔티티) 에 대한 액세스를 제어할 수 있습니다. 태그는 키/값 쌍입니다. 리소스에 태그를 지정하는 방법에 대한 자세한 내용은 의 AWS 리소스 태그 지정을 참조하십시오. AWS 일반 참조

AWS Transfer Family에서는 리소스에 태그가 있을 수 있으며 일부 작업에는 태그가 포함될 수 있습니다. IAM 정책을 생성하면 태그 조건 키를 사용하여 다음을 통제할 수 있습니다.

  • 리소스에 있는 태그를 기반으로 AWS Transfer Family 리소스에서 작업을 수행할 수 있는 사용자

  • 어떤 태그가 작업의 요청에서 전달될 수 있는지 통제합니다.

  • 요청에서 특정 키를 사용할 수 있는지 여부를 통제합니다.

태그 기반 액세스 통제를 사용하면 API 수준에서보다 더 세밀한 통제를 적용할 수 있습니다. 또한 리소스 기반 액세스 통제를 사용하는 것보다 더 동적인 통제를 적용할 수 있습니다. 요청에서 제공된 태그(요청 태그)를 기반으로 작업을 허용하거나 거부하는 IAM 정책을 생성할 수 있습니다. 작업 중인 리소스에 대한 태그(리소스 태그)를 기반으로 IAM 정책을 생성할 수 있습니다. 일반적으로 리소스 태그는 리소스에 이미 있는 태그용이고, 요청 태그는 리소스에 태그를 추가하거나 리소스에서 태그를 제거할 때 사용됩니다.

태그 조건 키의 전체 구문 및 의미는 IAM 사용자 가이드AWS 리소스 태그를 사용한 액세스 통제를 참조하세요. API Gateway로 IAM 정책을 지정하는 방법에 대한 자세한 설명은 API Gateway 개발자 가이드IAM 권한으로 API에 대한 액세스 통제를 참조하세요.

예 1: 리소스 태그 기반 작업 거부

태그를 기반으로 리소스에서 수행할 작업을 거부할 수 있습니다. 다음 예 정책은 사용자 또는 서버 리소스에 키 stage와(과) 값 prod이(가) 태그 지정된 경우 TagResource, UntagResource, StartServer, StopServer, DescribeServer, DescribeUser 작업을 거부합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "transfer:TagResource", "transfer:UntagResource", "transfer:StartServer", "transfer:StopServer", "transfer:DescribeServer", "transfer:DescribeUser ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": "prod" } } } ] }

예 2: 리소스 태그 기반 작업 허용

태그를 기반으로 리소스에서 작업을 수행하도록 허용할 수 있습니다. 다음 예 정책은 사용자 또는 서버 리소스에 키 stage와(과) 값 prod이(가) 태그 지정된 경우 TagResource, UntagResource, StartServer, StopServer, DescribeServer, DescribeUser 작업을 거부합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "transfer:TagResource", "transfer:UntagResource", "transfer:StartServer", "transfer:StopServer", "transfer:DescribeServer", "transfer:DescribeUser ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": "prod" } } } ] }

예 3: 요청 태그에 따른 사용자 또는 서버 생성 거부

다음의 정책 예에는 명령문이 2개입니다. 첫 번째 명령문은 태그의 코스트 센터 키에 값이 없는 경우 모든 리소스에 대한 CreateServer 작업을 거부합니다.

두 번째 명령문은 태그의 코스트 센터 키에 1, 2 또는 3을 제외한 다른 값이 포함된 경우 CreateServer 작업을 거부합니다.

참고

이 정책은 1, 2, 또는 3 라는 costcenter 키와 값을 포함하는 리소스를 만들거나 삭제할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "transfer:CreateServer" ], "Resource": [ "*" ], "Condition": { "Null": { "aws:RequestTag/costcenter": "true" } } }, { "Effect": "Deny", "Action": "transfer:CreateServer", "Resource": [ "*" ], "Condition": { "ForAnyValue:StringNotEquals": { "aws:RequestTag/costcenter": [ "1", "2", "3" ] } } } ] }