Condividi tramite


Metodo IServerSecurity::QueryBlanket (objidlbase.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. Questo valore verrà ottenuto 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 dall'elenco delle 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 chiamante usando CoTaskMemAlloc e deve essere liberata dal chiamante usando CoTaskMemFree. Per impostazione predefinita, i nomi dell'entità Schannel saranno nel modulo msstd. Il modulo fullsic verrà restituito se EOAC_MAKE_FULLSIC viene specificato nel parametro pCapabilities . Per altre informazioni sui moduli msstd e fullsic, vedere Nomi entità. 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 ottenuto dall'elenco delle costanti a 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 usato 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 objidlbase.h (include ObjIdl.h)

Vedi anche

CoQueryClientBlanket

CoQueryProxyBlanket

IServerSecurity