服務範圍的模擬測試模式

使用 VPC Service Controls 時,建立或修改服務範圍後,可能難以判斷對環境的影響。透過模擬測試模式,您可以進一步瞭解在現有環境中啟用 VPC Service Controls 和變更範圍的效果。

在模擬測試模式下,系統不會拒絕違反範圍政策的要求,只會記錄這些要求。您可以使用試執行模式測試周邊設定,並監控服務用量,不必禁止存取資源。常見用途包括:

  • 判斷現有服務範圍的變更會造成哪些影響。

  • 預覽新服務範圍的影響。

  • 監控來自服務範圍外的受保護服務要求。舉例來說,您可以查看特定服務的要求來源,或找出機構中非預期的服務用量。

  • 在開發環境中,建立與實際工作環境類似的周邊架構。這樣一來,您就能在將變更推送至正式環境前,找出並解決服務周邊可能導致的任何問題。

服務範圍只能以試營運模式存在。您也可以使用強制執行和模擬執行模式的混合模式,設定服務周邊。

模擬測試模式的優點

您可以使用模擬執行模式建立新的服務安全防護範圍,或變更多個現有安全防護範圍,且不會影響現有環境。系統不會封鎖違反新範圍設定的要求。您也可以瞭解在並非所有使用的服務都與 VPC Service Controls 整合的環境中,範圍的影響。

您可以分析虛擬私有雲服務控制項記錄中的拒絕項目,變更設定來修正潛在問題,然後強制執行新的安全狀態。

如果無法解決周邊裝置設定問題,您可以選擇保留周邊裝置的模擬執行設定,並監控記錄檔中是否有非預期的拒絕存取要求,這可能表示有人嘗試外洩資料。不過,系統不會拒絕對服務範圍提出的要求。

模擬測試模式概念

模擬測試模式會以第二個評估階段的形式,運作周邊設定。根據預設,所有服務範圍的強制執行模式設定都會沿用至試執行模式設定,且可修改或刪除設定,不會影響服務範圍的運作。

由於模擬測試模式會沿用強制執行模式的設定,因此每個步驟的兩種設定都必須有效。具體來說,專案只能在強制執行的設定中納入一個服務範圍,在模擬測試設定中納入一個服務範圍。因此,跨多個安全範圍的變更 (例如在安全範圍之間移動專案),必須依正確順序進行

只有在符合下列兩項條件時,模擬測試模式才會記錄要求:

  • 要求尚未遭外圍強制執行的設定拒絕。

  • 要求違反範圍的模擬測試設定。

舉例來說,如果相同的試執行和強制模式設定限制了 Cloud Storage 值區,強制模式就會封鎖並記錄對 Cloud Storage 值區的任何要求。模擬測試模式只會記錄違規情形的差異, 與強制執行模式相比。

在試營運模式政策檢查的稽核記錄中,稽核記錄中的 metadata.dryRun欄位值會設為 True。詳情請參閱稽核記錄內容

您也可以建立含試營運設定的邊界。這項功能可讓您模擬環境中新強制執行的範圍所造成的影響。

如要評估服務範圍的試營運設定,請將服務範圍設定中的 useExplicitDryRunSpec 欄位設為 True。詳情請參閱 accessPolicies.servicePerimeters

政策語意

下一節將說明強制執行模式和模擬執行模式之間的政策關係,以及強制執行模式的解決順序。

唯一成員限制

Google Cloud 專案只能納入一項強制執行的設定和一項模擬測試設定。不過,強制執行和模擬測試設定不一定要適用於相同周邊。這樣一來,您就能測試將專案從一個範圍移至另一個範圍的影響,而不影響目前套用至專案的安全防護措施。

範例

專案 corp-storage 目前受到 PA 周邊防護範圍的強制設定保護。您想測試將 corp-storage 移至 PB 周邊防護範圍的影響。

尚未修改 PA 的模擬測試設定。由於模擬測試設定未經修改,因此會繼承強制執行的設定 corp-storage

如要測試影響,請先從 PA 的模擬測試設定中移除 corp-storage,然後將專案新增至 PB 的模擬測試設定。您必須先從 PA 的模擬測試設定中移除 corp-storage,因為專案一次只能存在於一項模擬測試設定中。

確認從 PA 遷移至 PB 不會對安全防護機制造成負面影響後,您決定強制執行變更。corp-storage

您可以透過下列兩種方式,強制對 PA 和 PB 邊界套用變更:

  • 您可以手動移除 PA 強制執行的設定,然後將專案新增至 PB 強制執行的設定。corp-storage由於 corp-storage 一次只能處於單一強制執行的設定中,因此您必須依序執行這些步驟。

    -或是-

  • 您可以使用gcloud 指令列工具Access Context Manager API,強制執行所有模擬執行設定。這項作業會套用至邊界的所有已修改模擬執行設定,因此請與貴機構中修改邊界模擬執行設定的所有人協調作業。由於 PA 的試營運設定已排除 corp-storage,因此不需要採取其他步驟。

系統會先執行範圍的強制設定

只有在安全防護範圍的強制執行設定允許要求,但模擬測試設定拒絕要求時,系統才會將要求記錄為模擬測試政策違規事項。如果強制執行的設定會拒絕要求,但模擬測試設定會允許,系統就不會記錄這類要求。

存取層級沒有對應的模擬測試模式

您可以為服務範圍建立模擬測試設定,但存取層級沒有模擬測試設定。在實務上,這表示如要測試存取層級變更對模擬測試設定的影響,您必須:

  1. 建立存取層級,反映您要對現有存取層級進行的變更。

  2. 將新的存取層級套用至周邊裝置的模擬測試設定。

模擬測試模式不會對安全性造成負面影響

變更範圍的模擬執行設定 (例如在範圍中新增專案或存取層級,或是變更受保護的服務,或範圍內網路可存取的服務),不會影響範圍的實際強制執行作業。

舉例來說,假設您有一個屬於服務範圍 PA 的專案。如果將該專案新增至另一個範圍的試營運設定,專案實際套用的安全性不會變更。專案會繼續受到範圍 PA 的強制設定保護,這也是預期行為。

模擬測試動作和設定狀態

使用模擬測試功能,您可以:

  • 只使用模擬測試設定建立範圍

  • 更新現有安全防護範圍的模擬測試設定

  • 將新專案移至現有安全防護範圍

  • 將專案從一個範圍移至另一個範圍

  • 刪除周邊裝置的模擬測試設定

根據在試營運模式中採取的動作,安全範圍可能處於下列其中一種設定狀態:

沿用強制執行的設定:強制執行的安全防護範圍預設狀態。在此狀態下,對安全範圍強制執行的設定所做的任何變更,也會套用至模擬執行設定。

已修改:已查看或變更周邊裝置的模擬測試設定,然後儲存。在此狀態下,系統不會將邊界強制執行的設定變更套用至模擬測試設定。

新:服務範圍只有模擬測試設定。即使模擬測試設定有所變更,只要這個安全防護範圍沒有強制執行的設定,狀態仍會維持「新增」

已刪除:已刪除服務範圍的模擬測試設定。在您為周邊裝置建立新的模擬測試設定或復原動作前,這個狀態會維持不變。在此狀態下,系統不會將邊界強制執行的設定變更套用至模擬測試設定。

模擬測試模式的限制

模擬執行模式僅適用於安全範圍。這項功能無法協助您瞭解限制 Google Cloud API 存取權對受限或私有 VIP 的影響。建議您先確認要使用的所有服務都可透過受限制的 VIP 存取,再設定 restricted.googleapis.com 網域。

如果您不確定現有環境中使用的 API 是否支援受限 VIP,建議使用私人 VIP。您仍可對支援的服務強制執行安全範圍。不過,如果您使用私人 VIP,網路中的實體就能存取不安全的服務 (VPC Service Controls 不支援的服務),例如 Gmail 和雲端硬碟的消費者版本。由於私人 VIP 允許 VPC Service Controls 不支援的服務,因此網路中遭入侵的程式碼、惡意軟體或惡意使用者可能會使用這些不安全的服務竊取資料。

後續步驟