기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
일반 예제
요청된 에 AWS 따라 에 대한 액세스 거부 AWS 리전
주제
이렇게 SCP 하면 지정된 리전 외부의 모든 작업에 대한 액세스가 거부됩니다. eu-central-1
및 를 사용 AWS 리전 하려는 eu-west-1
로 바꿉니다. 승인된 글로벌 서비스의 운영에 대한 공제를 제공합니다. 이 예제에서는 지정된 두 관리자 역할 중 하나에 의해 수행되는 요청을 제외하는 방법도 보여 줍니다.
참고
에서 리전 거부SCP를 사용하려면 AWS Control Tower 컨트롤 참조 가이드 의 요청된 에 AWS 따라 에 대한 액세스 거부 AWS 리전를 AWS Control Tower참조하세요.
이 정책은 Deny
효과를 사용하여 승인된 두 리전(eu-central-1
및 eu-west-1
) 중 하나를 대상으로 하지 않는 작업에 대한 모든 요청에 대한 액세스를 거부합니다. NotAction 요소를 사용하면 작업(또는 개별 작업)이 이 제한에서 면제되는 서비스를 나열할 수 있습니다. 글로벌 서비스에는 us-east-1
리전에 의해 물리적으로 호스팅되는 엔드포인트가 있으므로 이러한 방식으로 제외해야 합니다. 이렇게 SCP 구조화된 경우 요청된 서비스가 NotAction
요소에 포함된 경우 us-east-1
리전의 글로벌 서비스에 대한 요청이 허용됩니다. us-east-1
리전 내 서비스에 대한 다른 요청은 이 예제 정책에 의해 거부됩니다.
참고
이 예제에는 최신 글로벌 AWS 서비스 또는 작업이 모두 포함되지 않을 수 있습니다. 서비스 및 작업 목록을 조직 내 계정에 의해 사용되는 전역 서비스로 대체합니다.
도움말
IAM 콘솔에서 마지막으로 액세스한 서비스 데이터를 보고 조직에서 사용하는 글로벌 서비스를 확인할 수 있습니다. IAM 사용자, 그룹 또는 역할에 대한 세부 정보 페이지의 Access Advisor 탭에는 해당 엔터티에서 사용한 서비스가 가장 최근 액세스별로 정렬되어 표시됩니다 AWS .
고려 사항
-
AWS KMS 및 는 리전 엔드포인트를 AWS Certificate Manager 지원합니다. 하지만 Amazon과 같은 글로벌 서비스와 함께 사용하려면 다음 예제의 글로벌 서비스 제외 목록에 해당 항목을 포함해야 CloudFront 합니다SCP. Amazon과 같은 글로벌 서비스는 CloudFront 일반적으로 동일한 리전ACM에 AWS KMS 있는 및 에 대한 액세스가 필요하며, 글로벌 서비스의 경우 미국 동부(버지니아 북부) 리전(
us-east-1
)입니다. -
기본적으로 AWS STS 는 글로벌 서비스이며 글로벌 서비스 제외 목록에 포함되어야 합니다. 그러나 AWS STS 가 단일 글로벌 엔드포인트 대신 리전 엔드포인트를 사용하도록 활성화할 수 있습니다. 이렇게 하면 다음 예제 STS 의 글로벌 서비스 면제 목록에서 를 제거할 수 있습니다SCP. 자세한 내용은 AWS STS 에서 관리를 참조하세요 AWS 리전.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOutsideEU", "Effect": "Deny", "NotAction": [ "a4b:*", "acm:*", "aws-marketplace-management:*", "aws-marketplace:*", "aws-portal:*", "budgets:*", "ce:*", "chime:*", "cloudfront:*", "config:*", "cur:*", "directconnect:*", "ec2:DescribeRegions", "ec2:DescribeTransitGateways", "ec2:DescribeVpnGateways", "fms:*", "globalaccelerator:*", "health:*", "iam:*", "importexport:*", "kms:*", "mobileanalytics:*", "networkmanager:*", "organizations:*", "pricing:*", "route53:*", "route53domains:*", "route53-recovery-cluster:*", "route53-recovery-control-config:*", "route53-recovery-readiness:*", "s3:GetAccountPublic*", "s3:ListAllMyBuckets", "s3:ListMultiRegionAccessPoints", "s3:PutAccountPublic*", "shield:*", "sts:*", "support:*", "trustedadvisor:*", "waf-regional:*", "waf:*", "wafv2:*", "wellarchitected:*" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:RequestedRegion": [ "eu-central-1", "eu-west-1" ] }, "ArnNotLike": { "aws:PrincipalARN": [ "arn:aws:iam::*:role/Role1AllowedToBypassThisSCP", "arn:aws:iam::*:role/Role2AllowedToBypassThisSCP" ] } } } ] }
IAM 사용자 및 역할이 특정 변경을 수행하지 못하도록 방지
이렇게 하면 IAM 사용자와 역할이 조직의 모든 계정에서 생성한 지정된 IAM 역할을 변경하는 것이 SCP 제한됩니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessToASpecificRole", "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/name-of-role-to-deny" ] } ] }
지정된 관리자 역할에 대한 예외를 제외하고 IAM 사용자 및 역할이 지정된 변경을 수행하지 못하도록 방지
이는 관리자에 대한 예외를 만들기 위해 이전 예제를 기반으로 SCP 합니다. 이는 지정된 역할을 사용하는 관리자를 제외하고 영향을 받는 계정의 IAM 사용자 및 IAM 역할이 조직의 모든 계정에서 생성된 일반적인 관리 역할을 변경하는 것을 방지합니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessWithException", "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/name-of-role-to-deny" ], "Condition": { "ArnNotLike": { "aws:PrincipalARN":"arn:aws:iam::*:role/name-of-admin-role-to-allow" } } } ] }
API 작업을 수행해야 MFA 함
IAM 사용자 또는 역할이 작업을 수행하기 전에 다음과 SCP 같은 를 사용하여 다중 인증(MFA)을 활성화해야 합니다. 이 예제에서 작업은 Amazon EC2 인스턴스를 중지하는 것입니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyStopAndTerminateWhenMFAIsNotPresent", "Effect": "Deny", "Action": [ "ec2:StopInstances", "ec2:TerminateInstances" ], "Resource": "*", "Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": false}} } ] }
루트 사용자의 서비스 액세스 차단
다음 정책은 멤버 계정의 루트 사용자에 대해 지정된 작업에 대한 모든 액세스를 제한합니다. 계정이 특정 방식으로 루트 자격 증명을 사용하는 것을 방지하려면 이 정책에 자체 작업을 추가하세요.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RestrictEC2ForRoot", "Effect": "Deny", "Action": [ "ec2:*" ], "Resource": [ "*" ], "Condition": { "StringLike": { "aws:PrincipalArn": [ "arn:aws:iam::*:root" ] } } } ] }
멤버 계정이 조직을 나가지 못하도록 방지
다음 정책은 멤버 계정의 관리자가 조직에서 계정을 제거할 수 없도록 LeaveOrganization
API 작업 사용을 차단합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "organizations:LeaveOrganization" ], "Resource": "*" } ] }