Zitat von
kalmi01:
Oder Dein Prog macht selbst eine Abfrage á la
Benutzername:
Passwort:
und versucht sich dann die Berechtigungen zu holen:
Delphi-Quellcode:
var
AdminToken : Cardinal;
if LogonUser(PAnsiChar(USERNAME), // UserName
PAnsiChar(DOMAIN), // Domäne oder lokaler Rechner
PAnsiChar(PASSWORD), // Password
LOGON32_LOGON_BATCH or LOGON32_LOGON_NETWORK or LOGON32_LOGON_INTERACTIVE,
LOGON32_PROVIDER_DEFAULT,
AdminToken)
then begin
if ImpersonateLoggedOnUser(AdminToken)
then begin
// hier kommt Dein Prog.-Code hin
RevertToSelf; // zurückschalten zum angemeldeten Benutzer
end;
end;
*weißt* du, ob das sicher (immer) funktioniert, oder ist das nur ein theoretischer ansatz?
ich kenne das wirklich nur so, dass man ein programm mit den richtigen rechten starten kann, nicht aber dessen rechte zur laufzeit ändern kann.