使用 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
,因此不需要採取其他步驟。
系統會先執行範圍的強制設定
只有在安全防護範圍的強制執行設定允許要求,但模擬測試設定拒絕要求時,系統才會將要求記錄為模擬測試政策違規事項。如果強制執行的設定會拒絕要求,但模擬測試設定會允許,系統就不會記錄這類要求。
存取層級沒有對應的模擬測試模式
您可以為服務範圍建立模擬測試設定,但存取層級沒有模擬測試設定。在實務上,這表示如要測試存取層級變更對模擬測試設定的影響,您必須:
建立存取層級,反映您要對現有存取層級進行的變更。
將新的存取層級套用至周邊裝置的模擬測試設定。
模擬測試模式不會對安全性造成負面影響
變更範圍的模擬執行設定 (例如在範圍中新增專案或存取層級,或是變更受保護的服務,或範圍內網路可存取的服務),不會影響範圍的實際強制執行作業。
舉例來說,假設您有一個屬於服務範圍 PA 的專案。如果將該專案新增至另一個範圍的試營運設定,專案實際套用的安全性不會變更。專案會繼續受到範圍 PA 的強制設定保護,這也是預期行為。
模擬測試動作和設定狀態
使用模擬測試功能,您可以:
只使用模擬測試設定建立範圍
更新現有安全防護範圍的模擬測試設定
將新專案移至現有安全防護範圍
將專案從一個範圍移至另一個範圍
刪除周邊裝置的模擬測試設定
根據在試營運模式中採取的動作,安全範圍可能處於下列其中一種設定狀態:
沿用強制執行的設定:強制執行的安全防護範圍預設狀態。在此狀態下,對安全範圍強制執行的設定所做的任何變更,也會套用至模擬執行設定。
已修改:已查看或變更周邊裝置的模擬測試設定,然後儲存。在此狀態下,系統不會將邊界強制執行的設定變更套用至模擬測試設定。
新:服務範圍只有模擬測試設定。即使模擬測試設定有所變更,只要這個安全防護範圍沒有強制執行的設定,狀態仍會維持「新增」。
已刪除:已刪除服務範圍的模擬測試設定。在您為周邊裝置建立新的模擬測試設定或復原動作前,這個狀態會維持不變。在此狀態下,系統不會將邊界強制執行的設定變更套用至模擬測試設定。
模擬測試模式的限制
模擬執行模式僅適用於安全範圍。這項功能無法協助您瞭解限制 Google Cloud API 存取權對受限或私有 VIP 的影響。建議您先確認要使用的所有服務都可透過受限制的 VIP 存取,再設定 restricted.googleapis.com
網域。
如果您不確定現有環境中使用的 API 是否支援受限 VIP,建議使用私人 VIP。您仍可對支援的服務強制執行安全範圍。不過,如果您使用私人 VIP,網路中的實體就能存取不安全的服務 (VPC Service Controls 不支援的服務),例如 Gmail 和雲端硬碟的消費者版本。由於私人 VIP 允許 VPC Service Controls 不支援的服務,因此網路中遭入侵的程式碼、惡意軟體或惡意使用者可能會使用這些不安全的服務竊取資料。