CAccessToken::OpenRPCClientToken

Rufen Sie diese Methode aus einem Server, der auf einen Aufruf von einem RPC-Clienten behandelt, um CAccessToken mit dem Zugriffstoken vom Client zu initialisieren.

bool OpenRPCClientToken(
   RPC_BINDING_HANDLE BindingHandle,
   DWORD dwDesiredAccess,
   bool bImpersonate = false,
   bool bOpenAsSelf = true
) throw(...);

Parameter

  • BindingHandle
    Binden von Handle auf dem Server, der eine Bindung an einen Client darstellt.

  • dwDesiredAccess
    Gibt eine Zugriffsmaske an, die die angeforderten Typen des Zugriffs auf das Zugriffstoken angibt.Diese angeforderten Zugriffstypen werden mit dem DACL des Tokens verglichen, um zu bestimmen, das Zugriff erteilt oder verweigert wurden.

  • bImpersonate
    Wenn true, der aktuelle Thread den aufrufenden RPC-Clienten imitiert, wenn dieser Aufruf erfolgreich abgeschlossen wird.Wenn false, das Zugriffstoken, aber geöffnet wird, der Thread ist kein Identitätstoken, wenn dieser Aufruf abgeschlossen wird.

  • bOpenAsSelf
    Gibt an, ob die Zugangsprüfung gemacht werden soll für den Sicherheitskontext des Threads, der die GetThreadToken-Methode aufruft oder für den Sicherheitskontext des Prozesses für den aufrufenden Thread.

    Wenn dieser Parameter falsch ist, wird die Zugangsprüfung mithilfe des Sicherheitskontexts für den aufrufenden Thread ausgeführt.Wenn der Thread einen Client imitiert, kann dieser Sicherheitskontext der eines Clientprozesses sein.Wenn dieser Parameter auf true festgelegt ist, wird die Zugangsprüfung mithilfe des Sicherheitskontexts des Prozesses für den aufrufenden Thread durchgeführt.

Rückgabewert

Gibt bei Erfolg true zurück, bei einem Fehler false.

Hinweise

CAutoRevertImpersonations-Klasse kann verwendet werden, um die imitierten Zugriffstoken automatisch wiederherzustellen, die mit dem Flag bImpersonateauf true erstellt werden, festlegen.

Anforderungen

Bibliothek: rpcrt4.lib

Siehe auch

Referenz

CAccessToken-Klasse

CAccessToken::OpenCOMClientToken

CAccessToken::OpenNamedPipeClientToken