Diese Logic App in Azure ist ein Beispiel dafür, wie man CDESK-Skripte anwendet, um Daten über Computer (PC/Notebook/Server) aus ESET PROTECT mithilfe der Cloud-API in die CDESK-Konfigurationsdatenbank zu importieren.
Die Daten über die Geräte werden aus dem ESET-PROTECT-Cloud-Dienst abgerufen, anschließend verarbeitet und zur Erstellung von CI-Posten in CDESK verwendet.
Ein ähnliches Szenario kann mit jeder anderen Datenquelle umgesetzt werden, wie Ihrer Datenbank, der API anderer Websites oder in Dateien gespeicherten Daten (zum Beispiel .xlsx oder .json). Da Azure jedoch ein Cloud-Dienst ist, sollten Ihre Daten aus dem Internet extrahierbar sein, sodass lokale Dateien/DB nicht funktionieren.
Vor dem Ausführen der Logic App wird erwartet, dass die Zielumgebung CDESK einen CI-Typ unter den Hauptgruppen hat, der die folgenden Unterfelder enthält:
Schritt-für-Schritt-Anleitung zur Erstellung eines solchen CI-Typs („Computer aus der ESET-Konsole“):
Zum Importieren einer Azure-Ressourcengruppe mit den erforderlichen Ressourcen können Sie die Vorlage in der Datei template.bicep verwenden. Dazu benötigen Sie Ihre Subscription-ID (Suchen -> geben Sie „Subscriptions“ ein -> wählen Sie Ihre Subscription oder erstellen Sie eine neue) und die Tenant-ID (Suchen -> geben Sie „Microsoft Entra ID“ ein).
Gehen Sie anschließend nach den folgenden Schritten vor, um den Import abzuschließen:


az deployment group create –resource-group <Name der Ressourcengruppe> –template-file ./template.bicep –parameters keyVaultName=<Name des Key Vault> logicAppName=<Name der Logic App> subscriptionId=<Ihre Subscription-ID> tenantId=<Ihre Tenant-ID> cdeskLogin= cdeskPwd= esetLogin= esetPwd= (ohne <>)
Der Importvorgang kann einige Warnungen ausgeben, die Objekte sollten jedoch problemlos erstellt werden. Nach einiger Zeit sollten Sie die neu erstellten Ressourcen in der gewählten Ressourcengruppe sehen.



Der Key Vault enthält einige private Daten, die nicht veröffentlicht werden sollten, wie zum Beispiel Anmeldungen und Passwörter:
ESET_LOGIN – Ihr Anmeldename für das ESET-PROTECT-Konto
ESET_PASSWORD – Ihr Passwort für das ESET-PROTECT-Konto
CDESK_LOGIN – Ihr Anmeldename für das CDESK-Konto
CDESK_PASSWORD – Ihr Passwort für das CDESK-Konto
Diese Werte werden beim Import zugewiesen, Sie können sie jedoch im Key Vault der Ressourcengruppe ändern.
Die Logic App hat die folgenden Parameter, die Sie vor ihrer Ausführung einstellen sollten:
CDESK_SERVER – Ihr CDESK-Server (z. B. ‚cdeskportal.eu‘)
MAINGROUP_ID – ID der Hauptgruppe des erstellten CI-Typs
TYPE_ID – ID des erstellten CI-Typs (‚Computers from ESET console‘)
COMPANY_ID – ID Ihres Unternehmens in CDESK
CATEGORY_ID – ID der mit der Hauptgruppe verbundenen Kategorie
PROPERTY_GROUP_ID – ID der Gruppe der Benutzerfelder des jeweiligen CI-Typs
PROPERTY_TYPE_ID – ID des Typs (boolean, integer, string, …) eines Benutzerfeldes des jeweiligen CI-Typs
DEVICE_MODEL_ID – ID der Eigenschaft Modell
DEVICE_MODEL_BASEPROPERTY_ID – ID der Basiseigenschaft Modell
DEVICE_SN_ID – ID der Eigenschaft Seriennummer
DEVICE_SN_BASEPROPERTY_ID – ID der Basiseigenschaft Seriennummer
DEVICE_PN_ID – ID der Eigenschaft Externe ID
DEVICE_PN_BASEPROPERTY_ID – ID der Basiseigenschaft Externe ID
DEVICE_OS_ID – ID der Eigenschaft Betriebssystem
DEVICE_OS_BASEPROPERTY_ID – ID der Basiseigenschaft Betriebssystem
DEVICE_TYPE_ID – ID der Eigenschaft Gerätetyp
DEVICE_TYPE_BASEPROPERTY_ID – ID der Basiseigenschaft Gerätetyp
Wenn alle Secrets im Key Vault und die Parameter der Logic App eingestellt sind, können Sie die Logic App ausführen, um den Import der Daten über PCs/Server aus ESET PROTECT durchzuführen. Die Logic App kann durch Senden einer Anfrage (POST, leerer Body) an die im Auslöseelement angezeigte URL gestartet werden (erstes Element des Workflows, „When an HTTP Request is received“, oder mithilfe der Schaltfläche „Run Trigger“ („Run“).
Hinweis: Wenn einige Datensätze (Computer/Server) bereits vor dem Ausführen dieses Skripts in CDESK existierten, werden sie nicht erstellt, und der für ihren Import zuständige Skriptcode zeigt den Status „Failed„ an. In diesem Fall ist das in Ordnung und das Skript funktioniert wie erwartet. Erfolgreich erstellte Datensätze geben den Status OK (200) zurück.
