アクセス制御

Google Cloud Platform には Identity and Access Management(IAM)機能があり、特定の Google Cloud Platform リソースに対するアクセス権を詳細に設定できるため、他のリソースへの不要なアクセスを防ぐことができます。このページでは、Google Cloud DNS API の役割について説明します。Cloud IAM の詳細については、IAM のドキュメントをご覧ください。

IAM を使用すると、セキュリティに関する最小権限の原則を導入できるため、リソースに対する必要なアクセス権のみ付与できます。

IAM は、IAM ポリシーを設定することで、誰(ユーザー)に、どのリソースに対する何(役割)の権限を付与するかを制御できます。IAM ポリシーは、特定の役割をユーザーに付与することで、そのユーザーに特定の権限を付与します。たとえば、管理者はおそらく DNS レコードの作成や修正が必要になるため、/roles/dns.admin の役割を付与します。一方、サポート担当者はおそらく既存の DNS レコードを閲覧できればよいため、/roles/dns.reader の役割を付与します。

権限と役割

すべての Google Cloud DNS API メソッドにおいて、呼び出し元は必要な IAM 権限を持っている必要があります。権限は、役割をユーザーやグループ、サービス アカウントに付与することで割り当てられます。オーナー、編集者、閲覧者といった基本の役割に加え、Google Cloud DNS API の役割をプロジェクトのユーザーに付与できます。

権限

呼び出し元が各メソッドを呼び出す際に必要となる権限のリストを次の表に示します。

メソッド 必要な権限
dns.changes.create - リソース レコードセット作成 リクエスト対象のレコードセットに対する dns.changes.create および dns.resourceRecordSets.create
dns.changes.create - リソース レコードセットの更新 リクエスト対象のレコードセットに対する dns.changes.create および dns.resourceRecordSets.update
dns.changes.create - リソース レコードセットの削除 リクエスト対象のレコードセットに対する dns.changes.create および dns.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
dns.managedZones.delete マネージド ゾーンに対する dns.managedZones.delete
dns.managedZones.get マネージド ゾーンに対する dns.managedZones.get
dns.managedZones.list プロジェクトに対する dns.managedZones.list
dns.managedZones.update マネージド ゾーンに対する dns.managedZones.update
dns.projects.get プロジェクトに対する dns.projects.get
dns.resourceRecordSets.list マネージド ゾーンに対する dns.resourceRecordSets.list

役割

Google Cloud DNS API IAM の役割と、各役割に含まれるすべての権限のリストを次の表に示します。各権限は、それぞれ特定のリソースタイプを対象としています。

役割 含まれている権限 リソースタイプ
/roles/dns.admin/roles/owner*、または /roles/editor* dns.changes.create
dns.changes.get
dns.changes.list
dns.dnsKeys.get
dns.dnsKeys.list
dns.managedZoneOperations.get
dns.managedZoneOperations.list
dns.managedZones.create
dns.managedZones.delete
dns.managedZones.get
dns.managedZones.list
dns.managedZones.update
dns.projects.get
dns.resourceRecordSets.create
dns.resourceRecordSets.delete
dns.resourceRecordSets.list
dns.resourceRecordSets.update
プロジェクト
/roles/dns.reader または /roles/viewer* dns.changes.get
dns.changes.list
dns.dnsKeys.get
dns.dnsKeys.list
dns.managedZoneOperations.get
dns.managedZoneOperations.list
dns.managedZones.get
dns.managedZones.list
dns.managedZones.update
dns.projects.get
dns.resourceRecordSets.list
プロジェクト

* /roles/owner/roles/editor/roles/viewer の役割には、他の Google Cloud Platform サービスの権限も含まれます。詳細については、基本の役割をご覧ください。

GCP Console によるアクセス制御

GCP Console を使用すると、トピックやプロジェクトのアクセス制御を管理できます。

プロジェクト レベルでアクセス制御を設定するには:

  1. Google Cloud Platform Console で IAM ページを開きます。
  2. 上部にあるプルダウン メニューからプロジェクトを選択します。
  3. [追加] をクリックします。
  4. 新しいメンバーのメールアドレスを入力します。
  5. プルダウン メニューから目的の役割を選択します。
    • 管理者の役割(/roles/dns.admin)の場合、[DNS] > [DNS 管理者] を選択します。
    • 読み取り専用の役割(/roles/dns.reader)の場合、[DNS] > [DNS の読み取り] を選択します。
  6. [追加] をクリックします。
  7. 付与した役割にそのメンバーがリストされているかを確認します。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...