バケットの IP フィルタリング ルールを更新する

このページでは、バケット IP フィルタリング ルールを更新する方法について説明します。

必要なロール

バケットの IP フィルタリング ルールを更新するために必要な権限を取得するには、バケットに対するストレージ管理者(roles/storage.admin)ロールを付与するよう管理者に依頼してください。このロールには、バケットの IP フィルタリング ルールを更新するために必要な権限が含まれています。

必要な権限を正確に確認するには、[必要な権限] セクションを開きます。

必要な権限

  • storage.buckets.update
  • storage.buckets.setIpFilter

カスタムロールを使用して、これらの権限を取得することもできます。他の事前定義ロールでこれらの権限を取得することもできます。どのロールがどの権限に関連付けられているかを確認するには、Cloud Storage に適用される IAM のロールをご覧ください。

プロジェクトにロールを付与する手順については、プロジェクトへのアクセス権を管理するをご覧ください。

バケットの IP フィルタリング ルールを更新する

コマンドライン

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 受信リクエストのルールを定義する JSON ファイルを作成します。バケット IP フィルタリング ルールの構成方法の例については、バケット IP フィルタリング構成をご覧ください。

    {
      "mode": "Enabled",
      "publicNetworkSource":
        {
        "allowedIpCidrRanges":
          [RANGE_CIDR,
          ...
          ]
        },
      "vpcNetworkSources":
          [
           {"network": "projects/PROJECT_ID/global/networks/NETWORK_NAME",
            "allowedIpCidrRanges":
              [RANGE_CIDR,
              ...
              ]
           },
          ...
          ]
       }

    ここで

    • mode は、IP フィルタ構成のモードです。有効な値は EnabledDisabled です。Enabled に設定すると、IP フィルタリング ルールがバケットに適用されます。バケットへの受信リクエストは、これらのルールに対して評価されます。Disabled に設定すると、受信したすべてのリクエストがバケットにアクセスできます。

    • RANGE_CIDR は、バケットへのアクセスが許可されているパブリック ネットワークの IPv4 または IPv6 アドレス範囲です。1 つ以上のアドレス範囲をリストとして入力できます。

    • PROJECT_ID は、Virtual Private Cloud(VPC)ネットワークが存在するプロジェクト ID です。複数の VPC ネットワークを構成するには、各ネットワークが配置されているプロジェクトを指定する必要があります。

    • NETWORK_NAME は、バケットへのアクセスが許可されている VPC ネットワークの名前です。複数の VPC ネットワークを構成するには、各ネットワークの名前を指定する必要があります。

  3. バケットの IP フィルタリング ルールを更新するには、開発環境で gcloud alpha storage buckets update コマンドを実行します。

    gcloud alpha storage buckets update gs://BUCKET_NAME --ip-filter-file=IP_FILTER_CONFIG_FILE

    ここで

    • BUCKET_NAME はバケットの名前です。例: my-bucket
    • IP_FILTER_CONFIG_FILE は、前の手順で作成した JSON ファイルです。

REST API

JSON API

  1. gcloud CLI のインストールと初期化を行います。これにより、Authorization ヘッダーのアクセス トークンを生成できます。

  2. バケットの設定を含む JSON ファイルを作成します。この設定には、バケットの name 構成フィールドと ipFilter 構成フィールドを含める必要があります。バケット IP フィルタリング ルールの構成方法の例については、 バケット IP フィルタリング構成をご覧ください。

    {
      "name": "BUCKET_NAME"
      "ipFilter": {
        "mode": "Enabled",
        "publicNetworkSource":
          {
            "allowedipCidrRanges":
              [RANGE_CIDR,
                ...
              ]
              },
              "vpcNetworkSources":
              [
              {"network": "projects/PROJECT_ID/global/networks/NETWORK_NAME",
                "allowedipCidrRanges":
                [RANGE_CIDR,
                  ...
                ]
              },
              ...
              ]
            }
           }
          

    ここで

    • mode は、IP フィルタ構成の状態です。有効な値は EnabledDisabled です。Enabled に設定すると、IP フィルタリング ルールがバケットに適用され、バケットへのすべての受信リクエストがこれらのルールに対して評価されます。Disabled に設定すると、受信したすべてのリクエストが、評価なしでバケットとそのデータにアクセスできます。

    • RANGE_CIDR は、バケットへのアクセスが許可されているパブリック ネットワークの IPv4 または IPv6 アドレス範囲です。1 つ以上のアドレス範囲をリストとして入力できます。

    • PROJECT_ID は、VPC ネットワークが存在するプロジェクト ID です。複数の VPC ネットワークを構成するには、各ネットワークが配置されているプロジェクトを指定する必要があります。

    • NETWORK_NAME は、バケットへのアクセスが許可されている VPC ネットワークの名前です。複数の VPC ネットワークを構成するには、各ネットワークの名前を指定する必要があります。

  3. cURL を使用して PATCH bucket リクエストで JSON API を呼び出します。

    curl -X PATCH --data-binary @JSON_FILE_NAME \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     "https://storage.googleapis.com/storage/v1/b?project=PROJECT_IDENTIFIER&projection=full"

    ここで

    • JSON_FILE_NAME は、前の手順で作成した JSON ファイルの名前です。
    • PROJECT_IDENTIFIER は、バケットが関連付けられているプロジェクトの ID または番号です。(例: my-project)です。

次のステップ

使ってみる

Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Cloud Storage のパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。

Cloud Storage を無料で試す