Cloud Interconnect の使用を制限する

このドキュメントでは、Cloud Interconnect を使用できる一連の Virtual Private Cloud(VPC)ネットワークを制限する方法について説明します。

デフォルトでは、どの VPC ネットワークでも Cloud Interconnect を使用できます。Cloud Interconnect を使用できる VPC ネットワークを制御するには、組織のポリシーを設定します。組織のポリシーに関する一般的な情報については、組織のポリシー サービスの概要をご覧ください。

Cloud Interconnect を使用して VPC ネットワークをオンプレミス ネットワークに接続するには、VLAN アタッチメントが必要です。Cloud Interconnect の使用を制限する組織のポリシーでは、指定された VPC ネットワークからの VLAN アタッチメントの作成を許可または拒否します。特定の VPC ネットワークまたはプロジェクト、フォルダ、組織のリソース内のすべての VPC ネットワークからの VLAN アタッチメントの作成を許可または拒否するポリシーを設定できます。

ポリシーを定義する場合は、次の制約を使用できます。

  • constraints/compute.restrictDedicatedInterconnectUsage

    この制約は、Dedicated Interconnect を使用して VLAN アタッチメントを作成するときに使用できる一連の VPC ネットワークを定義します。

  • constraints/compute.restrictPartnerInterconnectUsage

    この制約は、Partner Interconnect を使用して VLAN アタッチメントを作成するときに使用できる一連の VPC ネットワークを定義します。

組織のポリシーを設定した場合は、設定以後の VLAN アタッチメントの作成のみが制約されます。このポリシーは、以前に作成された VLAN アタッチメントには影響しません。

ユーザーが組織のポリシーに違反する VLAN アタッチメントを作成しようとすると、エラー メッセージが表示されます。gcloud compute interconnects attachments partner create を実行した場合のエラー メッセージの例を次に示します。

ERROR: (gcloud.compute.interconnects.attachments.partner.create) Could not fetch resource:
- Constraint constraints/compute.restrictPartnerInterconnectUsage violated for projects/example-project.
projects/example-project/global/networks/example-network is not allowed to use the Partner Interconnect.

このページでは、組織のポリシーを設定して Cloud Interconnect の使用を制限する手順の例を紹介します。

組織のポリシーを設定するための一般的な手順などの詳細については、以下をご覧ください。

始める前に

組織のポリシーを設定するには、組織ポリシー管理者のロールroles/orgpolicy.policyAdmin)が必要です。

特定の VPC ネットワークを拒否するポリシーの設定

特定の VPC ネットワークによる Cloud Interconnect の使用を拒否するポリシーを設定する手順は、次のとおりです。

  1. 次のコマンドを入力して、組織 ID を検索します。

    gcloud organizations list

    コマンド出力は次の例のようになります。

    DISPLAY NAME             ID
    example-organization     29252605212
    
  2. ポリシーを定義する JSON ファイルを作成します。次の JSON の例では、project-1 内の network-1 が Dedicated Interconnect を使用できないようにするポリシーを定義しています。

    {
      "Constraint": "constraints/compute.restrictDedicatedInterconnectUsage",
      "listPolicy": {
        "deniedValues": [
          "projects/project-1/global/networks/network-1"
       ]
      }
    }
    
  3. gcloud Resource Manager の set-policy コマンドを使用して、組織のポリシーを設定します。

    gcloud resource-manager org-policies set-policy JSON_FILE_NAME
       --organization=ORGANIZATION_ID
    

    次の値を置き換えます。

    • JSON_FILE_NAME: 前の手順で作成した JSON ファイルの名前(policy-name.json など)

    • ORGANIZATION_ID: 事前に確認した組織の ID

すべての VPC ネットワークを拒否するポリシーの設定

すべての VPC ネットワークによる Cloud Interconnect の使用を拒否するポリシーを設定する手順は次のとおりです。

  1. 次のコマンドを入力して、組織 ID を検索します。

    gcloud organizations list

    コマンド出力は次の例のようになります。

    DISPLAY NAME             ID
    example-organization     29252605212
    
  2. ポリシーを定義する JSON ファイルを作成します。次の JSON の例では、すべての VPC ネットワークが Dedicated Interconnect を使用できないようにするポリシーを定義しています。

    {
      "Constraint": "constraints/compute.restrictDedicatedInterconnectUsage",
      "listPolicy": {
        "allValues": "DENY"
       }
    }
    
  3. gcloud Resource Manager の set-policy コマンドを使用して、組織のポリシーを設定します。

    gcloud resource-manager org-policies set-policy JSON_FILE_NAME
       --organization=ORGANIZATION_ID
    

    次の値を置き換えます。

    • JSON_FILE_NAME: 前の手順で作成した JSON ファイルの名前(policy-name.json など)

    • ORGANIZATION_ID: 事前に確認した組織の ID

組織、フォルダ、プロジェクト レベルでのポリシーの設定

前のセクションで、特定の VPC ネットワークまたはすべての VPC ネットワークを拒否する方法について説明しています。また、リスト型制約で説明されている構文を使用して、組織、プロジェクト、フォルダのレベルで VPC ネットワークを許可または拒否することもできます。

次のステップ