OB_PRE_CREATE_HANDLE_INFORMATION Struktur (wdm.h)
Die OB_PRE_CREATE_HANDLE_INFORMATION-Struktur stellt Informationen zu einer ObjectPreCallback- Routine zu einem Thread- oder Prozesshandle bereit, das geöffnet wird.
Syntax
typedef struct _OB_PRE_CREATE_HANDLE_INFORMATION {
ACCESS_MASK DesiredAccess;
ACCESS_MASK OriginalDesiredAccess;
} OB_PRE_CREATE_HANDLE_INFORMATION, *POB_PRE_CREATE_HANDLE_INFORMATION;
Angehörige
DesiredAccess
Ein ACCESS_MASK Wert, der die Zugriffsrechte angibt, die für das Handle gewährt werden sollen. Standardmäßig entspricht dieses Element OriginalDesiredAccess, aber die ObjectPreCallback-Routine kann diesen Wert ändern, um den gewährten Zugriff einzuschränken.
Treiber können die folgenden Flags für Handles für Prozesse verwenden:
Flagge | Zulässige Vorgänge |
---|---|
PROCESS_CREATE_PROCESS | Erstellen Sie einen neuen untergeordneten Prozess des Prozesses. |
PROCESS_CREATE_THREAD | Erstellen Sie einen neuen Thread im Kontext des Prozesses. |
PROCESS_DUP_HANDLE | Duplizieren von Handles an oder aus dem Kontext des Prozesses, z. B. durch Aufrufen des Benutzermodus DuplicateHandle Routine. |
PROCESS_SET_QUOTA | Legen Sie die Arbeitssatzgröße für den Prozess fest, z. B. durch Aufrufen des Benutzermodus SetProcessWorkingSetSize Routine. |
PROCESS_SET_INFORMATION | Ändern Sie Prozesseinstellungen, z. B. durch Aufrufen des Benutzermodus SetPriorityClass Routine. |
PROCESS_SUSPEND_RESUME | Anhalten oder Fortsetzen des Vorgangs. |
PROCESS_TERMINATE | Beenden Sie den Prozess, z. B. durch Aufrufen des Benutzermodus TerminateProcess Routine.. |
PROCESS_VM_OPERATION | Ändern Sie den Adressraum des Prozesses, z. B. durch Aufrufen des Benutzermodus WriteProcessMemory und VirtualProtectEx Routinen. |
PROCESS_VM_WRITE | Schreiben Sie in den Adressraum des Prozesses, z. B. durch Aufrufen des Benutzermodus WriteProcessMemory Routine. |
Treiber können die folgenden Flags für Handles für Threads verwenden:
Flagge | Zulässige Vorgänge |
---|---|
THREAD_DIRECT_IMPERSONATION | Aktivieren Sie einen Serverthread, um einen seiner Clients zu imitieren. |
THREAD_IMPERSONATE | Identität des anonymen Anmeldetokens des Betriebssystems, z. B. durch Aufrufen des Benutzermodus ImpersonateAnonymousToken Routine. |
THREAD_SET_CONTEXT | Ändern Sie den Ausführungskontext des Threads, z. B. durch Aufrufen des Benutzermodus SetThreadContext Routine. |
THREAD_SET_INFORMATION | Ändern Sie Threadeinstellungen, z. B. durch Aufrufen des Benutzermodus SetThreadIdealProcessor Routine. Die vorgänge, die durch dieses Zugriffsrecht erlaubt sind, sind eine Obermenge derjenigen, die durch das THREAD_SET_LIMITED_INFORMATION Zugriffsrecht erlaubt sind. |
THREAD_SET_LIMITED_INFORMATION | Ändern Sie einen begrenzten Satz von Threadeinstellungen, z. B. durch Aufrufen des Benutzermodus SetThreadAffinityMask und SetThreadPriorityBoost Routinen. |
THREAD_SET_THREAD_TOKEN | Ändern Sie die Eigenschaften des Identitätswechseltokens des Threads, z. B. durch Aufrufen des Benutzermodus SetTokenInformation Routine. |
THREAD_SUSPEND_RESUME | Anhalten oder Fortsetzen des Threads, z. B. durch Aufrufen des Benutzermodus SuspendThread- und ResumeThread Routinen. |
THREAD_TERMINATE | Beenden Sie den Thread, z. B. durch Aufrufen des Benutzermodus TerminateThread Routine. |
OriginalDesiredAccess
Ein ACCESS_MASK Wert, der den ursprünglichen Zugriff angibt, der für das Handle angefordert wurde.
Bemerkungen
Sie können niemals Über das im DesiredAccess Mitglied angegebene Zugriffsrechte hinzufügen. Wenn das Zugriffsrecht als modifizierbare Kennzeichnung aufgeführt ist, kann das Zugriffsrecht entfernt werden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Windows Server 2008 und höheren Versionen des Windows-Betriebssystems. |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |