![]() |
OpenProcessToken + Access Denied
Hi,
Ich rufe ![]() für alle laufenden Prozesse. Bei einigen Prozessen (z.B System Prozess) gibt's jedoch ein "Access Denied" Laut msdn muss man "SACL Access Right" anpassen. ![]() Weiss jemand wie das geht? |
Re: OpenProcessToken + Access Denied
Such im Forum nach EnablePrivilege.
Die Konstanten sehen wie folgt aus:
Delphi-Quellcode:
{ WinNT.h, line 5004 }
//////////////////////////////////////////////////////////////////////// // // // NT Defined Privileges // // // //////////////////////////////////////////////////////////////////////// const SE_CREATE_TOKEN_NAME = 'SeCreateTokenPrivilege'; SE_ASSIGNPRIMARYTOKEN_NAME = 'SeAssignPrimaryTokenPrivilege'; SE_LOCK_MEMORY_NAME = 'SeLockMemoryPrivilege'; SE_INCREASE_QUOTA_NAME = 'SeIncreaseQuotaPrivilege'; SE_UNSOLICITED_INPUT_NAME = 'SeUnsolicitedInputPrivilege'; SE_MACHINE_ACCOUNT_NAME = 'SeMachineAccountPrivilege'; SE_TCB_NAME = 'SeTcbPrivilege'; SE_SECURITY_NAME = 'SeSecurityPrivilege'; SE_TAKE_OWNERSHIP_NAME = 'SeTakeOwnershipPrivilege'; SE_LOAD_DRIVER_NAME = 'SeLoadDriverPrivilege'; SE_SYSTEM_PROFILE_NAME = 'SeSystemProfilePrivilege'; SE_SYSTEMTIME_NAME = 'SeSystemtimePrivilege'; SE_PROF_SINGLE_PROCESS_NAME = 'SeProfileSingleProcessPrivilege'; SE_INC_BASE_PRIORITY_NAME = 'SeIncreaseBasePriorityPrivilege'; SE_CREATE_PAGEFILE_NAME = 'SeCreatePagefilePrivilege'; SE_CREATE_PERMANENT_NAME = 'SeCreatePermanentPrivilege'; SE_BACKUP_NAME = 'SeBackupPrivilege'; SE_RESTORE_NAME = 'SeRestorePrivilege'; SE_SHUTDOWN_NAME = 'SeShutdownPrivilege'; SE_DEBUG_NAME = 'SeDebugPrivilege'; SE_AUDIT_NAME = 'SeAuditPrivilege'; SE_SYSTEM_ENVIRONMENT_NAME = 'SeSystemEnvironmentPrivilege'; SE_CHANGE_NOTIFY_NAME = 'SeChangeNotifyPrivilege'; SE_REMOTE_SHUTDOWN_NAME = 'SeRemoteShutdownPrivilege'; SE_UNDOCK_NAME = 'SeUndockPrivilege'; SE_SYNC_AGENT_NAME = 'SeSyncAgentPrivilege'; SE_ENABLE_DELEGATION_NAME = 'SeEnableDelegationPrivilege'; SE_MANAGE_VOLUME_NAME = 'SeManageVolumePrivilege'; SE_IMPERSONATE_NAME = 'SeImpersonatePrivilege'; SE_CREATE_GLOBAL_NAME = 'SeCreateGlobalPrivilege'; |
Re: OpenProcessToken + Access Denied
Zitat:
Habe das SeSecurityPrivilege aktiviert. |
Re: OpenProcessToken + Access Denied
Was genau willst Du denn machen?
Einige System-Prozesse wirst Du nicht im herkömmlichen Sinne öffnen können. |
Re: OpenProcessToken + Access Denied
Möchte mit LookupAccountSid() den Benutzernamen eines Prozesses ermitteln.
OpenProcess(PROCESS_QUERY_INFORMATION,...) --> OpenProcessToken(...,TOKEN_QUERY,...) --> GetTokenInformation --> LookupAccountSid |
Re: OpenProcessToken + Access Denied
Wenn ich mich recht erinnere (bin gerade nicht unter Windows), dann geht das beim "System"-Prozess nicht...
|
Re: OpenProcessToken + Access Denied
Dann ist der Benutzername wahrscheinlich einfach "SYSTEM", so wie er im Task-Manager angezeigt wird.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz