Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Benutzerkontext eines laufenden Programms wechseln (https://www.delphipraxis.net/75807-benutzerkontext-eines-laufenden-programms-wechseln.html)

Codewalker 25. Aug 2006 08:50


Benutzerkontext eines laufenden Programms wechseln
 
Hallo zusammen.

Ich habe ein Programm, das für seinen Betrieb zwingend Admin-Rechte vorraussetzt. Wenn es jetzt aber als eingeschränkter Benutzer gestartet wird, so soll es über Impersonation die Möglichkeit geben, über die Zugangsdaten eines Admin-Accounts dem Programm dessen Rechte zu geben. DAs ganze soll aber in ein einzelnes Programm. Im Moment ist es noch so, dass ich ein Hilfsprogramm nutze, das die Rechte ermittelt und dann evtl. die Impersonation durchführt und dann das Hauptprogramm startet. Gibt es eine Möglichkeit das Hilfsprogramm zu ersetzen und im Hauptprogramm in den Benutzerkontext Admins zu wechseln ohne das Programm neu starten zu müssen?

NicoDE 25. Aug 2006 09:02

Re: Benutzerkontext eines laufenden Programms wechseln
 
Im Zusammenhang mit UAC (Vista) wird IIRC extra darauf hingewiesen, dass man nicht ohne das Erzeugen eines neuen Prozesses auskommt.
Insofern wird es wohl darauf hinauslaufen, dass du das Hilfsprogramm nur loswirst, wenn du dessen Funktionalität ins Hauptprogramm übernimmst.

ps: übrigens sind die meisten IsAdmin()-Funktionen mangelhaft - siehe http://www.delphipraxis.net/internal...=559893#559893 ff.

Luckie 25. Aug 2006 13:45

Re: Benutzerkontext eines laufenden Programms wechseln
 
Guckst du hier: http://www.michael-puff.de/Developer...ersonate.shtml

Aber die Bemerkung von Nico würde ich im Kopf behalten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz