Abläufe in Playbooks verwenden

Unterstützt in:

In diesem Dokument wird erläutert, wie die Komponente Flow die nächsten Schritte eines Playbooks mithilfe eines Verzweigungssystems steuert.

Bedingungsabläufe sind unerlässlich, damit ein Playbook Entscheidungen treffen kann. Ein Fall wird basierend auf eingehenden Benachrichtigungsdaten, Ergebnissen vorheriger Aktionen oder Nutzereingaben auf unterschiedliche Pfade geleitet.

Die folgenden Ablaufoptionen sind verfügbar:

  • Bedingung: Komplexe Bedingungen, die auf Platzhaltern, vorhandenen Falldaten und dem Ablauf Vorherige Aktionen basieren.
  • Multiple-Choice-Frage: Fragen, die Analysten manuell beantworten müssen.

Bedingungsabläufe hinzufügen

In diesem Abschnitt wird beschrieben, wie Sie mit Bedingungsabläufen dynamische, verzweigende Logik in Ihren Playbooks erstellen.

Einzelnen Bedingungsablauf hinzufügen

So fügen Sie einen einzelnen bedingten Ablauf hinzu:

  1. Klicken Sie auf der Seite Antwort > Playbooks auf Schrittauswahl öffnen.
  2. Wählen Sie unter Schrittauswahl den Abschnitt Ablauf aus.
  3. Ziehen Sie die Bedingung auf den Schritt oder zwischen zwei Aktionen, je nachdem, wie Sie Ihr Playbook erstellen.
  4. Doppelklicken Sie auf die Bedingung, um das Dialogfeld zu öffnen.
  5. Wählen Sie die erforderlichen Entitäten aus. Wenn Sie Platzhalter verwenden, sind sie auf diese Gruppe von Entitäten beschränkt.
  6. Entscheiden Sie, wie viele Zweige Sie erstellen möchten. Zwischen den einzelnen Zweigen steht jeweils ein OR.
  7. Wählen Sie Parameter für jeden Zweig aus und fügen Sie sie hinzu:
    1. Wählen Sie den entsprechenden Platzhalter aus der Liste der vorhandenen Platzhalter aus, den Sie auswerten möchten. Bei neuen Nutzern ist dieses Feld leer, wenn noch keine Warnungen erfasst wurden.
    2. Wählen Sie den gewünschten Operator aus, z. B. Ist gleich oder Enthält nicht.
    3. Wählen Sie einen Wert aus.
  8. Definieren Sie einen „Fallback-Zweig“, um fehlgeschlagene Bedingungen zu vermeiden. Wenn eine Bedingung auf vorherigen Aktionen basiert und eine dieser Aktionen fehlgeschlagen (und übersprungen) ist, wird die Bedingung im Fallback-Zweig fortgesetzt, anstatt zu stoppen. Informationen zum Auswählen eines Fallback-Branch finden Sie unter Fallback-Branch definieren.
  9. Klicken Sie auf Speichern. Das Playbook hat jetzt drei Zweige: 1, 2 und E (Else).
  10. Legen Sie das Ergebnis für mindestens einen Zweig fest, um das Playbook als abgeschlossen zu markieren.

Ablauf für Multiple-Choice-Fragen hinzufügen

  1. Ziehen Sie die Bedingung Multiple-Choice-Fragen in das Feld Letzter Schritt.
  2. Klicken Sie auf Multiple-Choice-Fragen, um das Dialogfeld zu öffnen.
  3. Fügen Sie eine Frage mit beliebig vielen Antworten hinzu.
  4. Klicken Sie auf Speichern. Das Playbook wird in vier Zweige unterteilt.
  5. Legen Sie das Ergebnis für mindestens einen Zweig fest, um ihn als abgeschlossen zu markieren.

Ablauf mit Bedingungen hinzufügen

So fügen Sie einen Ablauf mit Bedingungen hinzu:

  1. Ziehen Sie die Bedingungen in das Feld Letzter Schritt.
  2. Klicken Sie auf Bedingungen, um das Dialogfeld zu öffnen.
  3. Entscheiden Sie, wie viele Branches Sie erstellen möchten. Zwischen den einzelnen Zweigen steht jeweils ein OR.
  4. Parameter hinzufügen: Wählen Sie den gewünschten Parameter aus. In der Liste werden nur die Ergebnisse des Aktionsskripts aus diesem Playbook angezeigt.
  5. Wählen Sie den gewünschten Operator aus: Gleich/Ungleich, Enthält/Enthält nicht, Beginnt mit oder Größer als/Kleiner als.
  6. Wählen Sie den Wert (das Ergebnis der Aktion) aus.
  7. Sie können jedem Zweig weitere Parameter hinzufügen und einen logischen Operator auswählen: UND oder ODER.
  8. Klicken Sie auf Speichern. Das Playbook öffnet drei Zweige: 1, 2 und Else.
  9. Legen Sie das Ergebnis für mindestens einen Zweig fest, um das Playbook abzuschließen.

Fallback-Zweig definieren

  1. Wählen Sie in einem der Flows (Bedingung) den Zweig aus, der als Fallback-Zweig verwendet werden soll. In diesem Beispiel wird Branch – not risky verwendet. Sie müssen keinen Fallback-Zweig hinzufügen.
  2. Wenn das Playbook ausgeführt wird und die vorherigen Aktionen fehlschlagen, wird der Fallback-Zweig ausgewählt und das Playbook wird fortgesetzt.

Schrittfehler verwalten

Playbook-Schritte können während der Ausführung fehlschlagen. Standardmäßig wird ein Playbook beendet, wenn ein Schritt fehlschlägt. Das ist ein wichtiger Sicherheitsmechanismus, um zu verhindern, dass mit unvollständigen oder falschen Daten fortgefahren wird. Es gibt jedoch Fälle, in denen ein Playbook fortgesetzt werden soll, auch wenn ein Schritt nicht die erwarteten Ergebnisse zurückgibt. Das gilt insbesondere für Anreicherungsaktionen, bei denen die gesuchten Daten möglicherweise nicht in jedem Fall vorhanden sind. Sie können entscheiden, ob Sie das Playbook beenden oder zum nächsten Schritt springen möchten. Wenn der fehlgeschlagene Schritt für die Entscheidungsfindung entscheidend war, können Sie im nächsten Schritt prüfen, ob der vorherige Schritt fehlgeschlagen ist, und entsprechend entscheiden, wie Sie vorgehen (z. B. wenn ein Schritt fehlschlägt, zu einem Fallback-Zweig wechseln).

Bei Fehler überspringen

Für jede Aktion können Sie festlegen, dass der Schritt übersprungen werden soll, wenn er fehlschlägt. Wenn Sie diese Einstellung aktivieren, wird das Playbook mit dem nächsten Schritt fortgesetzt, auch wenn die Ausführung der Aktion fehlschlägt oder ein Fehler zurückgegeben wird.

So aktivieren Sie diese Einstellung:

  1. Doppelklicken Sie auf den Aktionsblock, um das zugehörige Einstellungsfeld zu öffnen.
  2. Rufen Sie den Tab Einstellungen auf und gehen Sie zum Abschnitt Wenn Schritt fehlschlägt.
  3. Wählen Sie Schritt überspringen aus.

Bedingung für die erweiterte Fehlerbehandlung verwenden

Die Option „Überspringen, wenn fehlgeschlagen“ eignet sich gut für einfache Fälle. Eine robustere Methode ist jedoch, einen Bedingungsfluss zu verwenden, um einen dedizierten Pfad für die Fehlerbehandlung zu erstellen. So kann das Playbook bei einem fehlgeschlagenen Schritt andere Aktionen ausführen, z. B. einen Analysten benachrichtigen oder den Fehler protokollieren.

So erstellen Sie einen Pfad für die Fehlerbehandlung:

  1. Fügen Sie nach einer Aktion, die möglicherweise fehlschlägt und für die Sie einen bestimmten Fehlerpfad definieren möchten, einen Condition-Ablaufblock hinzu.
  2. Doppelklicken Sie auf den Block Bedingung, um das zugehörige Dialogfeld zu öffnen.
  3. Rufen Sie den Tab Einstellungen auf und wählen Sie im Bereich Wenn vorherige Aktion fehlschlägt aus, zu welchem Zweig der Ablauf weitergeleitet werden soll. Wichtig: Bei der Bedingung Wenn vorherige Aktion fehlschlägt wird nicht einfach geprüft, ob ein vorheriger Fehler aufgetreten ist. Es wird geprüft, ob eine vorherige Aktion, deren Ergebnisse bei der Auswertung der aktuellen Bedingung verwendet werden, fehlgeschlagen ist. Wenn die abhängige Aktion fehlgeschlagen ist, kann die Bedingung nicht entschieden werden und der Ablauf wird zum ausgewählten Zweig weitergeleitet. So können Sie Fälle bearbeiten, in denen eine Abhängigkeit fehlgeschlagen ist und die Bedingung nicht aufgelöst werden konnte.
  4. In diesem Fehlerzweig können Sie Aktionen wie das Senden einer Benachrichtigungs-E-Mail, das Erstellen einer Aufgabe oder das Protokollieren des Fehlers hinzufügen.

Nehmen wir an, ein Playbook versucht, den Inhaber eines Nutzers zu ermitteln. Wenn die Aktion Resolve User Owner fehlschlägt (z. B. wenn der Nutzer nicht in Active Directory vorhanden ist), wird das Playbook nicht beendet. Stattdessen wird der Fehler im Bedingungsblock erkannt und der Ablauf wird zu einem separaten Zweig weitergeleitet. Dort kann eine E-Mail mit Informationen zu den fehlenden Daten an das Sicherheitsteam gesendet werden. So wird sichergestellt, dass das Playbook ohne Unterbrechung weiter ausgeführt wird. <

Ablauf entfernen

Wenn Sie einen Ablauf aus einem Playbook entfernen, werden Sie vom System aufgefordert, den gesamten Zweig oder nur einen Aspekt davon zu entfernen.

Zweige zusammenführen

Sie können verschiedene Zweige des Playbooks in einem Zweig zusammenführen. Ziehen Sie dazu eine Aktion aus einem der Zweige und legen Sie sie im Feld Final Step (Letzter Schritt) eines anderen Zweigs ab. Das Playbook kann danach fortgesetzt oder hier beendet werden.

Funktionsweise logischer Operatoren in einer Bedingung

In diesem Abschnitt wird erläutert, wie bedingte Operatoren in Playbooks Felder mit einzelnen oder mehreren Elementen (z. B. Entitäten oder Ereignisse in einer Benachrichtigung) auswerten. Es ist wichtig, zu wissen, ob ein Feld ein String oder eine Liste ist, um die Playbook-Logik zu verstehen.

Die Rolle von Datentypen bei der Bedingungsauswertung

Das Verhalten von Operatoren (Equals, Contains) variiert je nach Datentyp:

  • Kontext mit einem Element:Felder wie [Entity.Identifier] aus einer Benachrichtigung mit einer Entität werden als einzelner String behandelt.
  • Kontext mit mehreren Elementen:Das gleiche Feld aus einer Benachrichtigung mit mehreren Einheiten ist eine Liste von Strings.

Operatorverhalten von equals und contains

In den folgenden Abschnitten wird die Funktionsweise dieser Operatoren erläutert.

Operator Equals

Der Operator Equals vergleicht zwei Werte direkt.

  • Feld mit einem einzelnen Element (String) prüft auf eine genaue Übereinstimmung.
    • Angenommen, [Entity.Identifier] ist "Tom".
    • Dann ist die Bedingung if [Entity.Identifier] equals "Tom" Wahr.
  • Mit Feld mit mehreren Elementen (Liste) wird geprüft, ob die gesamte Liste dem angegebenen String entspricht. Eine Liste ist nie gleich einem einzelnen String.
    • Angenommen, [Entity.Identifier] ist eine Liste (Tom, Kai)
    • Dann ist die Bedingung if [Entity.Identifier] equals "Tom, Kai" immer Falsch. Das liegt daran, dass [Entity.Identifier] eine Liste und „Tom, Kai“ ein String ist.

Operator Contains

Der Operator Contains ändert sich ebenfalls je nach Datentyp:

  • Bei einem Feld mit einem einzelnen Element (String) wird eine Teilstring-Suche durchgeführt. Gibt True zurück, wenn der String den Wert enthält.
    • Angenommen, [Entity.Identifier] ist "user-1234".
    • Dann ist die Bedingung if [Entity.Identifier] contains "user" Wahr.
  • Beim Feld mit mehreren Elementen (Liste) wird nach einer genauen Übereinstimmung eines Elements in der Liste gesucht. Es wird keine Teilstring-Suche durchgeführt.
    • Angenommen, [Entity.Identifier] ist eine Liste ("UserA@corp.com", "UserB@corp.com").
    • Die Bedingung if [Entity.Identifier] contains "corp" ist dann Falsch.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten