Wie starte ich eine GUI-Windows-Anwendung mit Administratorrechten, ohne den Benutzer nach dem Kennwort zu fragen?


5

Der Benutzer, der den Computer verwendet, meldet sich über eine Active Directory-Domäne beim Windows 7 Professional-System an und hat keine Administratorrechte.

Ich bin der Administrator und kann ihm die Rechte erteilen, aber aus offensichtlichen Gründen nicht.

Der Benutzer muss eine spezielle Anwendung (ein Überwachungs-Dashboard) verwenden, die lokale Administratorrechte erfordert.

Daher muss der Benutzer in der Lage sein, diese (und nur diese) bestimmte Anwendung im Modus mit erhöhten Rechten auszuführen, ohne das Kennwort zu kennen. (Es macht mir nichts aus, sie für diese Verknüpfung einzugeben und zu speichern, aber ich konnte keine solche Option finden.) . Und / oder (im Idealfall beide) die Anwendung, die nach dem Anmelden des Benutzers gestartet werden soll.

Ich verstehe, dass dies sowieso eine Sicherheitsverletzung sein wird, aber es gibt kaum eine Wahl.

Ich habe versucht, die Verknüpfungseigenschaften auf viele verschiedene Arten ohne Glück anzupassen - es werden immer noch Administratoranmeldeinformationen abgefragt.

Ich habe auch versucht, mit Task Scheduler zu experimentieren, aber das beste Ergebnis, das ich erzielt habe, ist, dass die Anwendung unsichtbar ausgeführt wird, ohne dass eine grafische Benutzeroberfläche angezeigt wird (in allen anderen Setups konnte die Task nur nicht gestartet werden).

Irgendwelche Vorschläge?


Ich denke, es ist nicht möglich, die Anwendung ohne Administratorrechte auszuführen. es sei denn, der Benutzer verfügt über Administratorrechte.
Dilshod

Antworten:


6

PROBLEM: Sie versuchen, diese Computer als verantwortungsbewusster Administrator auszuführen, indem Sie den Benutzern keine Administratorrechte erteilen, und ein beschissenes Unternehmen schreibt eine crappier-App, die Administratorrechte ausführen soll

LÖSUNG: Shim es! Verwenden Sie das Microsoft Application Compatibility Toolkit

Bei der Computerprogrammierung ist ein Shim (von Shim) oder Shiv eine kleine Bibliothek   Das fängt eine API transparent ab und ändert die Parameter   übergeben, verarbeitet die Operation selbst oder leitet die Operation um   anderswo. Sie beheben Kompatibilitätsprobleme für ältere Anwendungen, die   Verlassen Sie sich immer noch auf die ältere Funktionalität. In solchen Fällen die ältere API   kann immer noch durch eine dünne Kompatibilitätsschicht auf der Oberfläche unterstützt werden   neuerer Code. Unterlegscheiben werden zum Ausführen von Programmen mit unterschiedlicher Software verwendet   Plattformen, für die sie entwickelt wurden. (Quelle: Wikipedia)

I.E. Ein Programm, das für XP geschrieben wurde und darauf besteht, als Administrator ausgeführt zu werden Schauen Sie sich das Shimming der Anwendung an. Es ist wie der Jedi-Mind-Trick der IT. Unterlegscheiben ermöglichen es Ihnen, das Programm zu täuschen, dass es Administratorrechte hat. Wahrscheinlich muss es nur in c: \ program files \ crappy company \ crappy app oder in einen einzigen Registrierungsschlüssel geschrieben / gelesen werden.

http://blogs.technet.com/b/askperf/archive/2011/06/17/demystifying-shims-or-using-the-app-compat-toolkit-to-make-your-old-stuff-work- with-your-new-stuff.aspx

http://technet.microsoft.com/en-us/library/dd837644(v=ws.10).aspx


0

Sie können eine Aufgabe planen, die die Protokollaktivität überwacht (EventLog auf die Sicherheits-ID der erfolgreichen Anmeldung überprüfen), die Anwendung als Aufgabe starten und die ausgeführte Aufgabe in ein Administratorkonto ändern. Sie werden dann aufgefordert, das Kennwort einmal einzugeben, und es wird gespeichert.


In diesem Fall gehört der Prozess der Anwendung dem Administrator und der Benutzer kann ihn weder in der Prozessliste (im Task-Manager) noch in ... tada! noch das verdammte Fenster sehen! Das macht in meinem Fall keinen Sinn, da ich keine Hintergrundaufgabe ausführen muss. Der Benutzer muss das Anwendungsfenster sehen und es interaktiv verwenden können.
Ivan

Das Konfigurieren der Task für den Benutzer (nicht für den Administrator), jedoch mit den höchsten Berechtigungen, hilft auch nicht.
Ivan

Hmm ... Ich weiß auch, dass es funktioniert (weil ich die Remote-Installation auf PCs ausgelöst habe), indem ich psexec mit den folgenden Optionen verwende: PsExec.exe -s -i \\{hostname} cmd /c "start "" "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"" Ich habe versucht, eine .bat-Datei zu starten, die eine psexec.exe mit dem folgenden Schalter ausführt, und habe diese .bat-Datei als Administrator in Scheduler ausgeführt, aber das scheint nicht zu funktionieren. Ich brauche mehr Zeit, um das Problem zu beheben. In der Zwischenzeit können Sie die Anwendung auf Anforderung des Benutzers von Ihrem PC aus starten, indem Sie sie als Administratorkonto des Benutzer-PCs ausführen.
user2480011

Dieser Befehl funktioniert auch: PsExec.exe -i -s \\{hostname} -u {DOMAIN\USERNAME} -p {PASSWORD} cmd /c "start "" "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe""
user2480011
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.