Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Permite que um aplicativo de transporte consulte um pacote de segurança para determinados atributos de um contexto de segurança.
Para obter informações sobre como usar essa função com um SSP (provedor de suporte de segurança ) específico, consulte os tópicos a seguir.
| Tópico | Descrição |
|---|---|
| QueryContextAttributes (CredSSP) | Permite que um aplicativo de transporte consulte o CredSSP (Credential Security Support Provider) para determinados atributos de um contexto de segurança. |
| QueryContextAttributes (Resumo) | Permite que um aplicativo de transporte consulte o pacote de segurança Digest para determinados atributos de um contexto de segurança. |
| QueryContextAttributes (Kerberos) | Permite que um aplicativo de transporte consulte o pacote de segurança Kerberos para determinados atributos de um contexto de segurança. |
| QueryContextAttributes (Negociar) | Permite que um aplicativo de transporte consulte o pacote de segurança Negociar para determinados atributos de um contexto de segurança. |
| QueryContextAttributes (NTLM) | Permite que um aplicativo de transporte consulte o pacote de segurança NTLM para determinados atributos de um contexto de segurança. |
| QueryContextAttributes (Schannel) | Permite que um aplicativo de transporte consulte o pacote de segurança Schannel para determinados atributos de um contexto de segurança. |
Sintaxe
SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
_In_ PCtxtHandle phContext,
_In_ ULONG ulAttribute,
_Out_ PVOID pBuffer
);
Parâmetros
-
phContext [em]
-
Um identificador para o contexto de segurança a ser consultado.
-
ulAttribute [em]
-
Especifica o atributo do contexto a ser retornado. Este parâmetro pode ser um dos seguintes valores.
Valor Significado - SECPKG_ATTR_ACCESS_TOKEN
- 18
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_AccessToken .
Retorna um identificador para o token de acesso.- SECPKG_ATTR_APP_DATA
- 0x5e
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_SessionAppData .
Retorna ou especifica dados do aplicativo para a sessão.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_AUTHORITY
- 6
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Authority .
Consulta o nome da autoridade de autenticação.- SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
- 27
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_ClientSpecifiedTarget que representa o SPN (nome da entidade de serviço) do destino inicial fornecido pelo cliente.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_CONNECTION_INFO
- 0x5a
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_ConnectionInfo .
Retorna informações detalhadas sobre a conexão estabelecida.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_CREDS_2
- 0x80000086
O parâmetro pBuffer contém um ponteiro para uma estrutura de SecPkgContext_ClientCreds que especifica as credenciais do cliente.
Se a credencial do cliente for nome de usuário e senha, o buffer será uma estrutura de KERB_INTERACTIVE_LOGON compactada.
Se a credencial do cliente for nome de usuário e PIN de cartão inteligente, o buffer será uma estrutura de KERB_CERTIFICATE_LOGON compactada.
Se a credencial do cliente for uma credencial de identidade online, o buffer será uma estrutura de SEC_WINNT_AUTH_IDENTITY_EX2 empacotada.
Este atributo é suportado apenas no servidor CredSSP.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_DCE_INFO
- 3
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_DceInfo .
Consultas de dados de autorização usados pelos serviços DCE.- SECPKG_ATTR_ENDPOINT_BINDINGS
- 26
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Bindings que especifica informações de vinculação de canal.
Este atributo é suportado apenas pelo pacote de segurança Schannel.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_EAP_KEY_BLOCK
- 0x5b
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_EapKeyBlock .
Consultas de dados-chave usados pelo protocolo EAP TLS.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_FLAGS
- 14
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Flags .
Retorna informações sobre os sinalizadores de contexto negociados.- SECPKG_ATTR_ISSUER_LIST_EX
- 0x59
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_IssuerListInfoEx .
Retorna uma lista de emissores de certificados aceitos pelo servidor.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_KEY_INFO
- 5
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_KeyInfo .
Consulta informações sobre as chaves usadas em um contexto de segurança.- SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
- 30
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_LastClientTokenStatus que especifica se o token da chamada mais recente para a função InitializeSecurityContext é o último token do cliente.
Esse valor é suportado apenas pelos pacotes de segurançaNegociar, Kerberos e NTLM.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_LIFESPAN
- 2
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Lifespan .
Consulta o tempo de vida do contexto.- SECPKG_ATTR_LOCAL_CERT_CONTEXT
- 0x54
O parâmetro pBuffer contém um ponteiro para uma estrutura PCCERT_CONTEXT.
Localiza um contexto de certificado que contém um certificado final local.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_LOCAL_CRED
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_LocalCredentialInfo . (obsoleto)
Substituído por SECPKG_ATTR_LOCAL_CERT_CONTEXT.- SECPKG_ATTR_NAMES
- 1
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Names .
Consulta o nome associado ao contexto.- SECPKG_ATTR_NATIVE_NAMES
- 13
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_NativeNames .
Retorna o nome principal (CNAME) do tíquete de saída.- SECPKG_ATTR_NEGOTIATION_INFO
- 12
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_NegotiationInfo .
Retorna informações sobre o pacote de segurança a ser usado com o processo de negociação e o estado atual da negociação para o uso desse pacote.- SECPKG_ATTR_PACKAGE_INFO
- 10
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_PackageInfo .
Retorna informações sobre o SSP em uso.- SECPKG_ATTR_PASSWORD_EXPIRY
- 8
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_PasswordExpiry .
Retorna informações de expiração de senha.- SECPKG_ATTR_REMOTE_CERT_CONTEXT
- 0x53
O parâmetro pBuffer contém um ponteiro para uma estrutura PCCERT_CONTEXT.
Localiza um contexto de certificado que contém o certificado final fornecido pelo servidor.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_ROOT_STORE
- 0x55
O parâmetro pBuffer contém um ponteiro para um HCERTCONTEXT. Localiza um contexto de certificado que contém um certificado fornecido pelo armazenamento raiz. - SECPKG_ATTR_SESSION_KEY
- 9
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_SessionKey .
Retorna informações sobre as chaves de sessão.- SECPKG_ATTR_SESSION_INFO
- 0x5d
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_SessionInfo .
Retorna informações sobre a sessão.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_SIZES
- 0
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Sizes .
Consulta os tamanhos das estruturas usadas nas funções por mensagem.- SECPKG_ATTR_STREAM_SIZES
- 4
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_StreamSizes .
Consulta os tamanhos das várias partes de um fluxo usado nas funções por mensagem.
Este atributo é suportado apenas pelo pacote de segurança Schannel.- SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
- 124
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_SubjectAttributes .
Esse valor retorna informações sobre os atributos de segurança para a conexão.
Esse valor é suportado somente no servidor CredSSP.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_SUPPORTED_SIGNATURES
- 0x66
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_SupportedSignatures .
Esse valor retorna informações sobre os tipos de assinatura suportados para a conexão.
Esse valor é suportado apenas pela delegação restrita do Schannel.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado.- SECPKG_ATTR_TARGET_INFORMATION
- 17
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_TargetInformation .
Retorna informações sobre o nome do servidor remoto.- SECPKG_ATTR_UNIQUE_BINDINGS
- 25
O parâmetro pBuffer contém um ponteiro para uma estrutura SecPkgContext_Bindings que especifica informações de vinculação de canal.
Esse valor é suportado apenas pela delegação restrita do Schannel.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Este valor não é suportado. -
pBuffer [saída]
-
Um ponteiro para uma estrutura que recebe os atributos. O tipo de estrutura apontada depende do valor especificado no parâmetro ulAttribute .
Valor de retorno
Se a função for bem-sucedida, o valor de retorno será SEC_E_OK.
Se a função falhar, o valor de retorno será um código de erro diferente de zero.
Observações
A estrutura apontada pelo parâmetro pBuffer varia dependendo do atributo que está sendo consultado. O chamador deve alocar a própria estrutura pBuffer , mas o SSP aloca qualquer memória necessária para armazenar membros de tamanho variável da estrutura pBuffer . A memória alocada pelo SSP pode ser liberada chamando a função FreeContextBuffer .
Depois que o valor SECPKG_ATTR_REMOTE_CERT_CONTEXT ou SECPKG_ATTR_LOCAL_CERT_CONTEXT tiver sido lido, o membro hCertStore será definido como um identificador para um armazenamento de certificados que contém os certificados intermediários, se houver. Além disso, o aplicativo é responsável por chamar CertFreeCertificateContext para liberar a memória usada pelo contexto de certificado.
Requerimentos
| Requisito | Valor |
|---|---|
| Cliente mínimo suportado |
Windows XP [apenas aplicações de ambiente de trabalho] |
| Servidor mínimo suportado |
Windows Server 2003 [apenas aplicações de ambiente de trabalho] |
| Cabeçalho |
|
| Biblioteca |
|
| DLL |
|
| Nomes Unicode e ANSI |
QueryContextAttributesW (Unicode) e QueryContextAttributesA (ANSI) |
Ver também
Suporte à Proteção Estendida para Autenticação (EPA) em um serviço