도메인별 ID 제한

Resource Manager는 조직 정책에서 도메인을 기반으로 리소스 공유를 제한하는 데 사용할 수 있는 도메인 제한 제약조건을 제공합니다. 이 제약조건을 사용하면 Cloud Identity and Access Management 정책에서 사용할 수 있는 ID 집합을 제한할 수 있습니다.

조직 정책은 이 제약조건을 사용하여 리소스 공유를 하나 이상의 지정된 G Suite 도메인 집합으로 제한할 수 있고, 폴더 또는 프로젝트별로 예외를 부여할 수 있습니다. 도메인 제한이 설정되면 이전 변경사항이 아니라 향후 Cloud IAM 정책 변경사항에만 이 제한이 적용됩니다. 따라서 다른 조직의 ID가 제약조건이 적용되기 전에 조직 정책에 추가된 경우 해당 ID에 대한 액세스가 유지됩니다.

도메인 제한 제약조건은 iam.allowedPolicyMemberDomains 목록 제약조건을 기반으로 합니다.

이 제약조건이 G Suite 도메인에서 설정되면 해당 도메인에 속하는 모든 ID에 영향을 미칩니다. 여기에는 Google Cloud Platform Console이 아니라 G Suite 콘솔에서 관리하는 사용자 계정이 포함됩니다.

조직 정책 설정

도메인 제한 제약조건은 일종의 목록 제약조건입니다. G Suite 고객 ID를 도메인 제한 제약조건의 allowed_values 목록에서 추가하거나 삭제할 수 있습니다. 해당 G Suite 계정과 연결된 모든 도메인은 조직 정책의 영향을 받습니다.

이 제약조건을 설정하려면 조직 정책을 수정할 권한이 있어야 합니다. 예를 들어 resourcemanager.organizationAdmin 역할은 조직 정책 제약조건을 설정할 권한이 있습니다. 조직 수준에서 정책을 관리하는 방법에 대해서는 제약조건 사용 페이지에서 자세히 알아보세요.

콘솔

도메인 제한 제약조건을 포함하는 조직 정책을 설정하는 방법은 다음과 같습니다.

  1. Google Cloud Platform 콘솔의 조직 정책 페이지로 이동합니다.
    조직 정책 페이지로 이동
  2. 선택을 클릭합니다.
  3. 정책을 설정할 조직을 선택합니다.
  4. 도메인 제약 공유를 클릭합니다.
  5. 수정 버튼을 클릭합니다.
  6. 적용 대상에서 맞춤설정을 선택합니다.
  7. 정책 값에서 커스텀을 선택합니다.
  8. G Suite 고객 ID정책 값 입력란에 입력한 다음 Enter를 누릅니다. 이 방법으로 여러 ID를 입력할 수 있습니다.
  9. 저장을 클릭합니다. 정책이 업데이트되었음을 확인하는 알림이 나타납니다.

gcloud

정책은 gcloud 명령줄 도구를 통해 설정할 수 있습니다. 도메인 제한 제약조건을 포함하는 정책을 만들려면 다음 명령어를 실행하세요.

gcloud alpha resource-manager org-policies allow \
    --organization 'ORGANIZATION_ID' \
    iam.allowedPolicyMemberDomains 'DOMAIN_ID_1' \
    'DOMAIN_ID_2'

각 항목의 의미는 다음과 같습니다.

조직 정책의 제약조건을 사용하는 방법은 제약조건 사용을 참조하세요.

조직 정책 예

다음 코드 스니펫은 도메인 제한 제약조건을 포함하는 조직 정책을 보여줍니다.

resource: "organizations/842463781240"
policy {
  constraint: "constraints/iam.allowedPolicyMemberDomains"
  etag: "\a\005L\252\122\321\946\334"
  list_policy {
  allowed_values: "C03xgje4y"
  allowed_values: "C03g5e3bc"
  allowed_values: "C03t213bc"
  }
}

allowed_values는 G Suite 고객 ID(예: C03xgje4y)입니다. 이 조직 정책이 적용되면 allowed_values 목록에서 G Suite 도메인에 속하는 ID만 Cloud IAM 정책에 허용됩니다. G Suite 사용자 및 그룹은 해당 G Suite 도메인에 속해야 하며, Cloud IAM 서비스 계정은 해당 G Suite 도메인과 연결된 조직 리소스의 하위 항목이어야 합니다.

예를 들어 회사의 G Suite 고객 ID만으로 조직 정책을 만든 경우, 이 시점부터는 해당 도메인의 구성원만 Cloud IAM 정책에 추가할 수 있습니다.

오류 메시지 예

allowed_values 목록에 포함되지 않은 구성원을 추가하여 도메인 제한 조직 제약조건을 위반할 경우 작업이 실패하고 오류 메시지가 표시됩니다.

콘솔

콘솔 스크린샷

gcloud

ERROR: (gcloud.projects.set-iam-policy) FAILED_PRECONDITION: One or
more users in the policy do not belong to a permitted customer.

G Suite 고객 ID 검색

도메인 제한 제약조건에 사용되는 G Suite 고객 ID는 두 가지 방법으로 얻을 수 있습니다.

gcloud

gcloud organizations list 명령어를 사용하면 resourcemanager.organizations.get 권한이 있는 모든 조직을 볼 수 있습니다.

gcloud alpha organizations list

이 명령어는 DISPLAY_NAME, ID(조직 ID), DIRECTORY_CUSTOMER_ID를 반환합니다. G Suite 고객 ID는 DIRECTORY_CUSTOMER_ID입니다.

API

G Suite 디렉토리 API를 사용하면 G Suite 고객 ID를 검색할 수 있습니다.

  1. https://www.googleapis.com/auth/admin.directory.customer.readonly 범위용 OAuth 액세스 토큰을 가져옵니다.
  2. 다음 명령어를 실행하여 G Suite 디렉토리 API를 쿼리합니다.

    curl -# -X GET "https://www.googleapis.com/admin/directory/v1/customers/customerKey" \
    -H "Authorization: Bearer $access_token" -H "Content-Type: application/json"
    

이 명령어는 고객 정보를 포함하는 JSON 응답을 반환합니다. G Suite 고객 ID는 id입니다.

하위 도메인 제한

도메인 제한 제약조건은 지정된 G Suite 고객 ID와 연결된 모든 도메인에 대한 액세스를 제한하여 작동합니다. 모든 G Suite 계정에는 정확하게 하나의 기본 도메인과 0개 이상의 보조 도메인이 있습니다. G Suite 고객 ID와 연결된 모든 도메인에는 제약조건이 적용됩니다.

도메인 제한 제약조건을 리소스에 적용하면 리소스 계층 구조에서 해당 리소스와 종속 항목에 액세스할 수 있는 기본 도메인과 모든 보조 도메인을 제어합니다.

공통된 G Suite 도메인 및 하위 도메인에 대한 예는 아래 표를 참조하세요.

기본 도메인 하위 도메인 도메인 제한 제약조건 user@sub.domain.com 허용 여부
domain.com 없음 허용: domain.com 아니요
domain.com sub.domain.com 허용: domain.com
domain.com sub.domain.com Allow: sub.domain.com
sub.domain.com domain.com Allow: sub.domain.com
sub.domain.com 없음 Allow: sub.domain.com

두 도메인 간에 도메인 제한 제약조건 액세스를 구분하려면 각 도메인을 다른 G Suite 계정과 연결해야 합니다. 각 G Suite 계정은 조직 노드와 연결되며, 자체 조직 정책을 적용할 수 있습니다. 이렇게 하면 세부적인 액세스 제어를 위해 domain.com을 하나의 G Suite 계정과 연결할 수 있고 sub.domain.com을 다른 계정과 연결할 수 있습니다. 자세한 내용은 여러 조직 관리를 참조하세요.

알려진 문제 해결

Cloud Billing 내보내기 서비스 계정

이 제약조건이 사용 설정된 상태에서는 버킷으로 결제 내보내기를 사용할 수 없습니다. 결제 내보내기에 사용되는 버킷에는 이 제약조건을 사용하지 마세요.

Cloud Billing 내보내기 서비스 계정 이메일 주소는 509219875288-kscf0cheafmf4f6tp1auij5me8qakbin@developer.gserviceaccount.com입니다.

Cloud Composer

새 환경을 만들려면 먼저 원하는 프로젝트에서 도메인 제한 제약조건을 중지해야 합니다. 환경을 만든 후 제약조건을 다시 사용 설정할 수 있습니다.

계정 액세스 강제 적용

도메인 제약조건을 위반하여 프로젝트에 대한 계정 액세스를 강제로 적용해야 하는 경우 다음 방법을 사용하세요.

  1. 도메인 제한 제약조건을 포함하는 조직 정책을 삭제합니다.

  2. 프로젝트에 대한 액세스 권한을 계정에 부여합니다.

  3. 도메인 제한 제약조건으로 조직 정책을 다시 구현합니다.

Google 그룹을 허용 목록에 추가할 수도 있습니다.

  1. 허용 도메인 내에 Google 그룹을 만듭니다.

  2. G Suite 관리자 패널을 사용하여 해당 그룹에 대한 도메인 제한을 해제합니다.

  3. 서비스 계정을 그룹에 추가합니다.

  4. 도메인 제한 제약조건으로 조직 정책을 다시 구현합니다.

  5. Cloud IAM 정책에서 Google 그룹에 대한 액세스 권한을 부여합니다.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Resource Manager 문서