Condividi tramite


Funzione CoQueryAuthenticationServices (combaseapi.h)

Recupera un elenco dei servizi di autenticazione registrati quando il processo denominato CoInitializeSecurity.

Sintassi

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

Parametri

[out] pcAuthSvc

Puntatore a una variabile che riceve il numero di voci restituite nella matrice asAuthSvc .

[out] asAuthSvc

Puntatore a una matrice di strutture SOLE_AUTHENTICATION_SERVICE . L'elenco viene allocato tramite una chiamata alla funzione CoTaskMemAlloc . Il chiamante deve liberare l'elenco al termine chiamando la funzione CoTaskMemFree .

Valore restituito

Questa funzione può restituire i valori restituiti standard E_INVALIDARG, E_OUTOFMEMORY e S_OK.

Commenti

CoQueryAuthenticationServices recupera un elenco dei servizi di autenticazione attualmente registrati. Se il processo chiama CoInitializeSecurity, questi sono i servizi registrati tramite tale chiamata. Se l'applicazione non la chiama, CoInitializeSecurity viene chiamata automaticamente da COM, registrando il pacchetto di sicurezza predefinito, la prima volta che viene eseguito il marshalling di un'interfaccia o non è stato eseguito il marshalling.

Questa funzione restituisce solo i servizi di autenticazione registrati con CoInitializeSecurity. Non restituisce tutti i servizi di autenticazione installati nel computer, ma EnumerateSecurityPackages . CoQueryAuthenticationServices è principalmente utile per i marshalling personalizzati, per determinare quali nomi di entità possono essere usati da un'applicazione.

Diversi servizi di autenticazione supportano diversi livelli di sicurezza. Ad esempio, NTLMSSP non supporta la delega o l'autenticazione reciproca mentre Kerberos lo esegue. L'applicazione è responsabile solo della registrazione dei servizi di autenticazione che forniscono le funzionalità necessarie per l'applicazione. Questa funzione consente di scoprire quali servizi sono stati registrati con CoInitializeSecurity.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione combaseapi.h (include Objbase.h)
Libreria Ole32.lib
DLL Ole32.dll

Vedi anche

Coinitializesecurity

SOLE_AUTHENTICATION_SERVICE

Sicurezza in COM