Freigeben über


SeCreateClientSecurity-Funktion (ntifs.h)

Die SeCreateClientSecurity-Routine initialisiert eine Sicherheitsclientkontextstruktur mit den Informationen, die zum Aufrufen von SeImpersonateClientEx erforderlich sind.

Syntax

NTSTATUS SeCreateClientSecurity(
  [in]  PETHREAD                     ClientThread,
  [in]  PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos,
        BOOLEAN                      RemoteSession,
  [out] PSECURITY_CLIENT_CONTEXT     ClientContext
);

Parameter

[in] ClientThread

Zeiger auf den Thread des Clients, der identitätswechselt werden soll.

[in] ClientSecurityQos

Zeiger auf eine vom Aufrufer zugeordnete SECURITY_QUALITY_OF_SERVICE Struktur, die angibt, welche Form des Identitätswechsels ausgeführt werden soll.

RemoteSession

Legen Sie auf TRUE fest, wenn der Server der Clientanforderung remote ist.

[out] ClientContext

Zeiger auf eine vom Aufrufer zugeordnete SECURITY_CLIENT_CONTEXT Struktur, die initialisiert werden soll.

Rückgabewert

Rückgabecode Beschreibung
STATUS_SUCCESS Der Sicherheitsclientkontext wurde erfolgreich initialisiert.
STATUS_BAD_IMPERSONATION_LEVEL Der Client, der identitätswechseln soll, nimmt derzeit die Identität eines eigenen Clients an, und eine der folgenden Werte trifft zu: (1) Das effektive Token des Clients kann nicht zur Verwendung durch einen anderen Server übergeben werden, da seine Identitätswechselebene SecurityAnonymous oder SecurityIdentification ist. (2) ServerIsRemote ist TRUE, und der Clientthread nimmt die Identität seines Clients auf einer anderen Als SecurityDelegation-Ebene an.

Hinweise

SeCreateClientSecurity initialisiert einen Clientsicherheitskontextblock, um den Sicherheitskontext eines Clients darzustellen.

Wenn das ContextTrackingMode-Element von ClientSecurityQos auf SECURITY_DYNAMIC_TRACKING und ServerIsRemote auf FALSE festgelegt ist, verwendet SeCreateClientSecurity einen Verweis auf das effektive Token des Clients. Andernfalls erstellt SeCreateClientSecurity eine Kopie des Tokens des Clients.

Jeder Aufruf von SeCreateClientSecurity muss durch einen nachfolgenden Aufruf von SeDeleteClientSecurity abgeglichen werden.

Weitere Informationen zur Sicherheit und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und in der Dokumentation zu diesen Themen im Windows SDK.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Weitere Informationen

SeDeleteClientSecurity

SeImpersonateClientEx