DFW-Regeln können sowohl über die Benutzeroberfläche als auch über die API erstellt, aktualisiert und gelöscht werden.

Sicherheitsadministratoren müssen die Umsetzungszeit eines Sicherheitsrichtlinienvorgangs ermitteln. Die Umsetzungszeit ist die Zeit, die für die Umsetzung der Sicherheitsrichtlinie/-regel auf den Transportknoten erforderlich ist. Jeder Vorgang zum Erstellen/Aktualisieren/Löschen der Sicherheitsrichtlinie/-regel wird je nachdem, wo die Regeln angewendet werden, auf den Transportknoten realisiert.

Regelrealisierungsstatus auf der Benutzeroberfläche

Sie können den Regelrealisierungsstatus für DFW- und Gateway-Firewall-Richtlinien sehen, indem Sie zu Sicherheit > Verteilte Firewall oder Sicherheit Gateway-Firewall navigieren und den von den Transportknoten gemeldeten Regelrealisierungsstatus überprüfen.

Es gibt vier mögliche Werte für den Regelrealisierungsstatus:
  • Erfolgreich
  • Fehler
  • Wird durchgeführt
  • Unbekannt

Regelrealisierungsstatus über APIs

Wenn die Regel an den entsprechenden Knoten erstellt und erzwungen wurde, kann der Realisierungsstatus mit den folgenden Richtlinienmanager-APIs überprüft werden.

In NSX 4.1.1 gibt es zwei neue Felder:
  • publish_time – Verfolgt den Zeitpunkt der Aktualisierung des Veröffentlichungsstatus. Wenn eine Absicht aktualisiert wird, ändert die Statusverfolgung nach der Übertragung an die Transportknoten den Veröffentlichungsstatus. Da dies auf einem Abfragemechanismus basiert, ist es nicht der genaue Zeitpunkt, zu dem die Absicht im Datenpfad veröffentlicht wurde. Der Wert „-1“ gibt an, dass entweder die Veröffentlichung noch ausgeführt wird oder dass der Laufzeitstatus „UNBEKANNT“ und nicht verfügbar ist. Der Laufzeitstatus kann „UNBEKANNT“ sein, wenn mindestens ein Host ausgefallen ist und die Regeln nicht an diese Hosts gesendet werden konnten. Wenn der Host aktiv wird, ändert sich der Laufzeitstatus in „ERFOLGREICH“, aber „publish_time“ zeigt den Wert der letzten Umsetzungszeit an. Bei jeder anschließenden neuen Konfigurationsänderung wird der richtige Wert für „publish_time“ angezeigt.
  • time_taken_for_realization – Ungefähre Zeit für die Umsetzung der Absicht für den Datenpfad. Die tatsächlich aufgewendete Zeit könnte kleiner sein als die hier gemeldete. Der Wert „-1“ gibt an, dass entweder die Veröffentlichung noch ausgeführt wird oder dass der Laufzeitstatus „UNBEKANNT“ und daher nicht verfügbar ist. Der Laufzeitstatus kann „UNBEKANNT“ sein, wenn mindestens ein Host ausgefallen ist und die Regeln nicht an diese Hosts gesendet werden konnten. Wenn der Host aktiv wird, ändert sich der Laufzeitstatus in „ERFOLGREICH“, aber es wird der Wert der letzten Umsetzungszeit als für die Umsetzung benötigte Zeit angezeigt. Bei jeder anschließenden neuen Konfigurationsänderung wird der richtige Wert für „time_taken_for_realization“ angezeigt.
Beispiel:
"publish_status": "REALIZED",
    "publish_time":  1668599137109, <====================== Newly added
    "time_taken_for_realization": 1563 <============ in milliseconds 
    "intent_version": "1"

Um den Realisierungsstatus für alle im Richtlinienmanager erstellten Entitäten zu prüfen, führen Sie den Befehl aus: GET: https://<Policy Appliance IP>/policy/api/v1/infra/realized-state/realized-entitiesDer realisierte Zustand des Objekts sollte „REALISIERT“ sein und 'runtime_status' sollte „ERFOLGREICH“ sein.

Die Abfrage zur Überprüfung des realisierten Status von <e2d4c010-96c8-11e9-8c0a-f7581ab92530> der Sicherheitsrichtlinie auf der Ebene des Richtlinienmanagers lautet beispielsweise GET https://10.172.121.219/policy/api/v1/infra/realized-state/realized-entities?intent_path=/infra/domains/default/security-policies/f96f27c0-92b8-11e9-96af-b5e746a259e7/rules/e2d4c010-96c8-11e9-8c0a-f7581ab92530.

{
"results": [
{
"extended_attributes": [],
"entity_type": "RealizedFirewallRule",
"intent_paths": [
"/infra/domains/default/security-policies/1-communication-560"
],
"resource_type": "GenericPolicyRealizedResource",
"id": "default.1-communication-560.3-communication-110",
"display_name": "default.1-communication-560.3-communication-110",
"description": "default.1-communication-560.3-communication-110",
"path": "/infra/realized-state/enforcement-points/default/firewalls/firewall-sections/default.1-communication-560/firewall-rules/default.1-communication-560.3-communication-110",
"relative_path": "default.1-communication-560.3-communication-110",
"parent_path": "/infra/realized-state/enforcement-points/default/firewalls/firewall-sections/default.1-communication-560",
"intent_reference": [],
"realization_specific_identifier": "1028",
"state": "REALIZED",  
"alarms": [],
"runtime_status": "IN_PROGRESS",
"_create_user": "system",
"_create_time": 1561673625030,
"_last_modified_user": "system",
"_last_modified_time": 1561674044534,
"_system_owned": false,
"_protection": "NOT_PROTECTED",
"_revision": 6
}
],
"result_count": 1
}

Um den gesamten realisierten Status des Abschnitts jeder Regel in einem Abschnitt auf dem Hypervisor zu prüfen, führen Sie den Befehl aus: GET https://<policy-mgr>/policy/api/v1/infra/realized-state/status?include_enforced_status=true&intent_path=<Security_policy_path>.

Es gibt vier mögliche Werte für den konsolidierten Status:
  • Erfolgreich
  • Fehler
  • Wird durchgeführt
  • Unbekannt
Tabelle 1. Konsolidierter Status
Transportknoten 1 Gesamtstatus Transportknoten 2 Gesamtstatus Konsolidierter Status
FEHLER FEHLER FEHLER
FEHLER IN_PROGRESS FEHLER
FEHLER UNBEKANNT FEHLER
IN_PROGRESS IN_PROGRESS IN_PROGRESS
IN_PROGRESS UNBEKANNT IN_PROGRESS
ERFOLGREICH ERFOLGREICH ERFOLGREICH
ERFOLGREICH FEHLER FEHLER
ERFOLGREICH IN_PROGRESS IN_PROGRESS
ERFOLGREICH UNBEKANNT UNBEKANNT
UNBEKANNT UNBEKANNT UNBEKANNT