Método IServerSecurity::QueryBlanket (objidl.h)
Recupera informações sobre o cliente que invocou um dos métodos do servidor.
Sintaxe
HRESULT QueryBlanket(
[out] DWORD *pAuthnSvc,
[out] DWORD *pAuthzSvc,
[out] OLECHAR **pServerPrincName,
[out] DWORD *pAuthnLevel,
[out] DWORD *pImpLevel,
[out] void **pPrivs,
[in, out] DWORD *pCapabilities
);
Parâmetros
[out] pAuthnSvc
Um ponteiro para o serviço de autenticação atual. Esse será um único valor obtido da lista de constantes de serviço de autenticação. Se o chamador especificar NULL, o serviço de autenticação atual não será recuperado.
[out] pAuthzSvc
Um ponteiro para uma variável que recebe o serviço de autorização atual. Esse será um único valor da lista de constantes de autorização. Se o chamador especificar NULL, o serviço de autorização atual não será recuperado.
[out] pServerPrincName
O nome da entidade de segurança atual. A cadeia de caracteres será alocada pelo chamador usando CoTaskMemAlloc e deverá ser liberada pelo chamador usando CoTaskMemFree. Por padrão, os nomes de entidade de segurança do Schannel estarão no formulário msstd. O formulário completo será retornado se EOAC_MAKE_FULLSIC for especificado no parâmetro pCapabilities . Para obter mais informações sobre os formulários msstd e fullsic, consulte Nomes de entidade de segurança. Se o chamador especificar NULL, o nome da entidade de segurança atual não será recuperado.
[out] pAuthnLevel
Um ponteiro para uma variável que recebe o nível de autenticação atual. Esse será um único valor obtido da lista de constantes de nível de autenticação. Se o chamador especificar NULL, o nível de autenticação atual não será recuperado.
[out] pImpLevel
Esse parâmetro deve ser NULL.
[out] pPrivs
As informações de privilégio para o aplicativo cliente. O formato da estrutura à qual o identificador se refere depende do serviço de autenticação. O aplicativo não deve gravar nem liberar a memória. As informações só são válidas durante a chamada atual. Para NTLMSSP e Kerberos, essa é uma estrutura SEC_WINNT_AUTH_IDENTITY ou SEC_WINNT_AUTH_IDENTITY_EX . Para o Schannel, essa é uma estrutura CERT_CONTEXT que representa o certificado do cliente. Se o cliente não tiver certificado, NULL será retornado. Se o chamador especificar NULL, as informações de privilégio atuais não serão recuperadas.
[in, out] pCapabilities
Os recursos da chamada. Para solicitar que o nome da entidade de segurança seja retornado de forma completa se Schannel for o serviço de autenticação, o chamador poderá definir o sinalizador EOAC_MAKE_FULLSIC nesse parâmetro. Se o chamador especificar NULL, os recursos atuais não serão recuperados.
Retornar valor
Esse método pode retornar os valores de retorno padrão E_INVALIDARG, E_OUTOFMEMORY e S_OK.
Comentários
QueryBlanket é usado pelo servidor para descobrir sobre o cliente que invocou um de seus métodos. Para obter um ponteiro para IServerSecurity para a chamada atual no thread atual, chame CoGetCallContext, especificando IID_IServerSecurity. Esse ponteiro de interface só pode ser usado no mesmo apartment que a chamada durante a chamada.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h (inclua ObjIdl.h) |