CoQueryAuthenticationServices-Funktion (combaseapi.h)

Ruft eine Liste der Authentifizierungsdienste ab, die beim Prozess CoInitializeSecurity registriert wurden.

Syntax

HRESULT CoQueryAuthenticationServices(
  [out] DWORD                       *pcAuthSvc,
  [out] SOLE_AUTHENTICATION_SERVICE **asAuthSvc
);

Parameter

[out] pcAuthSvc

Ein Zeiger auf eine Variable, die die Anzahl der im asAuthSvc-Array zurückgegebenen Einträge empfängt.

[out] asAuthSvc

Ein Zeiger auf ein Array von SOLE_AUTHENTICATION_SERVICE Strukturen. Die Liste wird über einen Aufruf der CoTaskMemAlloc-Funktion zugeordnet. Der Aufrufer muss die Liste freigeben, wenn er damit fertig ist, indem er die CoTaskMemFree-Funktion aufruft .

Rückgabewert

Diese Funktion kann die Standardrückgabewerte E_INVALIDARG, E_OUTOFMEMORY und S_OK zurückgeben.

Hinweise

CoQueryAuthenticationServices ruft eine Liste der derzeit registrierten Authentifizierungsdienste ab. Wenn der Prozess CoInitializeSecurity aufruft, sind dies die dienste, die über diesen Aufruf registriert wurden. Wenn die Anwendung sie nicht aufruft, wird CoInitializeSecurity automatisch von COM aufgerufen, wobei das Standardsicherheitspaket registriert wird, wenn eine Schnittstelle zum ersten Mal gemarselt oder aufgehoben wird.

Diese Funktion gibt nur die bei CoInitializeSecurity registrierten Authentifizierungsdienste zurück. Es gibt nicht alle auf dem Computer installierten Authentifizierungsdienste zurück, aber EnumerateSecurityPackages tut dies . CoQueryAuthenticationServices ist in erster Linie für benutzerdefinierte Marshaller nützlich, um zu bestimmen, welcher Prinzipal eine Anwendung verwenden kann.

Verschiedene Authentifizierungsdienste unterstützen unterschiedliche Sicherheitsstufen. NTLMSSP unterstützt beispielsweise keine Delegierung oder gegenseitige Authentifizierung, während Kerberos dies tut. Die Anwendung ist nur für die Registrierung von Authentifizierungsdiensten verantwortlich, die die Features bereitstellen, die die Anwendung benötigt. Diese Funktion bietet eine Möglichkeit, herauszufinden, welche Dienste bei CoInitializeSecurity registriert wurden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile combaseapi.h (include Objbase.h)
Bibliothek Ole32.lib
DLL Ole32.dll

Weitere Informationen

CoInitializeSecurity

SOLE_AUTHENTICATION_SERVICE

Sicherheit in COM