Ist es möglich, die Erlaubnis eines Programms in Windows zu erhöhen, ohne "Als Administrator ausführen" zu verwenden?

890
billoreid

Ich habe eine MSI, die mit Administratorberechtigungen ausgeführt werden muss. Dieses Installationsprogramm führt einige Verwaltungsaufgaben aus und fügt eventuell eine Verknüpfung auf dem Desktop des Benutzers ein. Wenn ich das Installationsprogramm auf "Als Administrator ausführen" eingestellt habe, wird das MSI tatsächlich unter dem Profil des Administratorkontos ausgeführt. Die Verknüpfung wird unter dem Desktop des Administrators und nicht unter dem Desktop des Benutzers abgelegt.

Ist es möglich, das Installationsprogramm mit erhöhten Berechtigungen auszuführen (nicht als Administrator ausführen), wodurch Administratoranmeldeinformationen abgefragt werden, das Installationsprogramm jedoch unter dem Profil des Benutzers ohne Administratorberechtigung ausgeführt wird, sodass Verknüpfungen, neue Ordner, neue Dateien usw. eingefügt werden der Standort des Nicht-Admin-Benutzers?

3
Soweit ich weiß, sind "Ausführen mit erhöhten Berechtigungen" und "Ausführen als Administrator" nur verschiedene Arten, das Gleiche zu sagen. Ich weiß jedoch, dass ich an einem Installer gearbeitet habe, dass ausführbare Dateien, deren Namen 'setup' oder 'install' (oder das lokalisierte Äquivalent) enthalten, automatisch mit erhöhten Berechtigungen ausgeführt werden, nur weil Installer dies tun müssen. RobH vor 9 Jahren 0
"Als Administrator ausführen" erhöht den Prozess und führt den Prozess als anderer Benutzer aus. Ja, es gibt einen Unterschied, selbst als Administratorbenutzer müssen Sie manchmal einen Prozess erhöhen. Ramhound vor 9 Jahren 0
Warum versucht ein Nicht-Admin-Benutzer, eine MSI auszuführen, für die eine Erhöhung erforderlich ist? kreemoweet vor 9 Jahren 1
@Ramhound - Sie sagen also, dass das Erhöhen des Prozesses einfach bedeutet, den Prozess als einen anderen Benutzer auszuführen, der über Administratorrechte verfügt? billoreid vor 9 Jahren 0
@kreemoweet - Die Softwareanwendung kann ohne Administratorrechte ausgeführt werden. Für die Installation aller Elemente, die die Software benötigt, sind jedoch Administratorrechte erforderlich. Ich brauche also einen Administrator für die Installation, der Benutzer kann die Software jedoch von seinem Profilstandort aus ausführen. billoreid vor 9 Jahren 0
@billoreid Ja, es passiert einfach, dass der "andere Benutzer", wenn er ein Mitglied der Administratorengruppe ist, den gleichen Benutzernamen und dasselbe Benutzerprofil ausführt. Es wird immer noch als "anderer Benutzer" betrachtet und hat subtile Nebenwirkungen. Zum Beispiel verschwinden zugeordnete Laufwerke für den erhöhten Prozess. Dies geschieht, weil zugeordnete Laufwerke "pro Benutzer" sind und weil Sie als "ein anderer Benutzer (obwohl er denselben Benutzernamen hat)" ausgeführt werden, die Zuordnungen nicht vorhanden sind. Scott Chamberlain vor 9 Jahren 1
@ billoreid - wo habe ich das gesagt? Ich sagte "als Administrator ausführen". Das, was Sie in Ihrer Frage gesagt haben, ist nicht gleichbedeutend mit der Erhöhung des Privilegs eines Prozesses. Man startet einen Prozess mit erhöhten Berechtigungen als anderer Benutzer. Der andere erhöht einen bereits vorhandenen Prozess, indem er die Berechtigungen eines anderen Benutzers mit höheren Berechtigungen verwendet. Sie sind ähnlich, aber es gibt einen Unterschied zwischen den beiden Aktionen. Ramhound vor 9 Jahren 0
@Ramhound - Das habe ich mir gedacht, aber wie geht das in Windows? Wie kann ich einen Prozess mit erhöhten Berechtigungen ausführen, ohne den Prozess als anderen Benutzer auszuführen? Ich denke, ich sollte meine Titelfrage dahingehend ändern, da ich das wirklich frage. billoreid vor 9 Jahren 0
@billoreid - Der Benutzer, der den Prozess ausführt, muss über diese erhöhten Berechtigungen verfügen, um den Prozess als diesen Benutzer anstelle eines anderen Benutzers zu erhöhen. Ramhound vor 9 Jahren 1

1 Antwort auf die Frage

1
JSanchez

Sie haben zwei Möglichkeiten, die Sie besuchen könnten.

  1. Finden Sie heraus, ob das MSI die ALLUSERS-Eigenschaft unterstützt, was genau das tun würde: Platzieren Sie Verknüpfungen auf dem Desktop aller Benutzer. Wahrscheinlich der sicherste und schnellste Weg zur Implementierung Ihrer Bereitstellung.
  2. Ändern Sie das MakeMeAdmin-Skript von Aaron Margosis, das einen Benutzer vorübergehend der Gruppe "Administratoren" hinzufügt und diese entfernt, sobald das Programm gestartet wird. Dazu sind jedoch zwei Kennworteingaben erforderlich: eines vom Administrator und eines des Benutzers, den Sie gerade zu einem lokalen Administrator angehoben haben.

Hoffentlich hilft das.

# 1 möchte ich idealerweise machen, aber für die Installation sind Administratorrechte erforderlich, da andere Software und ein Windows-Dienst installiert werden. # 2 scheint eine sehr gute Option zu sein, die nur einen minimalen Einsatz eines Administrators erfordert. billoreid vor 9 Jahren 0