Neuron Workflow Builder
Ivanti Neurons (Feature) ist veraltet. Die neue Erfahrung heißt Neurons Bots. Weitere Informationen finden Sie unter Migrieren zu Neurons Bots.
Ein Neuron-Workflow besteht aus einer Serie verbundener Phasen, die darauf ausgerichtet sind, Geschäftsprozesse zu automatisieren. Sie können außerdem zum Erkennen, Generieren von Einblicken und Ergreifen von Maßnahmen verwendet werden. Sie können einen benutzerdefinierten Neuron-Workflow entweder von Beginn an neu erstellen oder einen bereits vorgefertigten Workflow unter Verwendung von Neuron Builder an Ihre Geschäftsanforderungen anpassen.
Neuron-Einstellungen
Im Bereich Neuron-Einstellungen können Sie den Neuron-Workflow konfigurieren. Die verfügbaren Einstellungen richten sich nach dem Neuron-Typ.
Name: Der Name des Neurons.
Kategorie: Wählen Sie die Kategorie aus der Dropdownliste aus: Compliance, Benutzerproduktivität, Business Continuity oder Ressourcenoptimierung.
Zielgruppe: Wählen Sie Benutzerdefiniert oder Alle Geräte aus. Wählen Sie im Falle von Benutzerdefiniert einen Eintrag aus der Dropdownliste der verfügbaren öffentlichen Gerätegruppen aus. Gerätegruppen werden unter Geräte > Gerätegruppe eingerichtet.
Statuskonfiguration: Sie können zwischen den Status Inaktiv und Aktiv umschalten. Wurde das Neuron auf "Aktiv" gesetzt, werden die Zeitplaneinstellungen angezeigt. Dort legen Sie fest, wann das Neuron ausgeführt werden soll. Füllen Sie folgende Felder aus:
- Wiederholungen: Täglich oder Wöchentlich
- Häufigkeit: Minuten oder Stunden
- Intervall: Bei Stunden 1 bis 24. Bei Minuten ein Wert zwischen 30 und 55 in 5-Minuten-Schritten.
- Start: Datum und Uhrzeit
- Ende: Datum und Uhrzeit
Name: Der Name des Neurons.
Statuskonfiguration: Sie können zwischen den Status Unveröffentlicht und Veröffentlicht umschalten. Wurde das Neuron auf "Veröffentlicht" gesetzt, werden Sie zur Eingabe eines Anzeigenamens für die Aktion aufgefordert. Dieser wird im Bereich "Aktionen" der Geräteansicht angezeigt.
Meine Phasen
Im Bereich Meine Phasen links sind alle Standardphasen und installierten Phasen enthalten. Es gibt unterschiedliche Kategorien für die Phasen:
Zusätzliche Abfragen und Aktionen befinden sich in der Bibliothek und können zu Meine Phasen hinzugefügt werden. Weitere Informationen zur Bibliothek finden Sie unter Neurons (Feature).
- Abfrage: Dient der Darstellung und Filterung von Informationen der Geräte, die bestimmte Kriterien erfüllen. So können Sie beispielsweise nur die Geräte anzeigen, die weniger als 10% freien Festplattenspeicherplatz aufweisen. Die Ausgabe und der Kontext der Abfragephase können dann an nachfolgende Phasen des Neuron-Workflows übergeben werden. Jede Abfrage enthält eine Einstellung, mit der das Verhalten des Neurons gesteuert wird, wenn keine Ergebnisse ausgegeben werden. Standardmäßig ist die Option Neuron wird nur bei Ausgabe von Ergebnissen fortgesetzt aktiviert. Wenn also von Onlinegeräten keine Ergebnisse zurückgegeben werden, wird der Neuron-Workflow nicht fortgesetzt. Wenn dieses Kontrollkästchen deaktiviert ist, wird der Neuron-Workflow beispielsweise fortgesetzt. Dieses Verhalten kann nützlich sein, um einen Alarm für eine positive Bestätigung aufzurufen, dass kein Problem erkannt wurde.
- Aktion: Aktionsphasen nutzen eine Automatisierungsstruktur, um bestimmte Aktionen durchzuführen, wie das Senden von E-Mails oder Ausführen benutzerdefinierter PowerShell-Skripte auf Benutzergeräten. Für bestimmte Aktionen können Variablen verwendet werden. Weitere Einzelheiten finden Sie unter Variablen.
- Allgemein: Beinhaltet folgende Optionen:
- Ergebnisse filtern: Filtert die erfassten Abfragedaten gemäß den definierten Filtereigenschaften. Weitere Informationen finden Sie unter Filter.
- Neurons-Alarm: Dient der Generierung von Alarmen auf der Neurons-Startseite.
- Benutzerdefiniert: Nutzen Sie Bash-Aktion, Benutzerdefiniertes JavaScript, PowerShell-Aktion und Abfrage, um die genannten Aktionen und Abfragen durchzuführen. Alle unter Bibliothek > Phaseneditor angelegten, benutzerdefinierten Phasen werden nach der Installation hier angezeigt.
Beispiele für die Verwendung von osquery und PowerShell finden Sie unter Beispiele für die erweiterte Nutzung von Neuron-Workflows.
Arbeitsbereich
Ziehen Sie die gewünschten Phasen in den Arbeitsbereich, um den Neuron-Workflow zu erstellen. Klicken Sie auf eine Phase, um folgende Optionen anzuzeigen:
Klicken Sie auf dieses Symbol, um die Phase aus dem Neuron zu entfernen.
Klicken Sie auf dieses Symbol, um einen Connector einer anderen Phase hinzuzufügen.
Klicken Sie auf dieses Symbol, um die Verbindung zwischen zwei Phasen aufzuheben.
Phaseneinstellungen
Nachdem Sie eine Phase in den Arbeitsbereich gezogen und markiert haben, wird der Bereich Phaseneinstellungen geöffnet. Dort können Sie die einzelnen Phasen konfigurieren und anpassen.
Klicken Sie auf Phaseninformationen, um eine Beschreibung der Phase und die zugehörigen Eigenschaften anzuzeigen. Diese können als Kriterien zum Filtern der Abfrageergebnisse verwendet werden.
Verbindung
Jede Phase muss mit einer anderen Phase verbunden sein, damit der Neuron-Workflow ausgeführt werden kann. Markieren Sie eine Phase und ziehen Sie die Verbindungspfeile zu der zu verbindenden Phase. Der Bereich "Verbindung" wird angezeigt. Dort können Sie Art und Stil der Verbindung sowie Linienstärke und Linienart anpassen. Sie können außerdem die Farbe ändern und eine Beschriftung hinzufügen.
Filter
Sie können Abfrageergebnisse basierend auf anpassbaren Eigenschaften filtern. Wenn Sie eine integrierte Abfragephase mit einem Filter verbinden, listen die Dropdownlisten für die Eigenschaft alle verfügbaren Eigenschaften auf, die ausgewählt werden können. Wechseln Sie zum Anzeigen der Details zu den Eigenschaften in den Bereich Phaseneinstellungen und wählen Sie Phaseninformationen aus.
Sie können auch mithilfe der Funktion Abfrage in der Vorschau anzeigen alle Zielgeräte bewerten und anhand der Ergebnistabelle Format und Bereich der filterbaren Werte anzeigen.
Bei benutzerdefinierten Abfragen wie osquery, PowerShell und BASH werden die Filtereigenschaften nicht automatisch eingetragen. Diese müssen anhand der von der Abfrage zurückgegebenen Spaltennamen (oder anhand der Anzeige in der Abfragevorschau) manuell eingegeben werden.
Sie können mehrere Abfragen als Abfolge miteinander verknüpfen. In dem Fall werden alle Ergebnisse zusammengefasst und es kann nach ihnen gefiltert werden bzw. sie können in Aktionsphasen verwendet werden wie "E-Mail senden" oder "ISM-Ticket erstellen". Sie können das Vergleichsverhalten des verbundenen Filters ändern, sodass die Ergebnisse mit der Logik AND oder OR bestimmt werden.
Variablen
Anhand von Variablen können Informationen zwischen den Phasen übergeben und das Ergebnis einer Aktion an eine andere Aktion übergeben werden. Für folgende Phasen lassen sich Variablen einsetzen:
- Neuron-Alarm
- E-Mail senden
- Ticket erstellen (ISM)
Einfügen von Variablen
Öffnen Sie zum Einfügen einer Variable die Phaseneinstellungen für eine der geeigneten Phasen: Neurons-Alarm, E-Mail senden, Ticket erstellen (ISM). Öffnen Sie in den relevanten Feldern mithilfe der Tastenkombination STRG+Leerzeichen die Dropdownliste der verfügbaren Variablen und wählen Sie eine davon aus:
- Neuron-Name: [[Workflow.Name]] – der Name des Neurons, z. B. Software auf Negativliste
- Gruppenname: [[Workflow.Assistant]] – der Name der Kategorie, der das Neuron angehört, z. B. Compliance
- Neuron-URL: [[Workflow.Url]] – Link zur eindeutigen "Durchlauf Nr."-Instanz des Neurons
- Initiierender Benutzer: [[Initiation.User]] – Name des Benutzers, der die manuelle Instanz ausgeführt hat
- ID initiierender Benutzer: [[Initiation.UserId]] – die ID des Benutzers, der die manuelle Instanz ausgeführt hat
- Alle Gerätenamen: ${Ivanti.Devices} – kommagetrennte Liste der von der Abfrage zurückgegebenen Gerätenamen
- Alle Gerätedaten: ${Ivanti.Results} – Liste der von der Abfrage zurückgegebenen Gerätedaten
- Anzahl Geräte: ${Ivanti.Results.length} – Anzahl der von der Abfrage zurückgegebenen Geräte
- Abdeckung – Geantwortet – Anzahl der Geräte, die geantwortet haben
- Abdeckung – Fehler – Anzahl der Geräte, die nicht geantwortet haben, mit Fehlern
- Abdeckung – Prozent – Prozentsatz der Geräte, die geantwortet haben
Es gibt sofort einsatzfähige Vorlagen, die diese Variablen verwenden. Komplexere Anforderungen für die Felder bei den Neurons-Alarmen und E-Mails unterstützen Javascript, dabei wird jedoch "handlebarsjs" verwendet.
Mit folgendem Skript lässt sich beispielsweise eine Geräteliste in einer E-Mail ausgeben:
<ul class="devicelist">
{{#each Ivanti.Results}}
<li>{{this.deviceName}}</li>
{{/each}}
</ul>
Behandeln von Fehlern
Idealerweise werden alle Ihre Neurons auf allen Zielgeräten jederzeit erfolgreich ausgeführt. Es ist jedoch möglich, dass nicht alle Vorgänge erfolgreich verlaufen. Neurons-Workflows enthalten einige Funktionen zur Verbesserung der Erfolgsquote, und es gibt einige Designentscheidungen und Konfigurationseinstellungen, die Sie treffen und vornehmen können, um die Erfolgsquote zu verbessern und Sie dabei bei der Behandlung von auftretenden Fehlern zu unterstützen.
Zeitüberschreitungen
Sie müssen abwägen, ob es sinnvoll ist, den Abschluss eines Workflows abzuwarten oder die Fortsetzung des Workflows, lange, nachdem er fehlgeschlagen ist, abzubrechen. Auf jede Phase eines Workflows werden angemessene Zeitüberschreitungen angewendet. Abfragephasen haben eine Zeitüberschreitung von 15 Sekunden, Aktionen von 5 Minuten und gezielte Aktionen von 25 Minuten.
Ignorieren von Durchläufen
Geplante Durchläufe werden erst gestartet, nachdem der vorherige Durchlauf abgeschlossen wurde. Das Feld Durchlauf - Protokoll für ein Neuron zeigt einen ignorierten Durchlauf mit einem an.
Fehlerverzweigung
Bei Ausführung einer Phase erfasst der Workflow, auf welchen Geräten die Phase erfolgreich war und auf welchen sie fehlgeschlagen ist. Die Ergebnisse werden in der Phasenausgabe dargestellt. Wenn die Phase nur auf einigen der Zielgeräte erfolgreich war, werden die Phase und der Durchlauf als teilweise erfolgreich markiert . Der Workflow wird dann nur für jene Geräte fortgesetzt, für die die Phase erfolgreich war. Durch das Hinzufügen von Fehlerverzweigungen können Sie Ihr Workflowdesign so verbessern, dass es in diesen Situationen proaktiver handelt.
So fügen Sie eine Fehlerverzweigung hinzu:
- Öffnen Sie den betreffenden Workflow.
- Fügen Sie im Bereich Meine Phasen im Abschnitt Allgemein die Phase Ergebnisse filtern unter einer Aktionsphase hinzu.
- Verbinden Sie die Phase "Aktion" mit der Phase "Ergebnisse filtern".
- Klicken Sie auf die Phase "Ergebnisse filtern".
- Setzen Sie im Bereich Phaseneinstellungen den Wert Logik auf UND, Eigenschaft auf Aktionsstatus, Vergleich auf Ist gleich und Wert auf Fehlgeschlagen.
- Verbinden Sie eine ähnliche Phase vom Typ "Ergebnisse filtern" mit derselben Aktionsphase, setzen Sie den Eintrag Wert jedoch auf Abgeschlossen.
Sie haben jetzt eine Fehlerverzweigung, die erfolgreiche Geräte von fehlgeschlagenen Geräten trennt. - Vervollständigen Sie unter der Phase "Ergebnisse filtern" vom Typ Abgeschlossen Ihr Workflow-Design.
- Fügen Sie unter der Phase "Ergebnisse filtern" vom Typ Fehlgeschlagen die Aktionsphase E-Mail senden hinzu, um die Fehler zu melden, oder fügen Sie eine andere geeignete Aktion hinzu, um mit dem Workflow fortfahren zu können.
Beispiele für die erweiterte Nutzung von Neuron-Workflows
Die folgenden Beispiele zeigen, wie Sie einen Neuron-Workflow einrichten und benutzerdefinierte Abfragen und Aktionen verwenden:
Dieses sofort einsatzbereite Neuron überprüft Geräte auf geringen Festplatten-Speicherplatz und initiiert eine automatische Bereinigung. Anschließend überprüft es den Festplatten-Speicherplatz erneut. Falls dieser weiterhin gering ist, legt es ein Service Manager-Ticket mit den betreffenden Gerätenamen an, damit sich ein Techniker um das Problem kümmern kann:
Die Parametrierung von Abfragen wird unterstützt, um die Neuzuordnung von Abfragen in Neurons zu vereinfachen. Dies wird unterstützt, wenn der Editor verwendet wird und ein Element als wiederverwendbarer Bibliotheksknoten gespeichert wird:
osquery verwendet die SQL-Syntax. Beispiel: "select * from processes where name = myprocess.exe"
Mit dieser sind die meisten Administratoren vertraut.
Bei Verwendung der obigen Abfrage als Beispiel, lässt sich dies wie folgt angeben:
select * from processes where name = __Name__
"
Die doppelten Unterstriche weisen Neurons darauf hin, dass hier eine Parametrisierung erfolgen muss. Beim Speichern und beim Auswählen der Abfrage wird im Bereich "Einstellungen" ein Eingabefeld mit der Bezeichnung Name angezeigt:
Sie können auch eine Dropdownliste mit auswählbaren Werten befüllen, indem Sie eine Variable für Optionen einfügen.
Geben Sie im Editor op
ein und drücken Sie die Tabulatortaste:
Ersetzen Sie den Eintrag durch Ihren bevorzugten Text und Ihre Optionen und speichern Sie das Element als wiederverwendbaren Bibliotheksknoten:
Die folgenden Optionen sind jetzt als wählbare Dropdownwerte verfügbar:
osquery-Abfragen sind in Tabellen gruppiert. Wie können nun die Ergebnisse mehrerer Tabellen in einer Abfrage zusammengefasst werden?
Beispiel: Sie möchten anhand der Registrierungstabelle einen Registrierungswert abrufen:
Sie möchten außerdem den Hardwareanbieter und das Modell aus "system_info" abrufen.
Geben Sie Ihre osquery-Abfrage wie folgt in Neurons ein:
SELECT hardware_vendor,hardware_model,
(
SELECT data FROM registry
WHERE key = 'HKEY_LOCAL_MACHINE\Software\Ivanti\Neurons'
)
temp
FROM system_info
Folgendes wird ausgegeben:
Sie können dann eine Verbindung zur Phase "Ergebnisse filtern" aufbauen, um eine Aktion auszuführen, wenn der Registrierungswert einem bestimmen Wert entspricht:
Optional können Sie nach Hardwareanbieter filtern.
Sie können anhand der Ergebnisse auch eine formatierte Tabelle in einer E-Mail erstellen:
Vorgehensweise:
- Starten Sie mit der Vorlage "Geringer Festplatten-Speicherplatz".
- Aktualisieren Sie den Abschnitt in <th>-Tags mit den bevorzugten Spaltennamen.
- Bearbeiten Sie den Abschnitt mit den zugehörigen <td>-Tags, um die Spaltennamen aus der Vorschau zu verwenden, wobei immer dieses Präfix angefügt wird. Beginnen Sie mit Kleinbuchstaben, kein Leerzeichen zwischen den Begriffen, nachfolgende Wörter großgeschrieben.
Beispiel: Wenn eine Spalte "Meine Geräte" heißt, würde der Abschnitt <td> "meineGeräte" lauten.
Sie können Geräte auch mithilfe von PowerShell abfragen (nur bei Windows). Die Abfrage muss Ergebnisse jedoch als Array ausgeben und dann zu "ConvertTo-Json" weitergeleitet werden.
Beispiel: Mit "Get-TimeZone" würden folgende Array-Ergebnisse ausgegeben werden:
PS C:\Users\Joe.Bloggs> get-timezone
Id : GMT Standard Time
DisplayName : (UTC+00:00) Dublin, Edinburgh, Lisbon, London
StandardName : GMT Standard Time
DaylightName : GMT Summer Time
BaseUtcOffset : 00:00:00
SupportsDaylightSavingTime : True
Bei Weiterleitung an "ConvertTo-Json" (PowerShell 3.0 und höher) sieht dies folgendermaßen aus:
PS C:\Users\Joe.Bloggs> get-timezone | convertto-json
{
"Id": "GMT Standard Time",
"DisplayName": "(UTC+00:00) Dublin, Edinburgh, Lisbon, London",
"StandardName": "GMT Standard Time",
"DaylightName": "GMT Summer Time",
"BaseUtcOffset": {
"Ticks": 0,
"Days": 0,
"Hours": 0,
"Milliseconds": 0,
"Minutes": 0,
"Seconds": 0,
"TotalDays": 0,
"TotalHours": 0,
"TotalMilliseconds": 0,
"TotalMinutes": 0,
"TotalSeconds": 0
},
"SupportsDaylightSavingTime": true
Dadurch kann Neurons die Daten in einer Tabelle darstellen:
Tipp: Falls Abfrage in der Vorschau anzeigen nicht funktioniert, stellen Sie sicher, dass alle Geräte in der Gruppe in der Lage sind, die Abfrage zurückzugeben (Windows-Geräte müssen über PowerShell 3 oder höher verfügen). Sie können die Zielgruppe bei den Neuron-Einstellungen auswählen.
Wenn die Ergebnisse aus der Abfrage vorliegen, können Sie eine Filterphase verbinden, um festzulegen, welche Bedingungen erfüllt sein müssen, damit die Phase fortgesetzt wird. Hinweis: Sie müssen die Spaltennamen manuell als Filtereigenschaften eingeben:
Neurons können auf Endpunkten PowerShell ausführen, indem sie den Ivanti Neurons-Agenten und das Modul "Automatisierungsstruktur" nutzen. Aktionen können im Sicherheitskontext des Endbenutzers oder als System ausgeführt werden.
Wie osquery können auch PowerShell-Aktionen parametriert werden, etwa wenn Sie eine wiederverwendbare Aktion verwenden möchten, um ein problematisches Windows-Update zu deinstallieren. In dem Fall könnten Sie mit dem PowerShell-Editor einen wiederverwendbaren Bibliotheksknoten mit dem folgenden Code erstellen:
wusa /uninstall /kb:__KBNumber__/quiet /norestart
__KBNumber__
würde als Option parametriert werden, wobei Sie lediglich die Nummer des zu entfernenden Updates eingeben müssten:
Sie können benutzerdefinierte Aktionen und Abfragen aus dem Editor entfernen, indem Sie Folgendes aus der Bibliothek löschen:
Die BASH-Abfrage/-Aktion funktioniert genau wie PowerShell mit der Ausnahme, dass BASH keine integrierte ConvertTo-Json-Funktion besitzt. Sie müssen also die Abfrage so erstellen, dass Ergebnisse in JSON ausgegeben werden, damit sie von Neurons interpretiert werden können.