CGI-Programme (exe) lauften unter "SYSTEM" - änderbar???
Frank Reinecke
- cgi
Hallo!
Ich versuche, das tool HFNetChk.exe von Microsoft (sucht patch-würdige Rechner) in ein CGI-Formular einbinden, wo jeder User seinen Rechner testen kann. Man kann das HFNetChk-Tool per User und Passwort auch Remote-Rechner checken lassen, und <das ist der Witz dabei> das geht auch ohne Probleme VON DER SHELL (Windows 2000, CMD; also konkret HFNetChk.exe \123.123.123.123 -u USER -p PWD), ABER wenn ich das gleiche (gleicher Rechner, sprich: der Server) per CGI aus einem Perl-Script per exec oder system("") oder mit "backticks" (also: hfnetchk.exe...
) machen, geht es nicht, weil diese "exe" immer unter dem User "SYSTEM" gestartet wird, die ihre Rechte wohl nicht ändern kann.
-> versteht das überhaupt irgendwer???
Naja, egal, meine Frage:
Kann man das ändern, sprich: Dem Server (Perl) sagen, wie er "exe" zu starten hat? Hab mal an "run as" gedacht, aber das ist auch ziemlich hakelig, weil die Optionen da nicht so gut übergeben werden können und ich würde das auch gerne ohne temp-batch-file machen ;o)
Für jede Idee dankbar....
Frank ;o)
hallo Frank,
-> versteht das überhaupt irgendwer?
Andeutungsweise, ja. Bloß was _du_ jetzt wirklich machen möchtest, steht in deiner etwas verquer formulierten Frage nicht drin. Was soll also passieren? Soll ein Besucher deiner Webseite dieses Microsoft-Tool bei sich ausführen können?
Wenn das so ist, so geht das tatsächlich, wenn auch mit allerhand Umwegen über ActiveX-Controls. Nur muß dein "Seitenbesucher" dieses Teil genau dort installiert haben, wo du es voraussetzt, und er muß genau das System - z.B. WindowsXP mit Servicepack1 - fahren, das du meinst.
Die "remote"-Eigenschaften von HFNetChk.exe sind begrenzt, dein Provider müßte dir, wenn du es wirklich als "CGI" laufen lassen möchtest, gestatten, deinen Webspace zu verlassen und auf der Provider-Hardware _unmittelbar_ einen bzw. mehrere Konsolenbefehle auszuführen - ich kenne keinen, der so etwas zuläßt, weil das bedeutet, daß dir "Provider-Rechte" eingeräumt werden müßten. So einfach wie mit PERL oder PHP funktioniert das bei dem von dir gewünschten Programm nicht.
Und selbst wenn: was versprichst du dir davon? Den Check des " security patch status of your Windows NT/2000/XP machines" kann man auch ohne dieses Ding online bei Microsoft vornehmen lassen (Windows Update), und mehr macht es ja nicht.
Kann man das ändern, sprich: Dem Server (Perl) sagen, wie er "exe" zu starten hat?
Nein - jedenfalls nicht so, wie du es scheinbar möchtest. Bei entsprechender Serverkonfiguration können "exe"-Dateien durchaus als CGI-Programme laufen, aber es scheint, als ob dir etwas anderes vorschwebt, und so etwas kannst du als "user" auch nicht in einer .htaccess einstellen.
Dein "Server" ist übrigens nicht PERL. PERL ist ein Softwarepaket, das neben vielen anderen Dingen auch einen Interpreter enthält, der bei entsprechender Rechnerkonfiguration von einem installierten Webserver mit bestimmten Aufgaben betraut werden kann.
Laß es lieber. Oder erkläre genau, warum du das unbedingt so haben möchtest und überlege, ob es nicht andere webtauglichere Mittel gibt, um dein Ziel zu erreichen.
Grüße aus Berlin
Christoph S.