在現有值區中建立或更新 IP 篩選規則

本頁說明如何建立或更新現有 bucket 的bucket IP 篩選規則。

必要的角色

如要取得更新 bucket IP 篩選規則的必要權限,請要求管理員授予 bucket 的「Storage 管理員」(roles/storage.admin) 角色。這個角色具備更新 bucket IP 篩選規則所需的權限。

如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

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

您也可以透過自訂角色取得這些權限。您或許還可透過其他預先定義的角色取得這些權限。如要查看哪些角色與哪些權限相關聯,請參閱「Cloud Storage 的 IAM 角色」。

如需授予值區角色的操作說明,請參閱「設定及管理值區的身分與存取權管理政策」。

在現有值區中建立或更新 IP 篩選規則

控制台

  1. 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。

    前往「Buckets」(值區) 頁面

  2. 在 bucket 清單中,點選要更新的 bucket 名稱。

  3. 在「Bucket details」(值區詳細資料) 頁面上,按一下「Configuration」(設定) 分頁標籤。

  4. 在「權限」部分中,前往「IP 篩選」。然後按一下「編輯 IP 過濾設定」

  5. 在「IP 過濾」頁面上,按一下「設定」

  6. 在「設定 IP 過濾功能」疊加視窗中,視要指定的 IP 過濾設定而定,使用適當的導覽選單。完成每個部分的步驟後,按一下「繼續」即可前往下一個步驟。

公開 IP 位址

如要允許從公開 IP 位址存取,請按照下列步驟操作:

  1. 按一下「公用網際網路」

  2. 在隨即顯示的「Public internet」(公開網際網路) 窗格中,於「Allowed IP range(s)」(允許的 IP 範圍) 欄位中指定一或多個 IPv4 位址範圍或 IPv6 CIDR 範圍。例如 192.0.2.0/242001:db8::/32。如果指定無效項目,錯誤訊息會指出需要修正的項目。

虛擬私有雲網路

如要允許從虛擬私有雲網路存取,請按照下列步驟操作:

  1. 按一下「虛擬私有雲網路」。

  2. 在隨即顯示的「虛擬私有雲網路」窗格中,針對每個網路執行下列操作:

    1. 按一下「新增虛擬私有雲網路」
    2. 在「New VPC network」(新的虛擬私有雲網路) 區段中,指定下列資訊:
      • 在「Project ID」欄位中,輸入專案 ID。
      • 在「Network name」(網路名稱) 欄位中,輸入網路名稱。
      • 在「允許的 IP 範圍」欄位中,輸入一或多個 IPv4 或 IPv6 CIDR 範圍,例如 192.0.2.0/24、2001:db8::/32。如果指定無效項目,錯誤訊息會指出需要修正的項目。
    3. 按一下 [完成]

額外設定

如要允許其他機構的受信任服務代理程式和虛擬私有雲網路略過 IP 過濾設定,請按照下列步驟操作: Google Cloud

  1. 按一下「其他設定」

  2. 在隨即顯示的「其他設定」窗格中,執行下列操作:

  3. 在「服務專員存取權」Google Cloud 部分,選取下列其中一個單選按鈕:

    • 允許服務代理存取:啟用 Google Cloud 這項設定後,BigLake、儲存空間分析、Vertex AI 和 BigQuery 等服務在存取這個 bucket 時,會省略 IP 過濾驗證程序。

    • 拒絕服務代理存取權:強制執行服務代理的 IP 過濾規則。 Google Cloud

  4. 在「(Optional) Cross-organization VPC access」(選用) 跨組織虛擬私有雲存取權部分,執行下列其中一項操作:

    • 如要允許來自不同 Google Cloud 組織中特定虛擬私有雲網路的存取權,請按一下切換鈕,將其設為「允許」

    • 如要禁止從 Google Cloud 組織外部的虛擬私有雲網路存取資料,請按一下切換鈕,將其設為「拒絕」 (預設狀態)。

查看

如要查看 IP 過濾設定,請按照下列步驟操作:

  1. 在隨即顯示的「檢閱」窗格中,按一下「公開網際網路」或「虛擬私有雲網路」旁的 展開箭頭,即可檢閱指定的 IP 範圍或虛擬私有雲,並驗證「其他設定」設定。

  2. 如要修改設定,請按一下「返回」,返回上一個設定步驟。

  3. 檢查所有設定後,按一下「啟用」即可儲存 IP 篩選設定。

gcloud

  1. 確認您已安裝 Google Cloud CLI 526.0.0 以上版本:

    gcloud version | head -n1
    
  2. 如果您安裝的是舊版 gcloud CLI,請更新版本:

    gcloud components update --version=526.0.0
    
  3. 建立 JSON 檔案,定義傳入要求的規則。如需 bucket IP 過濾規則的結構範例和相關資訊,請參閱「Bucket IP 過濾設定」。

        {
          "mode":"MODE",
          "publicNetworkSource":{
              "allowedIpCidrRanges":[
                "RANGE_CIDR",
                "..."
              ]
          },
          "vpcNetworkSources":[
              {
                "network":"projects/PROJECT_ID/global/networks/NETWORK_NAME",
                "allowedIpCidrRanges":[
                    "RANGE_CIDR",
                    "..."
                ]
              },
              "..."
          ],
          "allowCrossOrgVpcs": ALLOW_CROSS_ORG_VPCS,
          "allowAllServiceAgentAccess": ALLOW_ALL_SERVICE_AGENT_ACCESS
        }
        

    其中:

    • MODE 是 bucket IP 過濾設定的模式。有效值為 EnabledDisabled。設為 Enabled 時,系統會將 IP 過濾規則套用至 bucket。系統會根據這些規則評估傳送至 bucket 的所有要求。如果設為 Disabled,所有傳入要求都能存取 bucket。

    • RANGE_CIDR 是允許存取 bucket 的公開網路 IPv4 或 IPv6 位址範圍。您可以輸入一或多個地址範圍做為清單。

    • PROJECT_ID 是虛擬私有雲 (VPC) 網路所在的專案 ID。如要設定多個虛擬私有雲網路,您需要指定每個網路所在的專案。

    • NETWORK_NAME 是允許存取值區的 VPC 網路名稱。如要設定多個虛擬私有雲網路,您必須為每個網路指定名稱。

    • ALLOW_CROSS_ORG_VPCS 是布林值,表示是否允許在 vpcNetworkSources 中定義的虛擬私有雲網路來自不同機構。這是選填欄位。如果設為 true,要求會允許跨組織虛擬私有雲網路。如果設為 false,要求會將虛擬私有雲網路限制為與儲存空間相同的機構。如未指定,則預設值為 false。只有在 vpcNetworkSources 不為空白時,這個欄位才會生效。

    • ALLOW_ALL_SERVICE_AGENT_ACCESS 是布林值,表示是否允許服務代理程式存取 bucket,無論 IP 篩選器設定為何。如果值為 true,其他 Google Cloud 服務可以使用服務代理存取 bucket,不必進行 IP 驗證。

  4. 如要更新 bucket IP 過濾規則,請在開發環境中執行 gcloud storage buckets update 指令:

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

    其中:

    • BUCKET_NAME 是值區的名稱。例如:my-bucket
    • IP_FILTER_CONFIG_FILE 是您建立的 JSON 檔案。

JSON API

  1. 安裝並初始化gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 建立包含 bucket 設定的 JSON 檔案,其中必須包含 bucket 的 nameipFilter 設定欄位。如需範例和如何建構 bucket IP 過濾規則的相關資訊,請參閱「 Bucket IP 過濾設定」。

    {
      "ipFilter":{
          "mode":"MODE",
          "publicNetworkSource":{
            "allowedIpCidrRanges":[
                "RANGE_CIDR",
                "..."
            ]
          },
          "vpcNetworkSources":[
            {
                "network":"projects/PROJECT_ID/global/networks/NETWORK_NAME",
                "allowedIpCidrRanges":[
                  "RANGE_CIDR",
                  "..."
                ]
            },
            "..."
          ],
          "allowCrossOrgVpcs": ALLOW_CROSS_ORG_VPCS,
          "allowAllServiceAgentAccess": ALLOW_ALL_SERVICE_AGENT_ACCESS
      }
    }

    其中:

    • MODE 是 IP 篩選器設定的狀態。有效值為 EnabledDisabled。設為 Enabled 時,系統會將 IP 篩選規則套用至 bucket,並根據這些規則評估 bucket 的所有傳入要求。設為 Disabled 時,所有傳入的要求都能存取 bucket 及其資料,不必經過任何評估。

    • RANGE_CIDR 是允許存取 bucket 的公開網路 IPv4 或 IPv6 位址範圍。您可以輸入一或多個地址範圍做為清單。

    • PROJECT_ID 是虛擬私有雲網路所在的專案 ID。如要設定多個虛擬私有雲網路,您必須指定每個網路所在的專案。

    • NETWORK_NAME 是允許存取值區的虛擬私有雲網路名稱。如要設定多個虛擬私有雲網路,您需要為每個網路指定名稱。

    • ALLOW_ALL_SERVICE_AGENT_ACCESS 是布林值,表示是否允許服務代理程式存取 bucket,無論 IP 篩選器設定為何。如果值為 true,其他 Google Cloud 服務可以使用服務代理存取 bucket,不必進行 IP 驗證。

    • ALLOW_CROSS_ORG_VPCS 是布林值,表示是否允許 vpcNetworkSources 清單中定義的虛擬私有雲網路來自不同機構。這是選填欄位。如果設為 true,要求會允許跨組織的虛擬私有雲網路。如果設為 false,要求會將虛擬私有雲網路限制為與儲存空間相同的機構。如未指定,則預設值為 false。只有在 vpcNetworkSources 不為空白時,這個欄位才會生效。

  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/BUCKET_NAME?project=PROJECT_ID"

    其中:

    • JSON_FILE_NAME 是您建立的 JSON 檔案名稱。
    • BUCKET_NAME 是值區名稱。
    • PROJECT_ID 是與值區建立關聯的專案 ID。例如:my-project

管理 Google Cloud 服務代理存取權

在 Bucket 上設定 IP 篩選規則後,如要更新服務代理程式存取權,請完成下列步驟:

控制台

  1. 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。

    前往「Buckets」(值區) 頁面

  2. 在 bucket 清單中,點選要更新的 bucket 名稱。

  3. 在「Bucket details」(值區詳細資料) 頁面上,按一下「Configuration」(設定) 分頁標籤。

  4. 在「權限」部分中,前往「IP 篩選」。然後按一下「編輯 IP 過濾設定」

    系統隨即會顯示「IP 篩選」頁面。

  5. 在「管理服務代理人存取權」 Google Cloud 部分,執行下列任一操作:

    • 如要允許服務專員存取,請完成下列步驟:

      1. 按一下「已停用」,將設定變更為「已啟用」

      2. 如要確認允許存取,請在「啟用」欄位中輸入 Enable

    • 如要拒絕服務專員存取權,請完成下列步驟:

      1. 按一下「已啟用」,將設定變更為「已停用」

      2. 如要確認拒絕存取,請在「停用」欄位中輸入 Disable

    系統會顯示通知訊息,確認變更。

gcloud

如要更新 bucket 的服務代理程式存取權,請使用 gcloud storage buckets update 指令,並將 allowAllServiceAgentAccess 欄位設為 true (允許存取) 或 false (拒絕存取)。如需詳細操作說明,請參閱「在現有 bucket 中建立或更新 IP 篩選規則」。

JSON API

如要更新服務代理程式存取權,可以使用 PATCH 要求更新 bucket 的 ipFilter 設定。將 allowAllServiceAgentAccess 欄位設為 true 即可允許存取,設為 false 則會拒絕存取。如需詳細操作說明,請參閱在現有值區中建立或更新 IP 過濾規則

管理跨組織虛擬私有雲存取權

在 bucket 上設定 IP 過濾規則後,如要更新跨組織虛擬私有雲存取權,請完成下列步驟:

控制台

  1. 在 Google Cloud 控制台,前往「Cloud Storage bucket」頁面。

    前往「Buckets」(值區) 頁面

  2. 在 bucket 清單中,點選要更新的 bucket 名稱。

  3. 在「Bucket details」(值區詳細資料) 頁面上,按一下「Configuration」(設定) 分頁標籤。

  4. 在「權限」部分中,前往「IP 篩選」。然後按一下「編輯 IP 過濾設定」

    系統隨即會顯示「IP 篩選」頁面。

  5. 在「管理跨組織虛擬私有雲存取權」部分,執行下列任一操作:

    • 如要允許跨組織虛擬私有雲存取權,請完成下列步驟:

      1. 按一下「已停用」,將設定變更為「已啟用」

      2. 如要確認允許存取,請在「啟用」欄位中輸入 Enable

    • 如要拒絕跨組織虛擬私有雲存取權,請完成下列步驟:

      1. 按一下「已啟用」,將設定變更為「已停用」

      2. 如要確認拒絕存取,請在「停用」欄位中輸入 Disable

    系統會顯示通知訊息,確認變更。

gcloud

如要更新 bucket 的跨組織虛擬私有雲存取權,請使用 gcloud storage buckets update 指令,並將 allowCrossOrgVpcs 欄位設為 true (允許存取) 或 false (拒絕存取)。如需詳細操作說明,請參閱「在現有 bucket 上建立或更新 IP 過濾規則」。

JSON API

如要更新跨組織虛擬私有雲存取權,可以使用 PATCH 要求更新 bucket 的 ipFilter 設定。將 allowCrossOrgVpcs 欄位設為 true 即可允許存取,設為 false 則會拒絕存取。如需詳細操作說明,請參閱在現有值區中建立或更新 IP 篩選規則

後續步驟

歡迎試用

如果您未曾使用過 Google Cloud,歡迎建立帳戶,親自體驗實際使用 Cloud Storage 平台的成效。新客戶還能獲得價值 $300 美元的免費抵免額,用於執行、測試及部署工作負載。

免費試用 Cloud Storage