侵入防御 モジュール(IDS / IPS)を設定して、ポリシーの動作を定義します。
モジュールの動作を設計し、APIを使用して実装する際には、侵入防御についてに記載されている背景情報とガイダンスを使用してください。
ポリシーオブジェクトには、 侵入防御 モジュールの設定に使用する2つのオブジェクトが含まれます。
  • IntrusionPreventionPolicyExtension:モジュールの状態を制御し (prevent、detect、またはoff)、適用された 侵入防御 ルールを識別し、モジュールに割り当てられているアプリケーションの種類を識別します。
  • PolicySettings:ポリシー設定には、推奨設定の適用、ネットワークエンジン設定、NSXセキュリティタグの使用など、モジュールのランタイム動作を制御する多くの 侵入防御関連の設定が含まれます。
これらのオブジェクトを作成してPolicyオブジェクトに追加した後、PoliciesApiクラスを使用してPolicyオブジェクトに基づいて既存のポリシーを変更します。
次のJSONはIntrusionPreventionPolicyExtensionオブジェクトのデータ構造を表しています:
{
    "state": "prevent",
    "moduleStatus": {...},
    "ruleIDs": [...],
    "applicationTypeIDs": [...]
}
moduleStatusプロパティは読み取り専用です。これは侵入防御モジュールのランタイムステータスを提供します。コンピュータステータスのレポートを参照してください。

一般的な手順 親トピック

侵入防御 モジュールを設定するには、次の手順を実行します。

手順

  1. IntrusionPreventionPolicyExtensionオブジェクトを作成し、プロパティを構成します。
  2. モジュールのランタイム設定を構成するためにPolicySettingsオブジェクトを作成します。
  3. ポリシーオブジェクトを作成し、IntrusionPreventionPolicyExtensionおよびPolicySettingsオブジェクトを追加します。
  4. PoliciesApiオブジェクトを使用して、Workload Securityのポリシーを追加または更新します。

次に進む前に

単一の侵入防御関連のポリシー設定のみを設定する必要がある場合は、単一のポリシーまたはデフォルトのポリシー設定を構成するを参照してください。
モジュールの状態を設定し、ルールを割り当てるためにIntrusionPreventionPolicyExtensionオブジェクトを作成します:
ip_policy_extension = api.IntrusionPreventionPolicyExtension()
ip_policy_extension.state = "prevent"
ip_policy_extension.rule_ids = rule_ids
Intrusion Prevention関連の設定を構成するためにPolicySettingsオブジェクトを作成します。ポリシー設定の詳細については、ポリシーとデフォルトポリシー設定の構成を参照してください。例えば、推奨スキャンで見つかったIPSルールを自動的に適用することができます。
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オブジェクトを使用して、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) パラメータは、変更する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 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レファレンスのポリシーの変更操作も参照してください。
ポリシーに対してIPSルールの追加、削除、または一覧表示のみが必要な場合は、PolicyIntrusionPreventionRuleAssignmentsApiクラスを使用してください。前の例では、IntrusionPreventionPolicyExtensionPolicy、およびPoliciesApiクラスを使用してIPSルールを追加していますが、これもPolicyIntrusionPreventionRuleAssignmentsApiクラスのみを使用して行うことができます。詳細については、APIレファレンスのポリシー侵入防御ルールの割り当てと推奨設定を参照してください。
API呼び出しの認証に関する情報については、Workload Securityで認証するを参照してください。

侵入防御 ルールを作成する 親トピック

一般に、 侵入防御 モジュールのルールを作成するには、次の手順を実行します。

手順

  1. IntrusionPreventionRuleオブジェクトを作成します。
  2. ルールのプロパティを設定します。プロパティの詳細は、IPSルールの設定に記載されています。
  3. IntrusionPreventionRulesApiオブジェクトを使用して、Workload Securityにルールを追加します。

次に進む前に

セキュリティログ監視ルールはIPSルールとは異なるプロパティを持っていますが、ルールの作成方法は似ています。基本的なセキュリティログ監視ルールの作成の例が参考になるかもしれません。
APIを使用して侵入防御ルールの設定オプションにアクセスすることはできません。これらのオプションを変更するには、 Workload Securityコンソールでルールのプロパティを開き、設定] タブを選択します。