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 |