階層式防火牆政策

階層式防火牆政策可讓您在整個機構中建立及強制執行一致的防火牆政策。您可以將階層式防火牆政策指派給整個機構或個別資料夾。這類政策的規則可明確拒絕或允許連線,與虛擬私有雲 (VPC) 防火牆規則相同。此外,階層式防火牆政策規則可透過 goto_next 動作,將評估作業委派給較低層級的政策或虛擬私有雲網路防火牆規則。

較低層級的規則無法覆寫資源階層中較高位置的規則。機構管理員可以在單一位置管理重要的防火牆規則。

規格

  • 階層式防火牆政策是在機構和資料夾層級建立,建立政策後,系統不會自動將規則套用至機構或資料夾。
  • 建立政策後,即可套用至 (連結至) 組織中的任何資源。
  • 階層式防火牆政策是防火牆規則的容器,將政策與機構或資料夾建立關聯後,系統會立即套用所有規則。您可以為資源交換政策,這會以原子方式交換套用至該資源下虛擬機器 (VM) 執行個體的所有防火牆規則。
  • 規則評估會根據資源階層進行階層式評估。系統會先評估與機構相關的所有規則,再評估第一層資料夾的規則。
  • 階層式防火牆政策規則新增了 goto_next 動作,可用於將連線評估作業委派給階層的下層。
  • 階層式防火牆政策規則可使用網路的目標資源和 VM 的目標服務帳戶,指定特定虛擬私有雲網路和 VM。這樣一來,您就能為 VM 群組建立例外狀況。階層式防火牆政策規則不支援依執行個體標記指定目標。
  • 階層式防火牆政策不支援使用遠端直接記憶體存取 (RDMA) 網路設定檔的虛擬私有雲網路,例如 RDMA_ROCE_POLICY 政策類型。詳情請參閱「適用於 RoCE 虛擬私有雲網路的 Cloud NGFW」。
  • 階層式防火牆政策規則可包含 IPv4 或 IPv6 範圍,但不能同時包含兩者。
  • 為協助進行法規遵循和偵錯,您可以透過虛擬私有雲網路詳細資料頁面和 VM 執行個體的網路介面詳細資料頁面,稽核套用至 VM 執行個體的防火牆規則。

資源階層結構

您必須分開建立及套用防火牆政策。您可以在資源階層的機構或資料夾層級建立及套用防火牆政策。防火牆政策規則可以封鎖連線、允許連線,或將防火牆規則評估作業延後至較低層級的資料夾,或虛擬私有雲網路中定義的虛擬私有雲防火牆規則。

  • 機構是資源階層中的頂層資源,您可以在其中建立或關聯階層式防火牆政策。 Google Cloud 機構中的所有資料夾和 VPC 網路都會繼承這項政策。

  • 資料夾是 Google Cloud 資源階層中的中層資源,介於機構和專案之間,您可以在其中建立或指派階層式防火牆政策。資料夾中的所有資料夾和虛擬私有雲網路,都會繼承相關聯的政策。

  • 專案位於資料夾或機構底下。您可以在機構內的資源之間移動專案。專案包含虛擬私有雲網路。階層式防火牆政策無法指派給專案,只能指派給機構或資料夾。

  • 虛擬私有雲網路是隔離內部 IP 空間通訊的 Google Cloud 分割區。這個層級會指定及套用路徑、網路防火牆政策和傳統虛擬私有雲防火牆規則。階層式防火牆政策規則可以覆寫連線評估,或將連線評估委派給全域網路防火牆政策和規則。

根據預設,所有階層式防火牆政策規則都會套用至與政策相關聯的機構或資料夾中,所有專案的所有 VM。不過,您可以指定目標網路或目標服務帳戶,限制哪些 VM 適用特定規則。

下圖顯示現在可套用防火牆規則的階層層級。黃色方塊代表包含防火牆規則的階層式防火牆政策,白色方塊則代表虛擬私有雲防火牆規則。

階層式防火牆政策包含機構和資料夾層級的規則 (黃色方塊),以及虛擬私有雲網路層級的虛擬私有雲防火牆規則
含有規則的階層式防火牆政策 (黃色方塊) 會在機構和資料夾層級套用。虛擬私有雲防火牆規則會在虛擬私有雲網路層級套用。

階層式防火牆政策詳細資料

階層式防火牆政策規則是在防火牆政策資源中定義,該資源是防火牆規則的容器。防火牆政策中定義的規則,必須在政策與資源 (機構或資料夾) 建立關聯後,才會強制執行。

單一政策可與多項資源建立關聯。如果您修改政策中的規則,該規則變更會套用至所有相關聯的資源。

一項資源只能關聯一項防火牆政策。階層式防火牆政策規則和虛擬私有雲防火牆規則會依明確定義的順序評估。

未與任何資源建立關聯的防火牆政策,就是未建立關聯的階層式防火牆政策。

政策名稱

建立新政策時, Google Cloud 會自動產生政策 ID。此外,您也可以為政策指定簡稱。使用 gcloud 介面更新現有政策時,您可以參照系統產生的 ID,或是簡稱和組織 ID 的組合。使用 API 更新政策時,您必須提供系統產生的 ID。

階層式防火牆政策規則詳細資料

階層式防火牆政策規則的運作方式與防火牆政策規則和虛擬私有雲防火牆規則相同,但有幾項差異:

  • 階層式防火牆政策支援目標網路,但全域網路防火牆政策不支援。您可以指定目標網路,將防火牆政策規則限制為僅適用於指定網路中的 VM。在規則中指定虛擬私有雲網路,即可控管哪些網路會設定該規則。

    搭配 goto_next 或 allow 指定目標網路,即可在您想定義限制性政策時,為特定網路建立例外狀況。

  • 階層式防火牆政策是機構層級的資源,而全域網路防火牆政策是專案層級的資源。

  • 階層式防火牆政策中的規則支援安全標記鍵,做為來源安全標記或目標安全標記。詳情請參閱防火牆的安全標記。

預先定義的規則

建立階層式防火牆政策時,Cloud Next Generation Firewall (Cloud NGFW) 會將優先順序最低的預先定義規則新增至政策。這些規則會套用至不符合政策中明確定義規則的任何連線,導致這類連線傳遞至較低層級的政策或網路規則。

如要瞭解各種預先定義的規則及其特性,請參閱「防火牆政策的預先定義規則」。

Identity and Access Management (IAM) 角色

IAM 角色可控管下列與階層式防火牆政策相關的動作:

  • 在特定資源建立政策
  • 將政策與特定資源建立關聯
  • 修改現有政策
  • 查看特定網路或 VM 的有效防火牆規則

下表說明每個步驟所需的角色:

能力 必要角色
建立新的階層式防火牆政策 政策所在資源的組織防火牆政策管理員角色 (roles/compute.orgFirewallPolicyAdmin)
將政策與資源建立關聯 目標資源的機構安全資源管理員角色 (roles/compute.orgSecurityResourceAdmin),以及政策所在資源或政策本身的機構防火牆政策管理員角色 (roles/compute.orgFirewallPolicyAdmin) 或機構防火牆政策使用者角色 (roles/compute.orgFirewallPolicyUser)
新增、更新或刪除政策防火牆規則,藉此修改政策 機構防火牆政策管理員角色 (roles/compute.orgFirewallPolicyAdmin) 在政策所在的資源或政策本身
刪除政策 機構防火牆政策管理員角色 (roles/compute.orgFirewallPolicyAdmin) 在政策所在的資源或政策本身
查看虛擬私有雲網路的有效防火牆規則 網路的下列任一角色:
Compute 網路管理員角色 (roles/compute.networkAdmin)
Compute 網路使用者角色 (roles/compute.networkUser)
Compute 網路檢視者角色 (roles/compute.networkViewer)
Compute 安全管理員角色 (roles/compute.securityAdmin)
Compute 檢視者角色 (roles/compute.viewer)
查看網路中 VM 的有效防火牆規則 虛擬機的下列任一角色:
Compute 執行個體管理員角色 (roles/compute.instanceAdmin)
執行個體群組管理員服務代理程式角色 (roles/compute.instanceGroupManagerServiceAgent)
Compute 安全管理員角色 (roles/compute.securityAdmin)
Compute 檢視者角色 (roles/compute.viewer)

下列角色與階層式防火牆政策相關。

角色名稱 說明
機構防火牆政策管理員角色 (roles/compute.orgFirewallPolicyAdmin) 可授予資源或個別政策的權限。若在資源層級授予,使用者就能建立、更新及刪除階層式防火牆政策及其規則。如果是在個別政策中授予,使用者就能更新政策規則,但無法建立或刪除政策。如果使用者同時擁有該資源的 compute.orgSecurityResourceAdmin 角色,這個角色也允許使用者將政策與資源建立關聯。
機構安全資源管理員角色 (roles/compute.orgSecurityResourceAdmin) 在機構層級或資料夾中授予,可讓資料夾層級管理員將政策與該資源建立關聯。管理員也必須在擁有政策的資源或政策本身中,具備 compute.orgFirewallPolicyUser 或 compute.orgFirewallPolicyAdmin 角色,才能使用政策。
機構防火牆政策使用者角色 (roles/compute.orgFirewallPolicyUser) 在資源或個別政策中授予,可讓管理員使用與資源相關聯的個別政策或政策。使用者也必須在目標資源上擁有 compute.orgSecurityResourceAdmin 角色,才能將政策與該資源建立關聯。
Compute 安全管理員角色 (roles/compute.securityAdmin)

Compute 檢視者角色 (roles/compute.viewer)

Compute 網路使用者角色 (roles/compute.networkUser)

Compute 網路檢視者角色 (roles/compute.networkViewer)
允許使用者查看套用至網路或執行個體的防火牆規則。
包含網路的 compute.networks.getEffectiveFirewalls 權限和執行個體的 compute.instances.getEffectiveFirewalls 權限。

在下列範例中,Joe 可以在 policies 資料夾中建立、修改及刪除任何階層式防火牆政策,但由於他在任何資料夾中都沒有 orgSecurityResourceAdmin 角色,因此無法將階層式防火牆政策附加至資料夾。

不過,由於杰明已授予美珠使用 policy-1 的權限,因此美珠可以列出該階層式防火牆政策,並將其與 dev-projects 資料夾或任何子項建立關聯。orgFirewallPolicyUser 角色不會授予將政策與任何資料夾建立關聯的權限;使用者也必須在目標資料夾中擁有 orgSecurityResourceAdmin 角色。

policy-1 example
policy-1 範例

管理階層式防火牆政策資源

由於階層式防火牆政策只會定義一組防火牆規則,不會定義套用規則的位置,因此您可以在階層中與套用規則的資源不同的位置建立這些資源。這樣一來,您就能將單一階層式防火牆政策資源與機構中的多個資料夾建立關聯。

在下列範例中,policy-1 會套用至 dev-projects 和 corp-projects 資料夾,因此這些資料夾中的所有專案都會強制執行政策。

政策位置和關聯
政策位置和關聯

修改政策規則

您可以在政策中新增、移除及修改規則。每項變更都必須個別完成,政策中沒有批次更新規則的機制。變更會大致按照指令的執行順序套用,但無法保證。

如果您要大幅變更階層式防火牆政策,並確保這些變更會同時套用,可以將政策複製到臨時政策,然後將臨時政策指派給相同資源。接著,您可以對原始廣告素材進行變更,然後將原始廣告素材重新指派給資源。如需操作步驟,請參閱「將規則從一項政策複製到另一項政策」。

在下列範例中,policy-1 會附加至 dev-projects 資料夾,且您想要進行多項變更,並以不可分割的方式套用。建立名為 scratch-policy 的新政策,然後將 policy-1 中的所有現有規則複製到 scratch-policy 進行編輯。編輯完成後,請將所有規則從 scratch-policy 複製回 policy-1。

修改政策
修改政策

移動政策

階層式防火牆政策與專案一樣,都是資料夾或機構資源的子項。隨著資料夾架構演變,您可能需要將階層式防火牆政策移至新資料夾,例如在刪除資料夾之前。如果刪除資料夾,系統也會刪除該資料夾擁有的政策。

下圖說明在資源之間移動政策關聯,或評估政策中的規則。

移動政策
移動政策

將階層式防火牆政策與資料夾建立關聯

除非階層式防火牆政策與機構或資料夾建立關聯,否則不會強制執行。建立關聯後,這項政策會套用至該機構或資料夾下所有網路中的所有 VM。

建立政策關聯
建立政策關聯

資源階層結構異動

資源階層的變更可能需要一段時間才會全面套用到系統。建議您避免同時更新階層式防火牆政策附件和資源階層,因為網路可能不會立即沿用階層中新位置定義的階層式防火牆政策。

移動政策
移動政策

舉例來說,假設您要將 dept-A 資料夾從 dev-projects 資料夾移至 eng-projects 資料夾,並將 policy-1 的關聯從 dev-projects 改為 eng-projects,請務必不要同時取消 policy-1 與 dev-projects 的關聯。如果 dev-projects 資料夾在更新所有虛擬私有雲網路的祖先項目之前,失去階層式防火牆政策關聯,這些虛擬私有雲網路在短時間內將不會受到 policy-1 保護。

搭配 Shared VPC 使用階層式防火牆政策

在共用虛擬私有雲情境中,連線至主專案網路的 VM 介面會受主專案的階層式防火牆政策規則控管,而非服務專案。

共用虛擬私有雲中的 VM
Shared VPC 中的 VM

即使服務專案與主專案位於不同資料夾,共用網路中的 VM 介面仍會沿用主專案資料夾規則。

服務專案 VM 會沿用主專案的規則
服務專案 VM 會沿用主機專案的規則

搭配虛擬私有雲網路對等互連使用階層式防火牆政策

在 VPC 網路對等互連情境中,與每個 VPC 網路相關聯的 VM 介面,會繼承各自 VPC 網路階層中的政策。以下是虛擬私有雲網路對等互連範例,其中對等互連的虛擬私有雲網路屬於不同機構。

VM 會繼承各自網路的設定
VM 會繼承各自網路的設定

後續步驟