檢視次數:
配置入侵防護模組 (IDS/IPS) 以定義其政策行為。
在設計模組行為並使用 API 實現時,請使用 關於入侵防護 中提供的背景資訊和指導。
政策物件包含兩個用於配置入侵防護模組的物件:
  • IntrusionPreventionPolicyExtension:控制模組狀態(防止、檢測或關閉),識別應用的入侵防護規則,並識別分配給模組的應用程式類型。
  • PolicySettings: 原則設定包括許多與入侵防護相關的設定,這些設定控制模組的執行時行為,例如建議掃描的應用、網路引擎設定以及 NSX 安全標籤的使用。
在您創建這些對象並將它們添加到Policy對象後,您可以使用PoliciesApi類根據Policy對象修改現有的策略。
以下 JSON 代表 IntrusionPreventionPolicyExtension 物件 的資料結構:
{
    "state": "prevent",
    "moduleStatus": {...},
    "ruleIDs": [...],
    "applicationTypeIDs": [...]
}
moduleStatus 屬性是唯讀的。它提供入侵防護模組的運行狀態。(請參閱 電腦防護狀態報告。)

一般步驟 上層主題

請按照以下步驟配置入侵防護模組:

步驟

  1. 建立一個 IntrusionPreventionPolicyExtension 物件並配置屬性。
  2. 創建一個 PolicySettings 對象來配置模組的運行時設置。
  3. 建立一個 Policy 物件並新增 IntrusionPreventionPolicyExtension 和 PolicySettings 物件。
  4. 使用 PoliciesApi 物件在 Server & Workload Security保護 上新增或更新政策。

接下來需執行的動作

秘訣
秘訣
如果您只需要設定單一入侵防護相關的策略設定,請參閱設定單一策略或預設策略設定
創建一個 IntrusionPreventionPolicyExtension 物件來設置模組狀態並指派規則:
ip_policy_extension = api.IntrusionPreventionPolicyExtension()
ip_policy_extension.state = "prevent"
ip_policy_extension.rule_ids = rule_ids
建立一個 PolicySettings 物件來配置與入侵防護相關的設定。(有關策略設定的詳細資訊,請參閱 配置單一策略或預設策略設定。)例如,您可以自動套用透過推薦掃描發現的入侵防護規則:
policy_settings = api.PolicySettings()
setting_value = api.SettingValue()
setting_value.value = "yes"
policy_settings.intrusion_prevention_setting_auto_apply_recommendations_enabled = setting_value
此時,入侵防護政策擴展和政策設置已配置完成。接下來,將它們添加到Policy對象中。然後,使用PoliciesApi對象修改Server & Workload Security保護上的政策。
policy = api.Policy()
policy.IntrusionPrevention = ip_policy_extension
policy.policy_settings = policy_settings

policies_api = api.PoliciesApi(api.ApiClient(configuration))
modified_policy = policies_api.modify_policy(policy_id, policy, api_version)
秘訣
秘訣
modifyPolicypolicy_id(或 policyID)參數標識要在 Server & Workload Security保護 上修改的實際政策。此政策根據用作 policy 參數的政策對象進行修改。未設置的 policy 參數的任何屬性在實際政策上保持不變。

範例 上層主題

以下範例程式碼會建立一個 PolicySettings 物件並設定模組狀態、指派規則,並將 intrusionPreventionSettingAutoApplyRecommendationsEnables 屬性的值設置為使入侵防護自動應用透過推薦掃描找到的規則。該物件會被新增到用於修改政策的 Policy 物件中。
# Run in prevent mode
ip_policy_extension = api.IntrusionPreventionPolicyExtension()
ip_policy_extension.state = "prevent"

# Assign rules
ip_policy_extension.rule_ids = rule_ids

# Add to a policy
policy = api.Policy()
policy.IntrusionPrevention = ip_policy_extension

# Configure the setting
policy_settings = api.PolicySettings()
setting_value = api.SettingValue()
setting_value.value = "yes"
policy_settings.intrusion_prevention_setting_auto_apply_recommendations_enabled = setting_value

# Add the setting to a policy
policy.policy_settings = policy_settings

# Modify the policy on Server & Workload Security保護
policies_api = api.PoliciesApi(api.ApiClient(configuration))
modified_policy = policies_api.modify_policy(policy_id, policy, api_version)

return modified_policy.id
另請參閱 API 參考中的 修改政策 操作。
如果您只需要為政策新增、移除或列出入侵防護規則,請使用PolicyIntrusionPreventionRuleAssignmentsApi類別。前面的範例使用了IntrusionPreventionPolicyExtensionPolicyPoliciesApi類別來新增入侵防護規則,但這也可以僅使用PolicyIntrusionPreventionRuleAssignmentsApi類別來完成。欲了解詳細資訊,請參閱API參考中的政策入侵防護規則分配和建議
如需有關驗證 API 呼叫的資訊,請參閱 使用 Server & Workload Security保護 驗證

建立入侵防護規則 上層主題

通常,若要為入侵防護模組建立規則,您需要執行以下步驟:

步驟

  1. 建立一個IntrusionPreventionRule物件。
  2. 設定規則屬性。屬性描述在配置入侵防護規則
  3. 使用IntrusionPreventionRulesApi物件將規則新增至Server & Workload Security保護

接下來需執行的動作

注意
注意
儘管日誌檢查規則與入侵防護規則具有不同的屬性,但創建規則的方式是相似的。您可能會發現創建基本的日誌檢查規則範例很有幫助。
秘訣
秘訣
入侵防護規則的配置選項無法使用 API 存取。要更改這些選項,請在 Server & Workload Security保護 控制台中開啟規則屬性並點選配置標籤。