Seite 1 von 1
Ermittlung von Administratorrechten
Verfasst: Dienstag 14. August 2007, 12:00
von hmueller
Hallo!
Gibt es eine Methode um herauszufinden, ob der Benutzer über lokale Adminrechte unter Windows verfügt bzw. ob der Prozess mit Adminrechten gestartet wurde?
pywin32 habe ich schon eingebunden im Projekt, aber ich finde nirgends eine vernünftige Beschreibung wie das gehen könnte.
Code: Alles auswählen
import ctypes
print ctypes.windll.shell32.IsUserAnAdmin()
liefert ja nur, ob der User Admin ist und nicht ob der Prozess Adminrechte hat. Oder gibt es da keine einfache Lösung?
Re: Ermittlung von Administratorrechten
Verfasst: Dienstag 14. August 2007, 12:28
von gerold
hmueller hat geschrieben:Gibt es eine Methode um herauszufinden, ob der Benutzer über lokale Adminrechte unter Windows verfügt bzw. ob der Prozess mit Adminrechten gestartet wurde?
Hallo hmueller!
Ich denke mal, "IsUserAnAdmin()" testet nicht ob der angemeldete Benutzer ein Admin ist, sondern ob der soeben laufende Prozess im Kontext eines Admin gestartet wurde.
Ich kann mich auch täuschen. Das lässt sich aber ziemlich einfach ausprobieren. Starte dein Programm über den Taskmanager unter einem anderen Benutzernamen ohne Admin-Rechte. Dann siehst du ja was "in eine Datei geloggt" wurde, für die der Benutzer das Schreibrecht hat.
Oder du legst dir einen Account zu, der keine Admin-Rechte hat. Dein Programm kannst du dann über eine Verknüpfung starten. Dieser Verknüpfung kannst du dann explizit angeben, unter welchem Benutzernamen das Programm gestartet werden soll...
mfg
Gerold

Verfasst: Dienstag 14. August 2007, 12:38
von hmueller
Ok, danke.
Gibt es eigentlich sowas wie den erwähnten Befehl unter Linux auch?
Verfasst: Dienstag 14. August 2007, 12:56
von gerold
hmueller hat geschrieben:Gibt es eigentlich sowas wie den erwähnten Befehl unter Linux auch?
``whoami``?
EDIT:
EDIT2:
EDIT3:
mfg
Gerold

Verfasst: Dienstag 14. August 2007, 19:12
von Joghurt
Verfasst: Mittwoch 15. August 2007, 18:40
von hmueller
Danke sehr!