액세스 제어

Google Cloud에서는 ID 및 액세스 관리(IAM)를 제공하므로 구체적인 Google Cloud 리소스에 더욱 세분화된 액세스 권한을 부여하고 다른 리소스에 대한 무단 액세스를 방지할 수 있습니다. 이 페이지에서는 Cloud DNS API 역할을 설명합니다. IAM에 대한 자세한 설명은 ID 및 액세스 관리 문서를 참조하세요.

IAM은 최소 권한의 보안 원칙을 채택하여 리소스에 대해 필요한 액세스 권한만 부여할 수 있게 해줍니다.

IAM을 사용하면 IAM 정책을 설정하여 누가 어떤 리소스에 무슨 권한을 갖는지를 제어할 수 있습니다. IAM 정책은 사용자에게 특정 역할을 부여하여 특정 권한을 줍니다. 예를 들어 특정 사용자가 DNS(도메인 이름 시스템) 레코드 리소스를 만들고 수정해야 할 수 있습니다. 이런 경우에는 해당 사용자(누가)에게 dns.changes.createdns.resourceRecordSets.create 권한이 있는 /roles/dns.admin 역할(무슨)을 부여하여 리소스 레코드 집합(어떤)을 만들고 업데이트할 수 있도록 합니다. 반면 지원 부서는 기존 리소스 레코드 집합만 보면 되므로 /roles/dns.reader 역할을 부여받습니다.

권한 및 역할

모든 Cloud DNS API 메서드는 호출자에게 필수 IAM 권한을 요구합니다. 사용자, 그룹, 서비스 계정에 역할을 부여하여 권한을 할당합니다. 기본 역할인 소유자, 편집자, 뷰어 이외에 프로젝트 사용자에게도 Cloud DNS API 역할을 부여할 수 있습니다.

권한

다음 표에서는 호출자가 각 메서드를 호출하는 데 필요한 권한 목록을 보여줍니다.

메서드 필수 권한
리소스 레코드 집합 생성을 위한 dns.changes.create 권한 레코드 집합이 포함된 프로젝트에 대한 dns.changes.createdns.resourceRecordSets.create 권한
리소스 레코드 집합 업데이트를 위한 dns.changes.create 권한 레코드 집합이 포함된 프로젝트에 대한 dns.changes.createdns.resourceRecordSets.update 권한
리소스 레코드 집합 삭제를 위한 dns.changes.create 권한 레코드 집합이 포함된 프로젝트에 대한 dns.changes.createdns.resourceRecordSets.delete 권한
dns.changes.get 관리형 영역이 포함된 프로젝트에 대한 dns.changes.get 권한
dns.changes.list 관리형 영역이 포함된 프로젝트에 대한 dns.changes.list 권한
dns.dnsKeys.get 관리형 영역이 포함된 프로젝트에 대한 dns.dnsKeys.get 권한
dns.dnsKeys.list 관리형 영역이 포함된 프로젝트에 대한 dns.dnsKeys.list 권한
dns.managedZoneOperations.get 관리형 영역이 포함된 프로젝트에 대한 dns.managedZoneOperations.get 권한
dns.managedZoneOperations.list 관리형 영역이 포함된 프로젝트에 대한 dns.managedZoneOperations.list 권한
dns.managedZones.create 관리형 영역이 포함된 프로젝트에 대한 dns.managedZones.create 권한

비공개 영역을 만드는 경우 영역에 대한 액세스 권한을 부여할 각 VPC 프로젝트가 포함된 각 프로젝트에 대한 dns.networks.bindPrivateDNSZonedns.networks.targetWithPeeringZone 권한도 필요합니다.

dns.managedZones.delete 관리형 영역이 포함된 프로젝트에 대한 dns.managedZones.delete 권한
dns.managedZones.get 관리형 영역이 포함된 프로젝트에 대한 dns.managedZones.get 권한
dns.managedZones.list 관리형 영역이 포함된 프로젝트에 대한 dns.managedZones.list 권한
dns.managedZones.update 관리형 영역이 포함된 프로젝트에 대한 dns.managedZones.update 권한

비공개 영역을 만드는 경우 영역에 대한 액세스 권한을 부여할 각 VPC 프로젝트가 포함된 각 프로젝트에 대한 dns.networks.bindPrivateDNSZonedns.networks.targetWithPeeringZone 권한도 필요합니다.

dns.policies.create 정책이 포함된 프로젝트에 대한 dns.policies.create 권한

VPC 네트워크에서 정책을 만드는 경우 각 VPC 네트워크가 포함된 각 프로젝트에 대한 dns.networks.bindPrivateDNSPolicy 권한도 필요합니다.

dns.policies.delete 정책이 포함된 프로젝트에 대한 dns.policies.delete 권한
dns.policies.get 정책이 포함된 프로젝트에 대한 dns.policies.get 권한
dns.policies.list 정책이 포함된 프로젝트에 대한 dns.policies.list 권한
dns.policies.update 정책이 포함된 프로젝트에 대한 dns.policies.update 권한

VPC 네트워크에서 정책을 업데이트하는 경우 각 VPC 네트워크가 포함된 각 프로젝트에 대한 dns.networks.bindPrivateDNSPolicy 권한도 필요합니다.

dns.policies.patch 정책이 포함된 프로젝트에 대한 dns.policies.patch 권한
dns.projects.get 프로젝트에 대한 dns.projects.get
dns.resourceRecordSets.list 관리형 영역이 포함된 프로젝트에 대한 dns.resourceRecordSets.list 권한

역할

다음 표에서는 Cloud DNS API IAM 역할과 각 역할에 포함된 모든 권한 목록을 보여줍니다. 모든 권한은 특정 리소스 유형에 적용할 수 있습니다.

기본 역할을 사용하여 DNS를 변경할 수도 있습니다.

역할 이름 설명 권한 최하위 리소스
roles/dns.admin DNS 관리자 모든 Cloud DNS에 대한 읽기 및 쓰기 액세스 권한을 제공합니다.
  • compute.networks.get
  • compute.networks.list
  • dns.changes.*
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.*
  • dns.networks.*
  • dns.policies.create
  • dns.policies.delete
  • dns.policies.get
  • dns.policies.list
  • dns.policies.update
  • dns.projects.*
  • dns.resourceRecordSets.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
프로젝트
roles/dns.peer DNS 피어 DNS 피어링 영역(zone)이 있는 대상 네트워크에 대한 액세스 권한입니다.
  • dns.networks.targetWithPeeringZone
roles/dns.reader DNS 리더 모든 Cloud DNS 리소스에 대한 읽기 전용 액세스 권한을 제공합니다.
  • compute.networks.get
  • dns.changes.get
  • dns.changes.list
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.get
  • dns.managedZones.list
  • dns.policies.get
  • dns.policies.list
  • dns.projects.*
  • dns.resourceRecordSets.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
프로젝트

액세스 제어 관리

Google Cloud Console을 사용하여 주제 및 프로젝트에 대한 액세스 제어를 관리할 수 있습니다.

프로젝트 수준에서 액세스 제어를 설정하려면 다음 단계를 따르세요.

Console

  1. Google Cloud Console에서 IAM 페이지로 이동합니다.

    IAM 페이지로 이동

  2. 맨 위에 있는 드롭다운 메뉴에서 프로젝트를 선택합니다.

  3. 추가를 클릭합니다.

  4. 새 구성원에서 새 구성원의 이메일 주소를 입력합니다.

  5. 드롭다운 메뉴에서 원하는 역할을 선택합니다.

  6. 저장을 클릭합니다.

  7. 부여한 역할과 함께 구성원이 나열되는지 확인합니다.

다음 단계

  • Cloud DNS 사용을 시작하려면 빠른 시작을 참조하세요.
  • Cloud DNS를 사용할 때 발생할 수 있는 일반적인 문제에 대한 해결책을 찾으려면 문제 해결을 참조하세요.