Metodo IServerSecurity::QueryBlanket (objidl.h)
Recupera informazioni sul client che ha richiamato uno dei metodi del server.
Sintassi
HRESULT QueryBlanket(
[out] DWORD *pAuthnSvc,
[out] DWORD *pAuthzSvc,
[out] OLECHAR **pServerPrincName,
[out] DWORD *pAuthnLevel,
[out] DWORD *pImpLevel,
[out] void **pPrivs,
[in, out] DWORD *pCapabilities
);
Parametri
[out] pAuthnSvc
Puntatore al servizio di autenticazione corrente. Si tratta di un singolo valore ricavato dall'elenco delle costanti del servizio di autenticazione. Se il chiamante specifica NULL, il servizio di autenticazione corrente non viene recuperato.
[out] pAuthzSvc
Puntatore a una variabile che riceve il servizio di autorizzazione corrente. Si tratta di un singolo valore dell'elenco di costanti di autorizzazione. Se il chiamante specifica NULL, il servizio di autorizzazione corrente non viene recuperato.
[out] pServerPrincName
Nome dell'entità corrente. La stringa verrà allocata dal chiamato tramite CoTaskMemAlloc e deve essere liberata dal chiamante usando CoTaskMemFree. Per impostazione predefinita, i nomi delle entità Schannel saranno nel formato msstd. Il modulo fullsic verrà restituito se EOAC_MAKE_FULLSIC è specificato nel parametro pCapabilities . Per altre informazioni sui moduli msstd e fullsic, vedere Principal Names.For more information on the msstd and fullsic forms, see Principal Names. Se il chiamante specifica NULL, il nome dell'entità corrente non viene recuperato.
[out] pAuthnLevel
Puntatore a una variabile che riceve il livello di autenticazione corrente. Si tratta di un singolo valore ricavato dall'elenco delle costanti del livello di autenticazione. Se il chiamante specifica NULL, il livello di autenticazione corrente non viene recuperato.
[out] pImpLevel
Questo parametro deve essere NULL.
[out] pPrivs
Informazioni sui privilegi per l'applicazione client. Il formato della struttura a cui fa riferimento l'handle dipende dal servizio di autenticazione. L'applicazione non deve scrivere o liberare la memoria. Le informazioni sono valide solo per la durata della chiamata corrente. Per NTLMSSP e Kerberos, si tratta di una struttura SEC_WINNT_AUTH_IDENTITY o SEC_WINNT_AUTH_IDENTITY_EX . Per Schannel, si tratta di una struttura CERT_CONTEXT che rappresenta il certificato del client. Se il client non ha alcun certificato, viene restituito NULL . Se il chiamante specifica NULL, le informazioni sui privilegi correnti non vengono recuperate.
[in, out] pCapabilities
Funzionalità della chiamata. Per richiedere che il nome dell'entità venga restituito in formato fullsic se Schannel è il servizio di autenticazione, il chiamante può impostare il flag EOAC_MAKE_FULLSIC in questo parametro. Se il chiamante specifica NULL, le funzionalità correnti non vengono recuperate.
Valore restituito
Questo metodo può restituire i valori restituiti standard E_INVALIDARG, E_OUTOFMEMORY e S_OK.
Commenti
QueryBlanket viene usato dal server per scoprire il client che ha richiamato uno dei relativi metodi. Per ottenere un puntatore a IServerSecurity per la chiamata corrente nel thread corrente, chiamare CoGetCallContext, specificando IID_IServerSecurity. Questo puntatore di interfaccia può essere utilizzato solo nello stesso appartamento della chiamata per la durata della chiamata.
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 | objidl.h (include ObjIdl.h) |