本頁面說明如何在Google Cloud 控制台中上傳含有測試資料的 YAML 檔案,藉此測試 Security Health Analytics 自訂模組。
事前準備
如要測試自訂模組,必須符合下列先決條件:
- 適用於使用 Security Health Analytics 自訂模組的所有一般先決條件。如需完整先決條件清單,請參閱「使用 Security Health Analytics 的自訂模組」。
- 您必須為使用者帳戶授予一或多個身分與存取權管理 (IAM) 角色,才能使用 Security Command Center 和自訂模組,並具備
securitycenter.securityhealthanalyticscustommodules.test
權限。如要進一步瞭解使用自訂模組所需的權限和角色,請參閱「必要的身分與存取權管理權限」。 - 測試自訂模組的 API 呼叫會受到配額限制。詳情請參閱「自訂模組配額」。
在 YAML 檔案中建立測試資源
如要測試自訂模組,請在 YAML 檔案中定義虛假資源定義、虛假政策定義,或同時定義這兩者。
定義不對應至實際資源或政策例項,但定義必須符合自訂模組中指定的資源或政策類型結構定義。
在測試定義中,您只需要指定自訂模組評估的屬性。自訂模組未參照的資源屬性,您不需要加入。
如要在自訂模組中測試 CEL 運算式,請在測試檔案中指定屬性值,讓 CEL 運算式解析為 true
。
測試資料格式
檔案的第一行必須是 testData:
,後面接著一或多個 - asset
定義。
testData: - asset: resource: ARBITRARY_ASSET_NAME_1 assetType: RESOURCE_TYPE_1 resourceData: PROPERTIES_TO_TEST_1: PROPERTY_VALUE_1 SUB_PROPERTY: SUB_PROPERTY_VALUE PROPERTIES_TO_TEST_2: PROPERTY_VALUE_2 - asset: resource: ARBITRARY_ASSET_NAME_2 assetType: RESOURCE_TYPE_2 iamPolicyData: PROPERTIES_TO_TEST_3: PROPERTY_VALUE_3 PROPERTIES_TO_TEST_4: PROPERTY_VALUE_4
更改下列內容:
ARBITRARY_ASSET_NAME_N
:任意值,測試成功時會顯示在測試結果中。RESOURCE_TYPE_N
:自訂模組檢查的資產或資源類型,指定為 API 服務端點的網域名稱和資源名稱,例如cloudkms.googleapis.com/CryptoKey
。PROPERTIES_TO_TEST_N
:自訂模組偵測邏輯中使用的屬性,可觸發發現項目。PROPERTY_VALUE_N
:觸發發現項目的屬性值。SUB_PROPERTY
:目標資源在其資源定義中參照的子屬性或其他資源的屬性。
測試定義範例
本節包含測試資源定義和測試政策定義的範例。雖然這兩個範例是在不同檔案中定義,但資源和政策的 asset
定義可以合併在單一 testData
檔案中。
資源定義範例
以下測試資源定義範例會測試自訂模組,檢查 CryptoKey
資源的 rotationPeriod
屬性是否超過 2592000
秒 (30 天)。定義中的其他屬性不會用於自訂模組,但仍符合資源的結構定義。如要查看本範例測試的自訂模組完整定義,請參閱「自訂模組定義範例」。
testData: - asset: resource: THE CRYPTOKEY TEST WAS SUCCESSFUL! assetType: cloudkms.googleapis.com/CryptoKey resourceData: nextRotationTime: '2020-02-05T12:00:55.192645Z' primary: state: 'ENABLED' purpose: 'ENCRYPT_DECRYPT' rotationPeriod: '2592001s'
政策定義範例
以下是 IAM 政策的測試定義範例:
testData: - asset: resource: //cloudresourcemanager.googleapis.com/projects/fake-project assetType: cloudresourcemanager.googleapis.com/Project iamPolicyData: bindings: - role: "roles/viewer" members: - "serviceAccount:fake-service-account@compute-system.iam.gserviceaccount.com" - "user:fake-email-account"
測試自訂模組
您可以在Google Cloud 控制台中測試新的或現有的自訂模組。
如要測試自訂模組,請按照下列步驟操作:
前往 Security Command Center 設定中的「Modules」(模組) 頁面。
開啟或建立要測試的自訂模組:
- 如要建立新的自訂模組,請按一下「建立模組」,然後按照「建立自訂模組」一文的說明操作。
- 如要開啟現有的自訂模組,請在要測試的模組列右側,按一下「動作」下方的「編輯」圖示 (edit)。
選取「測試模組」分頁標籤。
在「Upload the YAML file」(上傳 YAML 檔案) 下方,按一下「Browse」(瀏覽),上傳含有範例資產資料的檔案。上傳 YAML 檔案後,系統會立即執行測試。
在「測試結果預覽」下方,查看測試結果。
- 如果 YAML 檔案中有語法或其他錯誤,瀏覽器頁面底部附近會顯示浮動錯誤訊息。
如果測試成功,測試會傳回下列資訊:
- 自訂模組的顯示名稱。
- 您在測試資料檔案的
resource
屬性中指定的任意名稱。 - 自訂模組的建立位置 (機構、資料夾或專案)。
測試結果不會儲存或寫入 Security Command Center。
後續步驟
- 如要使用自訂模組,請參閱「使用 Security Health Analytics 自訂模組」一文。
- 如要在 Google Cloud 控制台中使用發現項目,請參閱「使用發現項目」一文。