Freigeben über


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)

Siehe auch

ACCESS_MASK

ObjectPreCallback-