Aktionen und Erkennungsregeln für App-Verteilungspakete
Paketaktionen definieren, wie die App-Verteilung Ihre Pakete bereitstellt. Paketerkennungsregeln helfen der App-Verteilung bei der Entscheidung, ob eine App auf einem Gerät bereitgestellt werden soll.
Paketaktionen
Konfigurieren Sie Paketaktionen unter App-Verteilung > App-Katalog. Fügen Sie eine App hinzu oder bearbeiten Sie eine vorhandene App und wählen Sie die Registerkarte Paket aus. Ziehen Sie die gewünschten Aktionen in die Editorstruktur und legen Sie sie dort ab. Wählen Sie in der Editorstruktur eine Aktion aus, um sie zu konfigurieren.
Verfügbare Paketaktionen:
Mit ihnen lässt sich feststellen, ob die App bereits installiert ist und deshalb nicht erneut installiert werden sollte.
WICHTIG: Wenn ein Erkennungsschritt mit "wahr" aufgelöst wird, stoppt die Paketverarbeitung und der App-Status des Geräts wird als konform angezeigt.
Weitere Informationen zu den verfügbaren Erkennungsregeln finden Sie weiter unten in diesem Thema unter Paketerkennungsregeln.
: Lädt eine Datei in den Standardarbeitspfad der Ivanti App-Verteilung herunter:
C:\ProgramData\Ivanti\Ivanti Cloud Agent\Agent\SWD\working
Jede Aktion, die einen Dateipfad akzeptiert, setzt diesen Pfad voraus, sofern Sie keinen anderen angeben. Dieser Ordner wird vor und nach jeder Paketausführung geleert.
Sie können hier mehrere Dateien angeben und bei Bedarf mehrere Aktionen vom Typ "Datei herunterladen" festlegen. Die Dateien können an einem beliebigen HTTP(S)-Speicherort gehostet werden, der keine Authentifizierung erfordert und auf den die Clients, auf denen Sie die Bereitstellung durchführen, zugreifen können.
Cloud-Datei-Explorer
Über die Schaltfläche Datei auswählen wird der Cloud-Datei-Explorer geöffnet, wo Sie Dateien aus dem Microsoft Azure Blob Storage Ihres Unternehmens auswählen können. Ein Azure-Speicherkonto ist nicht in Ivanti Neurons enthalten. Informationen zum Erstellen eines Speichercontainers in Azure finden Sie in diesem Microsoft-Artikel.
Damit Sie den Cloud-Datei-Explorer verwenden können, müssen Sie zuerst Ihre Azure Blob Storage-Anmeldeinformationen unter Admin > Anmeldeinformationen hinzufügen. Weitere Informationen finden Sie unter Anmeldedaten. Bei Azure empfehlen wir Ihnen, in Ivanti Neurons Anmeldeinformationen sowohl für Ihren Azure key1 als auch für Ihren Azure key2 zu erstellen, um die Azure-Schlüsselrotation zu ermöglichen. Anschließend können Sie im Cloud-Datei-Explorer das gewünschte Konto auswählen.
Diese Anmeldeinformationen werden zum Befüllen der Ordner- und Dateiliste verwendet, sodass durch die Aktion "Datei herunterladen" Shared Access Signature-URLs (Microsoft Azure) für die von Ihnen ausgewählten Dateien abgerufen werden können. Clients werden diese Anmeldeinformationen nicht verwenden.
Nachdem Sie die Anmeldeinformationen hinzugefügt haben, können Sie im Cloud-Datei-Explorer Ihr Cloudspeicherkonto und Ihren Container auswählen. Der Container-Browser zeigt die dort gespeicherten Dateien und Ordner an. Fügen Sie eine oder mehrere Dateien hinzu, indem Sie das Kontrollkästchen daneben aktivieren und die Schaltfläche Hinzufügen auswählen. URLs für die von Ihnen hinzugefügten Dateien werden dann bei den Aktionseigenschaften von Datei herunterladen angezeigt.
Die Cloudspeicheranbieter verlangen, dass die generierten URL-Token ein Ablaufdatum haben. In der App-Verteilung ist die Ablaufdauer des Tokens auf sieben Tage festgelegt und wird alle fünf Tage verlängert, um zu verhindern, dass die Zielclients den Zugriff verlieren.
Beim Anzeigen von Azure Blob Storage gibt es eine Schaltfläche Hochladen, mit der Sie nach ausgewählten Dateien suchen und diese hochladen können. Hochgeladene Dateien werden in dem Ordner abgelegt, den Sie im Explorer ausgewählt haben. Bei großen Dateien kann es eine Weile dauern, bis der Upload abgeschlossen ist. Daher werden hochgeladene Dateien möglicherweise nicht sofort im Explorer angezeigt.
Die Filterung von Clouddateien im Textfeld Nach Präfix filtern wird durch die Microsoft-API eingeschränkt. Der Filter ist auf den von Ihnen ausgewählten Ordner begrenzt und schließt Unterordner aus. Der von Ihnen eingegebene Filtertext muss exakt mit dem Dateinamen übereinstimmen (Groß-/Kleinschreibung beachten) und mit dem ersten Zeichen des gewünschten Dateinamens beginnen. Sie müssen nicht den vollständigen Dateinamen angeben, nur die Anfangsbuchstaben.
SHA256-Hashwert
Die Option "Datei herunterladen" beinhaltet auch ein optionales Feld für den Hashwert. Wenn Sie einen Hashwert angeben, wird der Hashwert der heruntergeladenen Datei bei der App-Verteilung validiert. Stimmen die Werte nicht überein, löscht die App-Verteilung die heruntergeladene Datei und stoppt die Verteilung. Wenn Sie möchten, dass bei der App-Verteilung erweiterte Verteilungstechnologien wie der Peer-Download zum Einsatz kommen, müssen Sie einen Hashwert angeben.
Die einfache Aktion Ausführen ermöglicht es Ihnen, eine auszuführende Datei und eine Befehlszeile anzugeben und festzulegen, über welchen Benutzer das Installationsprogramm ausgeführt werden soll. Über die Aktionen MSI ausführen und MSIX ausführen lassen sich spezifische MSI-, MSP- und MSIX-Vorgänge und Anzeigeoptionen auswählen.
Beinhaltet das Erstellen von Ordnern und das Verschieben, Kopieren und Löschen von Dateien sowie das Komprimieren und Extrahieren.
Führt einen Neustart des Geräts unter Berücksichtigung der Agentenrichtlinie des Geräts durch. Wenn eine App einen Neustart erfordert, können auf dem Gerät keine weiteren Apps installiert werden, bis der Neustart abgeschlossen ist.
Erstellt oder löscht Registrierungsschlüssel. Legen Sie Registrierungswerte fest oder löschen Sie sie.
Führt eine Batch-Datei oder ein PowerShell-Skript aus. Mit der PowerShell Core-Option wird PowerShell Core nicht installiert, falls nicht vorhanden. Die Option Automatisch versucht zuerst, PowerShell Core auszuführen. Ist PowerShell Core nicht installiert, wird ersatzweise PowerShell verwendet. Ein Skripteditor ist in der Aktion integriert. Ihr Skriptcode muss innerhalb dieses Editors hinzugefügt werden.
Pausiert die Ausführung des Pakets für die von Ihnen angegebene Anzahl von Sekunden. Verwenden Sie diese Funktion, falls frühere Aktionen mehr Zeit bis zum Abschluss benötigen.
Paketerkennungsregeln
Anhand der Paketerkennungsregeln lässt sich bestimmen, welches Paket bereits installiert ist und deshalb nicht erneut installiert werden sollte.
Paketerkennungsregeln werden unter App-Verteilung > App-Katalog konfiguriert. Fügen Sie eine App hinzu oder bearbeiten Sie eine vorhandene App und wählen Sie die Registerkarte Paket aus. Fügen Sie die der Bereitstellung vorgelagerte Aktion Erkennung zur Editorstruktur hinzu und wählen Sie sie aus, um sie zu konfigurieren.
Erkennungsregeln werden nur zu Beginn der Verarbeitung eines Pakets geprüft. Bei Verwendung des Editors wird daher immer zuerst eine Erkennungsaktion aufgeführt. Erkennungsregeln werden in der Reihenfolge ausgeführt, in der sie definiert wurden.
WICHTIG: Wenn ein Erkennungsschritt mit "wahr" aufgelöst wird, stoppt die Paketverarbeitung und der App-Status des Geräts wird als konform angezeigt.
Folgende Erkennungsregeln sind verfügbar:
Geben Sie den vollständigen Dateipfad und den Dateinamen an. Wählen Sie Existiert oder Existiert nicht aus.
Die Dateiversion ist im Allgemeinen nur für ausführbare Dateien verfügbar. Die App-Verteilung verwendet den Wert "Dateiversion" und nicht den Wert "Produktversion". Geben Sie den vollständigen Dateipfad und den Dateinamen an. Der Operator kann eine Variante von kleiner als, größer als, gleich oder zwischen sein. Wenn die von Ihnen angegebene Datei und der Pfad nicht existieren oder wenn die Datei keine analysierbare Version besitzt, wird "falsch" zurückgegeben.
Einzelheiten zur Funktionsweise von Vergleichsoperatoren finden Sie in diesem Artikel von Microsoft.
Geben Sie den vollständigen Dateipfad und den Dateinamen an. Geben Sie die Dateigröße in Bytes an. Die App-Verteilung verwendet den Wert "Größe" und nicht "Größe auf Datenträger". Wenn die von Ihnen angegebene Datei und der Pfad nicht existieren, wird "falsch" zurückgegeben.
Geben Sie den vollständigen Dateipfad und den Dateinamen an. Wählen Sie die SHA-2-Bitlänge aus, die Sie vergleichen möchten. Wenn die von Ihnen angegebene Datei und der Pfad nicht existieren, wird "falsch" zurückgegeben. Sie können mithilfe von PowerShell einen Hashwert generieren:
-
Get-FileHash -Algorithm SHA256 -Path C:\MyApp\myfile.exe
Diese Regel prüft nur das Datum, jedoch nicht die Uhrzeit. Geben Sie den vollständigen Dateipfad und den Dateinamen an. Wählen Sie einen Operator aus, z. B. Ist gleich. Das Dateidatum muss in UTC (koordinierte Weltzeit) angegeben werden und mit dem MM/TT/JJJJ-Format Ihres Gebietsschemas gleichwertig sein. Die App-Verteilung verwendet das Änderungsdatum "Modifiziert" und nicht das Erstellungsdatum "Erstellt". Wenn die von Ihnen angegebene Datei und der Pfad nicht existieren, wird "falsch" zurückgegeben. Sie können mithilfe von PowerShell das Dateidatum der Zeitzone UTC abrufen:
-
(Get-Item C:\MyApp\myfile.exe).LastWriteTimeUtc
Geben Sie die MSI-Produktcode-GUID an und wählen Sie Ist installiert oder Ist nicht installiert für das MSI-Paket aus. Verwenden Sie das Tool Orca von Microsoft, um die "ProductCode"-GUID anzuzeigen. Unter den folgenden Registrierungsschlüsseln können Sie ebenfalls feststellen, welche MSI-GUIDs installiert sind:
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
- HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
- HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall
Geben Sie den vollständigen Namen des MSIX-Pakets an und wählen Sie Ist installiert oder Ist nicht installiert für das MSIX-Paket aus. Ermitteln Sie den vollständigen Paketnamen mit dem PowerShell-Befehl 'Get-AppxPackage'. Eine Beschreibung von Microsoft finden Sie hier.
Geben Sie die Informationen zum Registrierungsschlüssel an, den Sie erkennen möchten.
- Registrierungsversion: Wählen Sie je nach Fall 32-Bit oder 64-Bit aus oder wählen Sie System, wenn Sie die Version, die vom Zielgerät verwendet wird, automatisch übernehmen möchten.
- Stammschlüssel: Wählen Sie den Stammschlüssel aus, der den zu erkennenden Schlüssel enthält, z. B. HKEY_LOCAL_MACHINE.
- Schlüssel: Geben Sie den vollständigen Pfad (ohne den bereits angegebenen Stammschlüssel) zu dem zu erkennenden Registrierungsschlüsselnamen ein.
- Geben Sie Existiert oder Existiert nicht an.
Geben Sie den Registrierungsschlüssel und die Informationen zum Wert an, den Sie erkennen möchten. Wenn der Schlüssel oder der Wert nicht existiert oder für den Benutzer nicht zugänglich ist, gibt die Regel "falsch" zurück (es sei denn, der Vergleichsoperator lautet Existiert nicht).
Sie müssen einen Wertnamen angeben, es sei denn, Sie möchten den Wert "(Standard)" prüfen. In dem Fall darf nichts eingegeben werden.
Beim Durchführen eines Versionsvergleichs müssen die Vergleichsoperanden und die mit dem Registrierungswert verknüpften Daten das hier beschriebene Versionsformat aufweisen. Wenn das Format falsch ist, generieren die Erkennungsregeln (und das Paket) einen Fehler.
Einzelheiten zur Funktionsweise von Vergleichsoperatoren finden Sie in diesem Artikel von Microsoft.
Bei Zeichenfolgenvergleichen wird zwischen Groß- und Kleinschreibung unterschieden. Wenn der Registrierungswert Daten aufweist, die nicht dem Typ REG_SZ (Zeichenfolge) entsprechen, wird er wie folgt in eine Zeichenfolge konvertiert:
- REG_DWORD: Es wird die Dezimalform (gemäß regedit.exe) verwendet.
- REG_QWORD: Es wird die Dezimalform (gemäß regedit.exe) verwendet.
- REG_BINARY: Es wird die Bytepaarform übernommen, die von regedit.exe verwendet wird, allerdings in Großbuchstaben (z. B. "46 AA 6C 6B 65 6E").
- REG_MULTI_SZ: Die Zeilen werden zu einer einzelnen Zeile mit Leerzeichen dazwischen zusammengefasst (z. B. "Zeile1 Zeile2 Zeile3").
- REG_EXPAND_SZ: Alle Umgebungsvariablen werden erweitert.
Erkennungsskripte können PowerShell (jedoch nicht PowerShell Core) oder die Batch-Syntax verwenden. Die erfolgreiche Erkennung ist vom numerischen Beendigungscode des Skriptes abhängig. Der Beendigungscode "0" (null) entspricht "wahr". Jeder andere Beendigungscode gilt als "falsch". Der Beendigungscode muss numerisch sein, darf also nicht mit dem Wort "wahr" angegeben werden. Verwenden Sie den integrierten Skripteditor, um Ihr Skript zu erstellen.
Verwenden Sie den integrierten Skripteditor, um Ihr Skript zu erstellen, oder navigieren Sie über die Option Datei auswählen zu einer Datei. Die Datei und der Pfad die/den Sie angeben, muss auf dem Zielsystem vorhanden sein. Falls sich die Skriptdatei noch nicht auf dem Gerät befindet, legen Sie sie mit der Aktion Datei herunterladen auf dem Gerät ab. Die heruntergeladene Datei wird an einem Standardpfad abgelegt und Sie können einfach den Dateinamen angeben.
Da Erkennungsregeln vor allen anderen Paketaktionen ausgeführt werden, befinden sich die Skripte für die Erkennungsregeln in einer ganz bestimmten Phase des App-Installationsprozesses. Es können hier auch komplexere Vorgänge definiert werden. So könnte beispielsweise ein benutzerdefiniertes Upgradeskript ausgeführt werden, das nach älteren App-Installationen sucht und diese ggf. deinstalliert, bevor der Rest des Pakets weiterverarbeitet wird.
Erkennungsregel und Aktionsprotokollierung
Die App-Verteilung erstellt für jede auf einem Gerät bereitgestellte App eine Protokolldatei. Das Protokoll enthält Einträge für jede Erkennungsregel und andere Paketaktionen. Falls die Erkennungsregeln nicht erwartungsgemäß funktionieren, überprüfen Sie die Protokolldatei nach möglichen Ursachen. Die Protokolle werden für jedes Gerät in folgendem Ordner gespeichert:
- C:\ProgramData\Ivanti\Ivanti Cloud Agent\Logs\SWDApps
Jeder Protokolldateiname enthält die Paket-GUID. Wenn Sie ein Paket im App-Katalog bearbeiten, wird die zugehörige Paket-GUID in der URL des Webbrowsers angezeigt. Dadurch können Sie die gesuchte Protokolldatei einfacher ermitteln.
Ein vereinfachtes Protokoll können Sie remote über die Seite App-Verteilung > Bereitstellungsstatus anzeigen. Ermitteln Sie das gewünschte Gerät und Paket und wählen Sie rechts die Option Protokoll anzeigen im Aktionsmenü aus.