RpcBindingInqAuthInfo-Funktion (rpcdce.h)

Die RpcBindingInqAuthInfo-Funktion gibt Authentifizierungs- und Autorisierungsinformationen aus einem Bindungshandle zurück.

Syntax

RPC_STATUS RpcBindingInqAuthInfo(
  RPC_BINDING_HANDLE       Binding,
  RPC_CSTR                 *ServerPrincName,
  unsigned long            *AuthnLevel,
  unsigned long            *AuthnSvc,
  RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,
  unsigned long            *AuthzSvc
);

Parameter

Binding

Serverbindungshandle, von dem Authentifizierungs- und Autorisierungsinformationen zurückgegeben werden.

ServerPrincName

Gibt einen Zeiger auf einen Zeiger auf den erwarteten Prinzipalnamen des Servers zurück, auf den in Binding verwiesen wird. Der Inhalt des zurückgegebenen Namens und seine Syntax werden vom verwendeten Authentifizierungsdienst definiert.

Geben Sie einen NULL-Wert an, um zu verhindern, dass RpcBindingInqAuthInfo den ServerPrincName-Parameter zurückgibt. In diesem Fall ruft die Anwendung die RpcStringFree-Funktion nicht auf.

AuthnLevel

Gibt einen Zeiger zurück, der auf die Authentifizierungsebene festgelegt ist, die für Remoteprozeduraufrufe mithilfe von Binding verwendet wird. Siehe Hinweis.

Geben Sie einen NULL-Wert an, um zu verhindern, dass die Funktion den AuthnLevel-Parameter zurückgibt.

Die im AuthnLevel-Parameter zurückgegebene Ebene kann sich von der Ebene unterscheiden, die angegeben wurde, wenn der Client die RpcBindingSetAuthInfo-Funktion aufgerufen hat. Diese Diskrepanz tritt auf, wenn die RPC-Laufzeitbibliothek die vom Client angegebene Authentifizierungsebene nicht unterstützt und automatisch auf die nächsthöhere Authentifizierungsebene aktualisiert wird.

AuthnSvc

Gibt einen Zeiger zurück, der auf den Authentifizierungsdienst festgelegt ist, der für Remoteprozeduraufrufe mithilfe von Binding angegeben ist. Siehe Hinweis.

Geben Sie einen NULL-Wert an, um zu verhindern, dass RpcBindingInqAuthInfo den AuthnSvc-Parameter zurückgibt.

AuthIdentity

Gibt einen Zeiger auf ein Handle auf die Datenstruktur zurück, die die Anmeldeinformationen für die Authentifizierung und Autorisierung des Clients enthält, die für Remoteprozeduraufrufe mit Bindung angegeben sind.

Geben Sie einen NULL-Wert an, um zu verhindern, dass RpcBindingInqAuthInfo den AuthIdentity-Parameter zurückgibt.

AuthzSvc

Gibt einen Zeiger zurück, der auf den Autorisierungsdienst festgelegt ist, der von der Clientanwendung angefordert wurde, die den Remoteprozeduraufruf bei der Bindung durchgeführt hat. Siehe Hinweis.

Geben Sie einen NULL-Wert an, um zu verhindern, dass RpcBindingInqAuthInfo den AuthzSvc-Parameter zurückgibt.

Hinweis Eine Liste der RPC-unterstützten Authentifizierungsdienste finden Sie unter Authentication-Service Constants.
 

Rückgabewert

Wert Bedeutung
RPC_S_OK
Der Aufruf war erfolgreich.
RPC_S_INVALID_BINDING
Das Bindungshandle war ungültig.
RPC_S_WRONG_KIND_OF_BINDING
Dies war die falsche Art der Bindung für den Vorgang.
RPC_BINDING_HAS_NO_AUTH
Die Bindung enthält keine Authentifizierungsinformationen.
 
Hinweis Eine Liste der gültigen Fehlercodes finden Sie unter RPC-Rückgabewerte.
 

Hinweise

Eine Clientanwendung ruft die RpcBindingInqAuthInfo-Funktion auf, um die Authentifizierungs- und Autorisierungsinformationen anzuzeigen, die einem Serverbindungshandle zugeordnet sind. Eine ähnliche Funktion, RpcBindingInqAuthInfoEx , stellt zusätzlich Informationen zur Sicherheitsqualität für das Bindungshandle bereit.

Die RPC-Laufzeitbibliothek belegt Arbeitsspeicher für den zurückgegebenen ServerPrincName-Parameter . Die Anwendung ist für den Aufruf der RpcStringFree-Funktion für diese zurückgegebene Argumentzeichenfolge verantwortlich.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile rpcdce.h (rpc.h einschließen)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll

Weitere Informationen

RpcBindingInqAuthClient

RpcBindingInqAuthInfoEx

RpcBindingInqOption

RpcBindingSetAuthInfo

RpcStringFree