Dieses Python-Skript kann verwendet werden, um Daten über Computer (PC/Notebook/Server) aus ESET PROTECT mithilfe der Cloud-API zu importieren.
Es soll als Beispiel dafür dienen, wie man externe Daten abruft und verarbeitet und wie man daraus ein CDESK-Objekt erstellt. In diesem Fall werden Informationen über Geräte aus ESET PROTECT abgerufen, die anschließend verarbeitet und zur Erstellung eines zugehörigen CI-Objekts in CDESK verwendet werden, das dieses ESET-Gerät repräsentiert.
Ein ähnliches Szenario kann mit jeder anderen Datenquelle umgesetzt werden, wie Ihrer lokalen Datenbank, der API anderer Websites oder in lokalen Dateien gespeicherten Daten (z. B. .xlsx oder .json).
main.py
Dies ist der Haupteinstiegspunkt des Skripts. Es initialisiert die Verbindung zu CDESK und ESET, lädt die Geräte, verarbeitet sie durch Erstellen/Aktualisieren ihrer CI-Repräsentation in CDESK und stellt nach Abschluss das Schließen der Sitzung sicher.
LoggerController.yml
Dient dazu, Log-Meldungen in die Logs des Docker-Containers zu schreiben und, wenn es bei der Initialisierung aktiviert ist (standardmäßig aktiviert), Log-Meldungen an einen bestimmten Speicherort zu schreiben (Volume-Mapping in der docker-compose-Datei). Aus diesem Verzeichnis können alle .log-Dateien mithilfe der Logs-Anwendung visualisiert werden, um die Arbeit mit ihnen zu erleichtern.
ci_external_id_filter_sb.json
SB-Filter zum Abrufen eines CI anhand der externen ID des Geräts.
ci_oject_template.json
JSON-Vorlage des Anfragetexts zur Erstellung eines CI, die während der Skriptausführung angepasst/erweitert wird.
docker-compose.yml
Definiert die Docker-Umgebung für die Ausführung des Skripts zur Verarbeitung von E-Mails. Es legt die nötigen Umgebungsvariablen für die Verbindung zu CDESK fest und bestimmt die Netzwerkkonfigurationen.
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 („Computers from ESET console“):
Das Skript hat ein Dockerfile mit Umgebungsvariablen, die vor dem Ausführen eingestellt werden müssen (Datei docker-compose.yml). Diese Umgebungsvariablen sind:
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
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 des Benutzerfeldes ‚Model‘
DEVICE_MODEL_BASEPROPERTY_ID – ID des Basis-Benutzerfeldes ‚Model‘
DEVICE_SN_ID – ID des Benutzerfeldes ‚Serial number‘
DEVICE_SN_BASEPROPERTY_ID – ID des Basis-Benutzerfeldes ‚Serial number‘
DEVICE_PN_ID – ID des Benutzerfeldes ‚External ID‘
DEVICE_PN_BASEPROPERTY_ID – ID des Basis-Benutzerfeldes ‚External ID‘
DEVICE_OS_ID – ID des Benutzerfeldes ‚Operating System‘
DEVICE_OS_BASEPROPERTY_ID – ID des Basis-Benutzerfeldes ‚Operating System‘
DEVICE_TYPE_ID – ID des Benutzerfeldes ‚Device type‘
DEVICE_TYPE_BASEPROPERTY_ID – ID des Basis-Benutzerfeldes ‚Device type‘
SCRIPT_NAME – Name des Skripts, der in den Logs verwendet wird
Zur Visualisierung der von diesem Skript erstellten Logs muss ein Volume-Mapping auf ein Verzeichnis im lokalen PC/Server eingestellt werden. Dieses Verzeichnis kann zum Beispiel /logs in der Logs-Anwendung sein, das speziell zu diesem Zweck erstellt wurde.
Wenn alle Umgebungsvariablen eingestellt sind, sollte der Docker-Container mit dem Befehl docker-compose up –build –force-recreate erstellt werden. Das Skript startet automatisch beim Start des Containers. Wenn Sie das Skript in Zukunft erneut ausführen möchten, genügt es, den bereits existierenden Docker-Container erneut zu starten. Das Ergebnis des Skripts (die erstellten CI) finden Sie in der Konfigurationsdatenbank (oder CMDB) -> Liste der Posten, unter den Kategorien, die wir zuvor erstellt haben.