AWS Organization의 SCP(Service Control Policy)라면

8420 단어 AWS

개시하다


AWS Organization은 크게 Payer를 취합하는 기능과 SCP 승인을 통해 설정된 기능으로 나뉜다.이번에는 SCP 기능이 뭘 할 수 있는지 정리하고 싶어요.

SCP의 주요 사항 이해


SCP에 부여된 개체(개체)


SCP에 부여된 대상(실체)은 조직 트리 구조의 루트에 해당하는 Root, OU 및 AWS 계정이다.
주 AWS 계정도 SCP를 부여할 수 있지만, 사실상 권한을 제한할 수는 없다.
서비스 제어 정책은 주 계정에 적용되지 않습니다. 설령 주 계정이 어느 루트나 OU에 속하더라도.
https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_manage_policies.html

Root, OU, AWS 계정, SCP의 관계는 다음과 같습니다.

관리 권한이 있는 객체(템플릿)


SCP가 승인되면 권한 관리를 수행할 수 있는 객체(주요 객체)는 다음과 같습니다.
 Rootユーザ
 IAMユーザ
 IAMロール
아래의 주요 펄스는 적용되지 않습니다.
 組織のマスターアカウントに存在する全てのプリンシパル
 メンバーアカウントのサービスにリンクされたロール(Service-linked Role)
 リソースベースのポリシーで権限を付与された外部ユーザ
   例) S3のバケットポリシーで許可した外部アカウントのIAMユーザなど

블랙리스트와 화이트리스트.


SCP의 기재 방법에는 금지된 블랙리스트 방식과 허용된 화이트리스트 방식이 있다.
블랙리스트 예
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1549502804000",
            "Effect": "Deny",
            "Action": [
                "dynamodb:*"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
화이트 리스트 예
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1549502834000",
            "Effect": "Allow",
            "Action": [
                "ec2:*"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
IAM과 마찬가지로 기본적으로 암시적 Deny〃명시된 Allow〃명시된 Deny의 순서대로 오른쪽으로 가면 우선순위가 높습니다.
그러나 Deny를 은폐한 실제 상황으로 OU에 Full AWSAccess를 첨부할 때 AWS 계정에 화이트리스트를 첨부하면 화이트리스트에 명시적으로 허가된 서비스 이외에는 다른 서비스를 사용할 수 없다.
다음 예에서 Account1은 OU의 암시적 Deny를 우선적으로 고려하기 때문에 EC2만 사용할 수 있다.

OU와 AWS 계정으로 플러그인을 설정할 수 있기 때문에 구상 모드를 테스트해 봅니다.
전제 구성은 다음과 같다.Root에는 "FullAWSAccess"가 포함되어 있으며, IAM 정책은 FullAccess 권한이 있는 전제 조건입니다.

흰색 목록 모드


화이트리스트의 주의점은 AWS 계정에 기본적으로'풀 AWSAccess'가 부여되기 때문에 터치가 필요하다.단, 루트, OU, AWS 계정에 최소한 하나의 SCP가 필요하기 때문에 새로운 SCP를 만들고 첨부 후'FullAWSAccess'를 삭제합니다.
화이트리스트의 내용은 EC2의 조작을 허용한다(ec2:*).
AWS 계정을 임의의 OU로 이동함으로써 권한을 관리하는 것이 비교적 간단하기 때문에 AWS 계정은 FullAWSAccess 단위로 OU 단위로 화이트리스트를 연결하는 모델이 비교적 관리하기 쉽다.(파란색 줄로 둘러친 곳)

블랙리스트 모드


블랙리스트의 내용은 DynamoDB의 동작을 거부합니다 (dynamodb:*).
OU와 AWS 계정 모두 FullAWSAccess 권한을 가지고 있으며 OU 측의 블랙리스트로 불필요한 조작을 거부하는 패턴이 비교적 관리하기 쉽다.(파란색 줄로 둘러친 곳)

블랙리스트와 화이트리스트를 병용하다


OU 관리를 기반으로 하면 AWS 계정은 Full AWSAccss를, OU로 블랙리스트와 화이트리스트의 SCP를 부착하는 모드는 관리하기 쉽다.

흰색 목록에 중첩된 모드



EC2만 작동할 수 있으며 EC2를 제외한 숨겨진 Deny는 작동할 수 없습니다.

검은색 목록에 중첩된 상태의 모드 1



부모 OU에 블랙만 부착돼 있어 모든 조작이 거부됐다.

검은색 목록에 중첩된 상태의 모드 2



DynamoDB를 사용할 수 없습니다.DynamoDB 이외의 작업을 수행할 수 있습니다.

실제 조직 구조의 OU 구조를 구상하다


블랙리스트로 통치 역할을 발휘하다


구상의 용례 ※ 수첩에서 발췌
예 1: 사용자가 AWS CloudTrail을 사용하지 못하도록 하는 예
2: 사용자가 Amazon CloudWatch를 비활성화하거나 변경할 수 없음
예3: 사용자가 Amazon VPC 프로세스 로그를 삭제할 수 없음
예 4: 사용자가 AWS Config를 비활성화하거나 규칙을 수정하지 못하도록 합니다.
예5: 인터넷 접속에 연결되지 않은 VPC를 사용할 수 없음

화이트리스트에서 사용할 수 있는 서비스를 명확히 허용할 때


서비스에 사용되는 OU는 터미널 사용자를 위한 서비스에서 사용할 수 있는 AWS 서비스, 예를 들어 EC2와 RDS를 허용한다.
Operation용 OU(로그 취합용 계정)는 기록 보관을 목적으로 하기 때문에 S3 등 데이터 아카이빙을 위해 필요한 AWS 서비스만 허용된다.

절충안


화이트 리스트와 블랙 리스트를 병용하다.
사용이 명시적으로 허가된 AWS 서비스와 동시에 명시적으로 금지된 감사 시스템의 서비스 정지를 거부합니다.

언약


투고 내용은 제 개인적인 의견으로 소속 기업과 부서의 견해를 대표하지 않습니다.

좋은 웹페이지 즐겨찾기