Verwenden von su und sudo

Der su-Befehl (in der von IBM® UrbanCode Deploy verwendeten Form) ermöglicht es einem Benutzer, eine Shell als anderer Benutzer zu starten (Prozessschritte können als individuelle Shells angesehen werden).

Wenn Sie einen Prozessschritt konfigurieren (siehe Prozesse), können Sie IBM UrbanCode Deploy anweisen, für den Schritt einen Identitätswechsel zu verwenden. Standardmäßig wird su verwendet, Sie können aber auch sudo verwenden. Um den Identitätswechsel zu konfigurieren, geben Sie den Benutzernamen ein, der vom Zielhost verlangt wird. Wenn der unter Identitätswechsel konfigurierte Schritt ausgeführt wird, führt der su- oder sudo-Befehl den Schritt als Benutzer mit angenommener Identität aus. Jeder Schritt, der einen Benutzer-Identitätswechsel benötigt, muss unabhängig konfiguriert werden.

Bevor sudo verwendet werden kann, müssen Identitätswechselberechtigungen in der Datei /etc/sudoers definiert werden. Wenn Sie sudoers definieren, achten Sie darauf, dass der Identitätswechsel-Benutzer nicht ein Kennwort eingeben muss. In der Regel werden Sie die /etc/sudoers-Datei wie das folgende Beispiel konfigurieren:

Defaults:X !requiretty 
X ALL=(Y) NOPASSWD: ALL 

Dabei gilt: X und Y sind Benutzernamen. Bei dieser Konfiguration kann der Benutzer X jeden Befehl als Benutzer Y ausführen, ohne ein Kennwort einzugeben.

su und sudo zeichnen alle ihre Aktivitäten im Systemprotokoll auf. su kann ohne Konfiguration einer sudoers verwendet werden. Informationen über su/sudo finden Sie in der UNIX- oder Linux-Dokumentation.

Anmerkung: Für UNIX- oder Linux-Agenten wird die Kennwortoption ignoriert.
Um den su- und sudo-Befehl anzupassen, können Sie die folgenden Eigenschaften für den Agenten in der Datei installed.properties festlegen:
Tabelle 1. Agenteneigenschaften für den su- und sudo-Befehl
Eigenschaft Standardwert Beschreibung
com.urbancode.shell.impersonation.unix.sudoFormat %s -n -u %u %c Syntax des sudo-Befehls
com.urbancode.shell.impersonation.unix.sudoGroupFormat %s -n -u %u -g %g %c Syntax des sudo-Befehls, wenn eine Gruppe angegeben wird
com.urbancode.shell.impersonation.unix.suFormat %s - %u -c %c Syntax des su-Befehls
Tipp: Um diese Eigenschaften bei neuen Agenten festzulegen, erstellen Sie einen generischen Prozess, der die Datei installed.properties aktualisiert, und führen Sie den Prozess mit neuen Agenten aus.
Sie können in diesen Eigenschaften die folgenden Variablen verwenden:
Tabelle 2. Variable für den su- und sudo-Befehl
Variable Wert
%s Die Position der su- oder sudo-Programmdatei
%u Der Benutzer
%g Die Gruppe
%c Der auszuführende Befehl

Feedback