SSH-Schritt

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 5 Minuten Lesedauer
  • Der SSH-Schritt führt über einen ServiceNow® MID-Server SSH-Befehle für ein externes *nix-System aus. Der Schritt speichert auch Skripts und Befehle für die *nix-Systeme.

    Hinweis:

    Rollen und Verfügbarkeit

    Der SSH-Schritt ist als Aktionsdesigner -Aktionsschritt verfügbar. Benutzer mit der Rolle „action_designer“ können eine benutzerdefinierte Aktion mit einem oder mehreren Aktionsschritten erstellen.

    Eingaben werden bereinigt

    Schließen Sie alle Benutzereingaben mit Escape-Zeichen, um die Möglichkeit auszuschließen, dass ein böswilliger Benutzer beliebige Befehle auf Ihrem Zielserver ausführt. Escape-Zeichen und Validieren von Datenpillen, bevor das Befehlsfeld sie verwendet, indem Argumente mit den Transformationsfunktionen „Shell-Argumente bereinigen“ bereinigt werden. Diese Transformationsfunktionskategorie wird automatisch angezeigt, wenn eine Datenpille in die Befehlseingabe eingefügt wird.

    Felder

    Feld Beschreibung
    Verbindungsdetails
    Verbindung Art der zu verwendenden Verbindung.
    • Verbindung Inline definieren: Definieren Sie die Verbindungsinformationen innerhalb des Aktionsschritts.
    • Verbindungs-Alias verwenden: Definieren Sie die Verbindungsinformationen mithilfe der Tabelle „Verbindungsalias“. Wenn Sie einen Alias verwenden, müssen Sie nicht mehrere Anmeldeinformations- und Verbindungsinformationsprofile konfigurieren, wenn Sie eine Aktion in mehreren Umgebungen verwenden. Ebenso müssen Sie Ihre benutzerdefinierte Aktion nicht aktualisieren, wenn sich die Verbindungsinformationen ändern.

    Weitere Informationen zu Verbindungen und Anmeldeinformationen finden Sie unter Einführung in Anmeldeinformationen, Verbindungen und Aliasse.

    Verbindungsalias Datensatz des Alias für Verbindungen und Anmeldeinformationen, den das System zum Ausführen des Aktionsschritts verwendet. Benutzer mit der Rolle „flow_designer“ oder „admin“ können einen zugeordneten Verbindungsdatensatz erstellen oder auswählen. Wenn Sie einen Alias verwenden, müssen Sie nicht mehrere Anmeldeinformations- und Verbindungsinformationsprofile konfigurieren, wenn Sie eine Aktion in mehreren Umgebungen verwenden. Ebenso müssen Sie Ihre benutzerdefinierte Aktion nicht aktualisieren, wenn sich die Verbindungsinformationen ändern. Weitere Informationen zu Verbindungen und Anmeldeinformationen finden Sie unter Anmeldeinformationen, Verbindungen und Aliasnamen. Der Wert der Anmeldeinformationen wird als Datenpille Passwort (2-fach verschlüsselt) im Datenbereich angezeigt. Dieses Feld ist verfügbar, wenn in der Liste Verbindung die Option Verbindungsalias verwenden ausgewählt wird.
    Anmeldeinformationsalias Anmeldeinformationsalias, den das System zum Ausführen des Aktionsschritts verwendet. Benutzer mit der Rolle „flow_designer“ oder „admin“ können einen zugeordneten Verbindungsdatensatz erstellen oder auswählen. Wenn Sie einen Alias verwenden, müssen Sie nicht mehr mehrere Anmeldeinformationen konfigurieren, wenn Sie eine Aktion in mehreren Umgebungen verwenden. Ebenso müssen Sie Ihre benutzerdefinierte Aktion nicht aktualisieren, wenn sich die Anmeldeinformationen ändern. Weitere Informationen zu Verbindungen und Anmeldeinformationen finden Sie unter Anmeldeinformationen, Verbindungen und Aliasnamen. Der Wert der Anmeldeinformationen wird als Datenpille Passwort (2-fach verschlüsselt) im Datenbereich angezeigt. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung ausgewählt wird.
    Hinweis:
    Der SSH-Schritt erfordert einen Anmeldeinformationsdatensatz, der entweder SSH-Anmeldeinformationen für den privaten Schlüssel oder SSH-Anmeldeinformationen unterstützt. Dieser Schritt unterstützt keine Windows-Anmeldeinformationen, wenn die Option MID Server-Servicekonto verwenden ausgewählt ist.
    Host Hostname oder IP-Adresse des Zielservers. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung ausgewählt wird.
    Port Portnummer für die Kommunikation mit dem Server. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung ausgewählt wird.
    MID-Auswahl Option zum Auswählen des spezifischen MID-Servers oder MID-Clusters.
    • MID Server automatischauswählen: Wählt den MID Server automatisch aus.
    • Spezifischer MID Server: Verwendet den von Ihnen ausgewählten MID Server.
    • Spezifischer MID-Cluster: Verwendet den von Ihnen ausgewählten MID-Cluster.
    Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung ausgewählt wird.
    MID-Anwendung Option zur Verwendung eines MID-Server zum Ausführen des SSH-Schritts. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren in der Verbindungsliste ausgewählt ist und MID Server automatisch auswählen in der MID- Auswahllisteausgewählt ist.
    Funktionen Fähigkeit von MID-Server. Wählen Sie SSH aus. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren in der Verbindungsliste ausgewählt ist und MID Server automatisch auswählen in der MID- Auswahllisteausgewählt ist.
    MID-Server Datenpille des erforderlichen MID-Server. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung und Spezifischer MID Server aus der MID-Auswahlliste ausgewählt wird.
    MID-Cluster Datenpille für den MID-Cluster, den Sie verwenden möchten. Dieses Feld ist verfügbar, wenn Inline-Verbindung definieren aus der Liste Verbindung ausgewählt wird und Spezifischer MID-Cluster aus der MID-Auswahlliste ausgewählt wird.
    SSH-Konfiguration
    Arbeitsverzeichnis Optionales Zielverzeichnis auf dem Zielhost, auf dem der Befehl ausgeführt wird.
    Befehl Befehl, der für das Zielverzeichnis ausgeführt wird. Der Befehl kann auch MID-Server -Skripts enthalten. Weitere Informationen finden Sie unter Erweiterte SSH-Skriptoptionen.
    Hinweis:
    Escape-Zeichen und Validieren von Datenpillen, bevor sie vom Befehlsfeld verwendet werden, indem Argumente mit einem Vorverarbeitungs- Skriptschritt bereinigtwerden. Weitere Informationen finden Sie unter Argumente mit der Escape-Klasse und -Funktion bereinigen.
    Lange Ausführung Option zum Deaktivieren der SSH-Verbindungszeitüberschreitung für Befehle, deren Ausführung länger als die Standardzeit von 120 Sekunden dauern kann. Wenn diese Option ausgewählt ist, wird die Engine bis zum Abschluss vom Ausführungsthread getrennt.
    Sudo-Modus Option zum Erhöhen der Berechtigungen zum Ausführen des Skripts.
    Weitere Informationen finden Sie unter SSH-Anmeldeinformationen.

    Felder für Aktionsfehlerauswertung

    Feld Beschreibung
    Wenn dieser Schritt fehlschlägt Option, um mit der Ausführung des nächsten Schritts fortzufahren oder zur Fehlerauswertung zu wechseln. Informationen zur Verwendung des Schrittstatuscodes oder der Meldung für eine Fehlerbedingung für eine benutzerdefinierte Aktion finden Sie unter Aktionsfehlerbewertung.

    Erweiterte SSH-Skriptoptionen

    Um ein MID-Server -Skript auf dem Zielhost auszuführen, geben Sie den Skripttyp an, und übergeben Sie den Namen des Skripts an den Parameter ${syncFile()}. Das System verwendet diesen Parameter, um das benannte Skript in der Tabelle MID-Server Skriptdatei [ecc_agent_script_file] zu suchen und auf dem Zielhost auszuführen. Beispielsweise kann ein Bash-Skript wie folgt ausgedrückt werden:
    bash ${syncFile("<MID script name>")} argument1 argument2 argument3
    Ein Basisskript (main_script.bash) kann auf ein anderes Skript (my_include.bash) sowie auf eine andere Datei (.my_profile) verweisen, die sich auf dem Ziel-Host befindet. Sowohl Skripts als auch die referenzierte Datei müssen mit dem Parameter ${syncFile()} mit MID-Serversynchronisiert werden, um ordnungsgemäß ausgeführt zu werden.
    source ${syncFile(".my_profile")}
    cp ${syncFile("my_include.bash")} /usr/ssmith/my_include.bash
    bash ${syncFile("main_script.bash")} one two three four five six 
    rm /usr/ssmith/my_include.bash
    Ein Python-Beispiel mit Inline-Kommentaren könnte wie folgt aussehen:
    set $LIB_DIR=/usr/bin;. 
    # Sync a file that is referenced inside myF5CreateLBPool.py 
    cp ${syncFile("specialFunctions.py")} ~/specialFunctions.py 
    # set up environment variables 
    source ${syncFile(".python_profile")} 
    # call script that sets up dependencies on the box from remote package repos 
    python ${syncFile("setupPythonDependencies.py")} pycontrol 
    # call a script that requires functions from the package as well as a function from myIncludedFile 
    python ${syncFile("myF5CreateLBPool.py")} snow_pool myActualValue 
    # user is responsible for their own cleanup 
    rm ~/specialFunctions.py 

    Um die Liste der verfügbaren MID-Server Skripts anzuzeigen, navigieren Sie zu MID-Server > Skriptdateien.