セキュアタグを使用する

このドキュメントでは、安全なタグを作成して Dataproc クラスタに接続し、タグを使用してクラスタ ネットワーキングを保護する方法について説明します。

セキュアタグを使用するメリット

セキュアタグには、Identity and Access Management アクセス制御、タグの継承、単一の VPC ネットワーク バインディングなど、ネットワーク タグとは主な違いがあります。これにより、次の主なメリットが得られます。

アクセス制御とセキュリティの強化
セキュアタグは、IAM で制御されたアクセスを提供することで、ネットワーク タグに固有のセキュリティの問題を解決します。クラスタへのアクセス権を持つユーザーが変更できるネットワーク タグとは異なり、セキュアタグは、タグの不正な変更と、その結果としてファイアウォール ルールに望ましくない変更が加えられないようにします。

IAM ポリシーで安全なタグを使用すると、条件付きアクセス制御が有効になり、タグの存在に基づいてロールを付与または拒否することでセキュリティが強化されます。

ファイアウォール管理の簡素化
グローバルおよびリージョン ネットワーク ファイアウォール ポリシーは、セキュアタグをサポートしています。このサポートにより、共有ネットワーク全体で Dataproc のファイアウォール管理が簡素化されます。

VPC ファイアウォール ルールとは異なり、セキュア タグによって強化されたネットワーク ファイアウォール ポリシーでは、複数のルールを効率的にグループ化して同時に更新できます。これらのルールはすべて IAM アクセス制御によって管理されます。ネットワーク タグを使用する VPC ファイアウォール ルールと比較して、セキュアタグはネットワーク ファイアウォール ポリシー内のセキュリティと管理機能を強化します。

階層型リソースの継承による効率的な管理
セキュアタグは、階層内の親リソースから継承されます。 Google Cloud この継承により、タグを上位レベル(組織レベルなど)で定義して、フォルダやプロジェクトなどの子リソースに自動的に伝播できるため、管理が簡素化されます。これにより、組織全体で一貫したタグ付けが可能になります。詳細については、タグの継承をご覧ください。

共有 VPC とピアリングされた VPC 間のネットワーク管理の改善
ネットワーク タグは、指定された VPC ネットワーク内のファイアウォール ルールの送信元またはターゲットを識別します。ネットワーク ファイアウォール ポリシーの上り(内向き)ルールの送信元を指定する場合、セキュアタグを使用すると、Dataproc クラスタの VPC ネットワークとピアリングされた VPC ネットワークの両方でトラフィックの送信元を識別できます。上り(内向き)ルールまたは下り(外向き)ルールのターゲットを指定するためにセキュアタグを使用する場合、セキュアタグは独自の VPC ネットワーク内のターゲットのみを識別します。

Resource Manager タグとネットワーク タグの違いについては、タグとネットワーク タグの比較をご覧ください。

Resource Manager タグとラベルの違いについては、タグとラベルをご覧ください。

制限事項

  • セキュアタグをクラスタに適用できるのは、クラスタの作成時のみです。
  • セキュアタグの更新と削除はサポートされていません。

必要なロール

安全なタグを作成して Dataproc クラスタに接続するために必要な権限を取得するには、Resource Manager タグに対する次の IAM ロールを管理者に付与するよう依頼します。

  • タグを作成する: タグ管理者 roles/resourcemanager.tagAdmin
  • クラスタにタグを適用する: タグ閲覧者 roles/resourcemanager.tagViewer

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

セキュアタグを作成する

安全なタグを Dataproc クラスタに適用するには、まず、指定されたキーと 1 つ以上の値を使用して Resource Manager タグを作成する必要があります。

Dataproc クラスタにセキュア タグを適用する

安全なタグ TAG_KEY:TAG_VALUE ペアを指定して Dataproc クラスタを作成します。

Google Cloud CLI

Dataproc クラスタを作成してクラスタにセキュア タグを追加するには、--resource-manager-tags フラグを指定して gcloud Dataproc clusters create コマンドを実行します。

gcloud dataproc clusters create CLUSTER_NAME \
  --region REGION \
  --resource-manager-tags=TAG_KEY=TAG_VALUE

次のように置き換えます。

  • CLUSTER_NAME: 新しいクラスタの名前。

  • REGION: クラスタを配置する Compute Engine のリージョン

  • TAG_KEYTAG_VALUE: 作成した Resource Manager タグのキーと値。カンマ区切りのリストを指定して、同じキーで異なる値、または異なるキーと値で構成される複数のセキュアタグを適用できます。

REST

Dataproc クラスタを作成してクラスタにセキュアタグを追加するには、clusters.create リクエストの一部として resourceManagerTags フィールドを含めます。

"TAG_KEY":"TAG_VALUE" セキュアタグをクラスタに接続する cluster.create リクエストの JSON 本文の例を次に示します。

{
  "project_id":"PROJECT_ID",
  "config":{
    "master_config":{
      "num_instances":1,
      "machine_type_uri":"n1-standard-2",
      "image_uri":""
    },
    "softwareConfig": {
      "imageVersion": "",
      "properties": {},
      "optionalComponents": []
    },
    "worker_config":{
      "num_instances":2,
      "machine_type_uri":"n1-standard-2",
      "image_uri":""
    },
    "gce_cluster_config":{
      "zone_uri":"us-central1-a",
      "resource_manager_tags":{
        "TAG_KEY":"TAG_VALUE"
      }
    }
  }
}

次のように置き換えます。

  • PROJECT_ID: Google Cloud コンソールのダッシュボードの [プロジェクト情報] セクションに表示されるプロジェクト ID。

  • CLUSTER_NAME: 新しいクラスタの名前。

  • TAG_KEYTAG_VALUE: 作成した Resource Manager タグのキーと値。同じキーで構成された複数のセキュアタグを、異なる値または異なるキーと値で指定できます。

クラスタ ネットワーキングにセキュア タグを使用する

セキュアタグをクラスタに接続したら、セキュアタグを使用してクラスタ ネットワーキングを構成します。

次のステップ