2016-03-18 6 views
0

Innerhalb eines Tcl-Skript gibt es eine Möglichkeit, den Befehl "sesu username" (oder gleichwertig) zu ändern, um den Benutzer zu ändern, der das Tcl-Skript ausgeführt wird?Wie Benutzer aus Tcl-Datei ändern

Zum Beispiel habe ich laufe RunAnotherScript.tcl als Benutzer myusername (niedrige Berechtigungen) und will es sesu an Benutzer weblogic, weil die Nutzer die erforderlichen Berechtigungen haben ein anderes Skript auszuführen.

Ich bin ein Anfänger bei tcl ... also je mehr Informationen, desto besser.

Antwort

0

Tcl enthält diese Funktionalität nicht als Kernbefehl.

Allerdings ist es einfach, eine kompilierte Erweiterung zu schreiben, um sie hinzuzufügen in. Eine Referenzimplementierung von „setuid“ in der tclhttpd source

1

Wahrscheinlich zu tun die einfachste Sache zu finden ist, um die Befehle setzen, die sein sollen Führen Sie einen anderen Benutzer in einem separaten Skript aus. Dies hilft auch dabei, die Logik zwischen dem Benutzer mit niedriger Berechtigung und dem Benutzer mit hoher Berechtigung getrennt zu halten. Dann

exec sesu weblogic -c RunWebLogicScript.tcl