RpcBindingInqAuthInfoExA-Funktion (rpcdce.h)

Die RpcBindingInqAuthInfoEx-Funktion gibt Authentifizierungs-, Autorisierungs- und Sicherheitsqualitätsinformationen aus einem Bindungshandle zurück.

Syntax

RPC_STATUS RpcBindingInqAuthInfoExA(
  RPC_BINDING_HANDLE       Binding,
  RPC_CSTR                 *ServerPrincName,
  unsigned long            *AuthnLevel,
  unsigned long            *AuthnSvc,
  RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,
  unsigned long            *AuthzSvc,
  unsigned long            RpcQosVersion,
  RPC_SECURITY_QOS         *SecurityQOS
);

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 Bindung 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 RpcBindingInqAuthInfoEx 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 mit Bindung verwendet wird. Eine Liste der RPC-unterstützten Authentifizierungsstufen finden Sie unter Konstanten auf Authentifizierungsebene. Geben Sie einen NULL-Wert an, um zu verhindern, dass die Funktion den AuthnLevel-Parameter zurückgibt .

Die im Parameter AuthnLevel zurückgegebene Ebene unterscheidet sich möglicherweise von der Ebene, die angegeben wurde, als der Client die RpcBindingSetAuthInfoEx-Funktion aufgerufen hat. Diese Diskrepanz tritt auf, wenn die RPC-Laufzeitbibliothek die vom Client angegebene Authentifizierungsebene nicht unterstützt und automatisch auf die nächst höhere Authentifizierungsebene aktualisiert wird.

AuthnSvc

Gibt einen Zeiger zurück, der auf den Authentifizierungsdienst festgelegt ist, der für Remoteprozeduraufrufe mit Bindung angegeben ist. Eine Liste der von RPC unterstützten Authentifizierungsdienste finden Sie unter Authentication-Service Constants.

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

AuthIdentity

Gibt einen Zeiger auf ein Handle auf die Datenstruktur zurück, das 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 RpcBindingInqAuthInfoEx 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 für Bindung durchgeführt hat. Eine Liste der von RPC unterstützten Authentifizierungsdienste finden Sie unter Authentication-Service Constants.

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

RpcQosVersion

Übergibt den Wert der aktuellen Version (erforderlich für die Vorwärtskompatibilität, wenn Erweiterungen für diese Funktion vorgenommen werden). Legen Sie diesen Parameter immer auf RPC_C_SECURITY_QOS_VERSION fest.

SecurityQOS

Gibt den Zeiger auf die RPC_SECURITY_QOS-Struktur zurück, die Quality-of-Service-Einstellungen definiert.

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 RpcBindingInqAuthInfoEx-Funktion auf, um die Authentifizierungs- und Autorisierungsinformationen anzuzeigen, die einem Serverbindungshandle zugeordnet sind. Diese Funktion bietet die Möglichkeit, die Sicherheitsqualität des Diensts für den Bindungshandle zu erfragen. Sie ist andernfalls mit RpcBindingInqAuthInfo identisch.

Die RPC-Laufzeitbibliothek weist Arbeitsspeicher für den zurückgegebenen ServerPrincName-Parameter zu. Die Anwendung ist dafür verantwortlich, die RpcStringFree-Funktion für diese zurückgegebene Argumentzeichenfolge aufzurufen.

Hinweis

Der rpcdce.h-Header definiert RpcBindingInqAuthInfoEx als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

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 (include Rpc.h)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll

Weitere Informationen

RPC_SECURITY_QOS

RpcBindingSetAuthInfoEx

RpcStringFree