Amazon VPC Transit Gateways에서 자격 증명과 액세스 관리 - Amazon VPC

Amazon VPC Transit Gateways에서 자격 증명과 액세스 관리

AWS는 보안 보안 인증을 사용하여 사용자를 식별하고 AWS리소스에 대한 액세스 권한을 부여합니다. AWS Identity and Access Management(IAM)의 기능을 사용하면 보안 자격 증명을 공유하지 않고도 다른 사용자, 서비스 및 애플리케이션이 AWS 리소스를 완전히 또는 제한된 방식으로 사용할 수 있습니다.

기본적으로 IAM 사용자는 AWS 리소스를 생성, 확인 또는 수정할 수 있는 권한이 없습니다. 사용자에게 Transit Gateway 같은 리소스에 액세스하여 작업을 수행하도록 허용하려면 사용자에게 필요한 특정 리소스 및 API 작업을 사용할 권한을 부여하는 IAM 정책을 생성하고, 해당 사용자가 속한 그룹에 정책을 연결해야 합니다. 사용자 또는 사용자 그룹에 정책을 연결하면 지정된 리소스에 대해 지정된 작업을 수행할 권한이 허용되거나 거부됩니다.

예를 들어 Transit Gateway의 경우 다음 AWS 관리형 정책 중 하나가 적합할 수 있습니다.

Transit Gateway를 관리하는 정책의 예

다음은 Transit Gateway 작업에 대한 IAM 정책의 예입니다.

필수 태그를 사용하여 Transit Gateway 생성

다음 예제에서는 사용자가 Transit Gateway를 생성할 수 있도록 합니다. aws:RequestTag 조건 키를 사용하려면 사용자가 stack=prod 태그를 사용하여 Transit Gateway에 태그를 지정해야 합니다. aws:TagKeys 조건 키는 ForAllValues 한정자를 사용하여 요청에 stack 키만 허용됨을 나타냅니다(다른 어떤 태그도 지정할 수 없음). 사용자가 Transit Gateway를 생성할 때 이 태그를 전달하지 않거나 태그를 전혀 지정하지 않으면 요청이 실패합니다.

두 번째 문은 ec2:CreateAction 조건 키를 사용하여 사용자가 CreateTransitGateway의 컨텍스트에서만 태그를 생성하도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateTaggedTGWs", "Effect": "Allow", "Action": "ec2:CreateTransitGateway", "Resource": "arn:aws:ec2:region:account-id:transit-gateway/*", "Condition": { "StringEquals": { "aws:RequestTag/stack": "prod" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "stack" ] } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:region:account-id:transit-gateway/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateTransitGateway" } } } ] }
Transit Gateway 라우팅 테이블 작업

다음 예제에서는 사용자가 특정 Transit Gateway(tgw-11223344556677889)에 대해서만 Transit Gateway 라우팅 테이블을 생성하고 삭제할 수 있도록 합니다. 또한 사용자는 모든 Transit Gateway 라우팅 테이블에서 라우팅을 생성하고 바꿀 수 있지만 network=new-york-office 태그가 있는 연결에 대해서만 가능합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DeleteTransitGatewayRouteTable", "ec2:CreateTransitGatewayRouteTable" ], "Resource": [ "arn:aws:ec2:region:account-id:transit-gateway/tgw-11223344556677889", "arn:aws:ec2:*:*:transit-gateway-route-table/*" ] }, { "Effect": "Allow", "Action": [ "ec2:CreateTransitGatewayRoute", "ec2:ReplaceTransitGatewayRoute" ], "Resource": "arn:aws:ec2:*:*:transit-gateway-attachment/*", "Condition": { "StringEquals": { "ec2:ResourceTag/network": "new-york-office" } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTransitGatewayRoute", "ec2:ReplaceTransitGatewayRoute" ], "Resource": "arn:aws:ec2:*:*:transit-gateway-route-table/*" } ] }