신규 고객인 경우 Google Cloud는 다음 시나리오에서 도메인의 조직 리소스를 자동으로 프로비저닝합니다.
- 도메인의 사용자가 처음으로 로그인하는 경우
- 사용자가 조직 리소스가 연결되지 않은 결제 계정을 만드는 경우
무제한 액세스가 특징인 이 조직 리소스의 기본 구성으로 인해 인프라가 보안 침해에 노출될 가능성이 있습니다. 예를 들어 기본 서비스 계정 키 생성은 시스템을 잠재적 침해에 노출시키는 심각한 취약점입니다.
기본 보안 조직 정책을 시행하면 취약한 보안 상태는 조직 리소스 생성 시 적용되는 조직 정책 번들로 해결됩니다. 이러한 적용의 예시로는 서비스 계정 키 생성 중지와 서비스 계정 키 업로드 중지가 있습니다.
기존 사용자가 조직을 만들면 새 조직 리소스의 보안 상황은 기존 조직 리소스와 다를 수 있습니다. 보안 강화를 기본으로 설정한 조직 정책은 2024년 5월 3일 이후에 생성된 모든 조직에 적용됩니다. 2024년 2월과 2024년 4월 사이에 생성된 일부 조직에도 이러한 기본 정책 적용이 설정되어 있을 수 있습니다. 조직에 적용된 조직 정책을 보려면 조직 정책 보기를 참조하세요.
관리자로서 이러한 조직 정책 시행이 자동으로 적용되는 시나리오는 다음과 같습니다.
- Google Workspace 또는 Cloud ID 계정: Google Workspace 또는 Cloud ID 계정이 있으면 도메인과 연결된 조직 리소스가 생성됩니다. 보안 강화를 기본으로 설정한 조직 정책은 조직 리소스에 자동으로 적용됩니다.
- 결제 계정 생성: 생성된 결제 계정이 조직 리소스와 연결되지 않으면 조직 리소스가 자동으로 생성됩니다. 보안 강화를 기본으로 설정한 조직 정책은 조직 리소스에 적용됩니다. 이 시나리오는 Google Cloud 콘솔과 gcloud CLI 모두에서 작동합니다.
필수 권한
Identity and Access Management 역할 roles/orgpolicy.policyAdmin
이 있는 관리자는 조직 정책을 관리할 수 있습니다. 조직 정책을 변경하거나 재정의하려면 조직 정책 관리자여야 합니다.
역할을 부여하려면 다음 명령어를 실행하세요.
gcloud organizations add-iam-policy-binding ORGANIZATION --member=PRINCIPAL --role=ROLE
다음을 바꿉니다.
ORGANIZATION
: 조직의 고유 식별자PRINCIPAL
: 바인딩이 추가되는 주 구성원.user|group|serviceAccount:email
또는domain:domain
형식이어야 합니다. 예를 들면user:222larabrown@gmail.com
입니다.ROLE
: 주 구성원에게 부여할 역할. 사전 정의된 역할의 전체 경로를 사용하세요. 이 경우roles/orgpolicy.policyAdmin
여야 합니다.
조직 리소스에 적용되는 조직 정책
다음 표에는 조직 리소스를 만들 때 자동으로 적용되는 조직 정책 제약조건이 나와 있습니다.
조직 정책 이름 | 조직 정책 제약조건 | 설명 | 적용 영향 |
---|---|---|---|
서비스 계정 키 생성 사용 중지 | constraints/iam.disableServiceAccountKeyCreation |
사용자가 서비스 계정에 영구 키를 만들지 못하도록 합니다. 서비스 계정 키 관리 방법에 대한 자세한 내용은 서비스 계정 키 만들기에 대한 대안 제공을 참조하세요. | 노출된 서비스 계정 사용자 인증 정보 위험을 줄입니다. |
서비스 계정 키 업로드 사용 중지 | constraints/iam.disableServiceAccountKeyUpload |
서비스 계정에 외부 공개 키를 업로드하지 못하게 합니다. 서비스 계정 키 없이 리소스에 액세스하는 방법에 대한 자세한 내용은 권장사항을 참조하세요. | 노출된 서비스 계정 사용자 인증 정보 위험을 줄입니다. |
기본 서비스 계정에 대한 자동 역할 부여 사용 중지 | constraints/iam.automaticIamGrantsForDefaultServiceAccounts |
기본 서비스 계정이 생성 시 과도한 권한이 부여된 IAM 역할 Editor 를 받지 못하도록 합니다. |
Editor 역할은 서비스 계정에서 대부분의 Google Cloud 서비스에 대한 리소스를 만들고 삭제할 수 있도록 허용하므로 서비스 계정이 도용되면 취약점이 발생합니다. |
도메인별 ID 제한 | constraints/iam.allowedPolicyMemberDomains |
특정 조직 리소스에 속하는 ID로 리소스 공유를 제한합니다. | 고객 자체 도메인이 아닌 도메인을 사용하는 행위자가 조직 리소스에 액세스할 수 있도록 허용하면 취약점이 발생합니다. |
도메인별 연락처 제한 | constraints/essentialcontacts.allowedContactDomains |
선택한 도메인의 관리 사용자 ID만 플랫폼 알림을 수신하도록 필수 연락처를 제한합니다. | 다른 도메인의 악의적인 행위자가 필수 연락처로 추가되면 보안 상황이 손상될 수 있습니다. |
균일한 버킷 수준 액세스 | constraints/storage.uniformBucketLevelAccess |
Cloud Storage 버킷이 객체별 ACL(IAM 정책과 별도의 시스템)을 사용하여 액세스 권한을 제공하지 않도록 합니다. | 액세스 관리 및 감사 일관성을 적용합니다. |
기본적으로 영역 DNS 사용 | constraints/compute.setNewProjectDefaultToZonalDNSOnly |
애플리케이션 개발자가 Compute Engine 인스턴스의 전역 DNS 설정을 선택할 수 없는 제한사항을 설정합니다. | 전역 DNS 설정은 영역 DNS 설정보다 서비스 신뢰성이 낮습니다. |
IP 주소 유형에 따라 프로토콜 전달 제한 | constraints/compute.restrictProtocolForwardingCreationForTypes |
내부 IP 주소에 대해서만 프로토콜 전달 구성을 제한합니다. | 대상 인스턴스를 외부 트래픽 노출로부터 보호합니다. |
조직 정책 적용 관리
다음과 같은 방법으로 조직 정책 적용을 관리할 수 있습니다.
조직 정책 나열
보안 강화를 기본으로 설정한 조직 정책이 조직에 적용되는지 확인하려면 다음 명령어를 사용합니다.
gcloud resource-manager org-policies list --organization=ORGANIZATION_ID
ORGANIZATION_ID
를 조직의 고유 식별자로 바꾸세요.
조직 정책 사용 중지
조직 정책을 사용 중지하거나 삭제하려면 다음 명령어를 실행합니다.
gcloud org-policies delete CONSTRAINT_NAME --organization=ORGANIZATION_ID
다음을 바꿉니다.
CONSTRAINT_NAME
: 삭제할 조직 정책 제약조건의 이름. 한 가지 예시는iam.allowedPolicyMemberDomains
입니다.ORGANIZATION_ID
: 프로젝트의 고유 식별자
조직 정책 값 추가 또는 업데이트
조직 정책 값을 추가하거나 업데이트하려면 값을 YAML 파일에 저장해야 합니다. 이 파일 콘텐츠는 다음과 같이 표시될 수 있습니다.
{
"name": "organizations/ORG_ID/policies/CONSTRAINT_NAME",
"spec": {
"rules": [
{
"values": {
"allowedValues": ["VALUE_A"]
}
}
]
}
}
YAML 파일에 나열된 이러한 값을 추가하거나 업데이트하려면 다음 명령어를 실행합니다.
gcloud org-policies set-policy POLICY_FILE
POLICY_FILE
을 조직 정책 값이 포함된 YAML 파일의 경로로 바꿉니다.