Estruturas de autenticação
As estruturas de autenticação são categorizadas de acordo com o uso da seguinte forma:
- Estruturas SSPI
- Estruturas Schannel
- Estruturas personalizadas de pacotes de segurança
- Estruturas de Provedores de Rede
- GINA Estruturas
- Estruturas da Autoridade de Segurança Local
- Estruturas de Gestão de Credenciais
- Estruturas de cartões inteligentes
Estruturas SSPI
As estruturas a seguir, definidas em Sspi.h, são usadas em funções SSPI.
Estrutura | Descrição |
---|---|
CREDSSP_CRED | Especifica dados de autenticação para pacotes de segurança Schannel e Negotiate |
SEC_WINNT_AUTH_IDENTITY | Usado para passar um nome de usuário e senha específicos para a biblioteca de tempo de execução para fins de autenticação. |
SEC_WINNT_AUTH_IDENTITY_EX | Contém informações sobre um usuário. Tanto um ANSI quanto Unicode forma dessa estrutura são fornecidos. |
SecBuffer | Buffer alocado por um aplicativo de transporte para passar para um pacote de segurança . |
SecBufferDesc | Matriz de estruturas de SecBuffer para passar de um aplicativo de transporte para um pacote de segurança. |
SecPkgContext_AccessToken | Contém um identificador para o token de acesso do contexto de segurança . |
SecPkgContext_ClientCreds | Especifica as credenciais do cliente ao chamar a funçãoQueryContextAttributes (CredSSP). |
SecPkgContext_ConnectionInfo | Contém informações de protocolo e cifra. Essa estrutura é usada pela funçãoQueryContextAttributes (General). |
SecPkgContext_CredentialName | Especifica o nome da credencial. |
SecPkgContext_DceInfo | Contém dados de autorização usados pelos serviços DCE. |
SecPkgContext_EapKeyBlock | Contém dados de chave usados pelo Protocolo de Autenticação EAP TLS. |
SecPkgContext_Flags | Contém informações sobre os sinalizadores no contexto de segurança. |
SecPkgContext_IssuerListInfoEx | Contém uma lista de autoridades de certificação confiáveis (CAs). |
SecPkgContext_Lifespan | Indica o tempo de vida de um contexto de segurança. |
SecPkgContext_Names | Contém o nome do usuário associado a um contexto de segurança. |
SecPkgContext_NativeNames | Contém os nomes principais do cliente e do servidor do tíquete de saída. |
SecPkgContext_NegotiationInfo | Contém informações sobre o pacote de segurança que está sendo configurado ou foi configurado. Também dá o status da negociação para configurar o pacote de segurança. |
SecPkgContext_PackageInfo | Contém o nome de um provedor de suporte de segurança (SSP). |
SecPkgContext_PasswordExpiry | Contém informações sobre a expiração de uma senha ou outra credencial. |
SecPkgContext_SessionKey | Contém informações sobre a chave de sessão. |
SecPkgContext_Sizes | Contém os tamanhos de estruturas importantes usadas nas funções de suporte de mensagens. |
SecPkgContext_StreamSizes | Contém os tamanhos dos vários atributos de fluxo para uso com as funções de suporte de mensagem. |
SecPkgContext_TargetInformation | Contém informações sobre a credencial usada para o contexto de segurança. |
SecPkgCredentials_Names | Contém o nome do usuário associado a um contexto . |
SecPkgInfo | Fornece informações gerais sobre um pacote de segurança , como seu nome e recursos. |
SECURITY_INTEGER | Estrutura para manter um valor numérico. É usado na definição de outros tipos. |
SecurityFunctionTable | Tabela de despacho que contém ponteiros para as funções definidas no SSPI. |
Estruturas Schannel
As estruturas a seguir são definidas para uso com Schannel.
Estrutura | Descrição |
---|---|
SCH_CRED_PUBLIC_CERTCHAIN | Contém um único certificado. Uma cadeia de certificação pode ser construída a partir deste certificado. |
SCH_CRED_SECRET_PRIVKEY | Contém chave privada informações necessárias para autenticar um cliente ou servidor. |
SCHANNEL_CERT_HASH | Contém os dados de armazenamento de hash para o certificado que o Schannel usa. |
SCHANNEL_CERT_HASH_STORE | Contém os dados de armazenamento de hash para o certificado que o Schannel usa no modo kernel. |
SCHANNEL_ALERT_TOKEN | Gera um alerta Secure Sockets Layer Protocol (SSL) ou Transport Layer Security Protocol (TSL) a ser enviado para o destino de uma chamada para a funçãoInitializeSecurityContext (Schannel) ou para a funçãoAcceptSecurityContext (Schannel). |
SCHANNEL_CLIENT_SIGNATURE | Especifica uma assinatura de cliente quando uma chamada para a funçãoInitializeSecurityContext (Schannel) não pode acessar a chave privada de um certificado de cliente (neste caso, a função retorna SEC_I_SIGNATURE_NEEDED). |
SCHANNEL_CRED | Contém os dados de uma credencial Schannel. |
SCHANNEL_SESSION_TOKEN | Especifica se as reconexões são habilitadas para uma sessão de autenticação criada chamando a funçãoInitializeSecurityContext (Schannel) ou a funçãoAcceptSecurityContext (Schannel). |
SecPkgContext_Authority | Contém o nome da autoridade de autenticação, se disponível. Pode ser uma autoridade de certificação (CA) ou o nome de um servidor ou domínio que autenticou a conexão. |
SecPkgContext_ConnectionInfo | Contém informações de protocolo e cifra. Essa estrutura é usada pela funçãoQueryContextAttributes (General). |
SecPkgContext_IssuerListInfoEx | Contém uma lista de autoridades de certificação confiáveis. |
SecPkgContext_KeyInfo | Contém informações sobre as chaves de sessão usadas em um contexto de segurança . Esta estrutura foi substituída pela estrutura SecPkgContext_ConnectionInfo. |
SecPkgContext_ProtoInfo | Contém informações sobre o protocolo em uso. |
SecPkgContext_SessionAppData | Armazena dados do aplicativo para um contexto de sessão. |
SecPkgCred_CipherStrengths | Contém a força mínima e máxima permitida para a cifra usada pela credencial Schannel especificada. |
SecPkgCred_SupportedAlgs | Contém identificadores para algoritmos permitidos com uma credencial Schannel especificada. |
SecPkgCred_SupportedProtocols | Indica os protocolos permitidos com uma credencial Schannel especificada. |
X509Certificate | Representa um certificado de X.509. |
Estruturas personalizadas de pacotes de segurança
O pacote de segurança personalizado usar as seguintes estruturas.
Estrutura | Descrição |
---|---|
LSA_SECPKG_FUNCTION_TABLE | Uma tabela de ponteiros para as funções LSA (Local Security Authority) que pacotes de segurança personalizados podem chamar. |
SECPKG_CALL_INFO | Contém informações sobre uma chamada de função em execução. |
SECPKG_CLIENT_INFO | Contém informações sobre o usuário de um pacote de segurança. |
SECPK_CONTEXT_THUNKS | Contém informações sobre chamadas para o pacote de segurança que serão executadas em processo com o LSA. |
SECPKG_DLL_FUNCTIONS | Contém as funções disponíveis para pacotes de segurança personalizados executados em processo com um aplicativo cliente/servidor. |
SECPKG_EVENT_DOMAIN_CHANGE | Contém de sessão e informações do computador. Este nome de estrutura é um alias para a estrutura SECPKG_PARAMETERS. |
SECPKG_EVENT_NOTIFY | Contém informações sobre um evento relacionado à segurança. |
SECPKG_EVENT_PACKAGE_CHANGE | Contém informações sobre disponibilidade e uso do pacote de segurança. |
SECPKG_EXTENDED_INFORMATION | Contém informações estendidas sobre o pacote de segurança. |
SECPKG_FUNCTION_TABLE | Contém ponteiros para as funções implementadas pelos pacotes de segurança. |
SECPKG_GSS_INFO | Contém informações sobre o GSS OID usado para identificar um pacote de segurança. |
SECPKG_MUTUAL_AUTH_LEVEL | Contém informações sobre o nível de autenticação mútua usado por um pacote de segurança. |
SECPKG_PARAMETERS | Contém de sessão e informações da máquina. |
SECPKG_PRIMARY_CRED | Contém credenciais primárias informações. |
SECPKG_SUPPLEMENTAL_CRED | Contém credenciais suplementares informações. |
SECPKG_SUPPLEMENTAL_CRED_ARRAY | Contém informações complementares sobre credenciais. |
SECPKG_USER_FUNCTION_TABLE | Contém as funções implementadas por um pacote de segurança carregado em processo com aplicativos cliente/servidor. |
SecurityUserData | Contém informações sobre o usuário conectado. |
Estruturas de provedores de rede
As estruturas a seguir são usadas pelas APIs do provedor de rede e funções relacionadas.
Estrutura | Descrição |
---|---|
NETCONNECTINFOSTRUCT | Contém informações sobre o desempenho de uma conexão de rede. |
NETRESOURCE | Contém informações sobre um recurso de rede enumerado. |
NOTIFICARADICIONAR | Contém os detalhes de uma operação de conexão de rede. |
NOTIFICARCANCELAR | Contém os detalhes de uma operação de desconexão de rede. |
NOTIFYINFO | Contém informações de status sobre uma operação de conexão ou desconexão de rede. |
REMOTE_NAME_INFO | Contém informações sobre um nome universal remoto. |
UNIVERSAL_NAME_INFO | Contém um nome universal local. |
Estruturas GINA
funções de interface GINA e funções de suporte Winlogon usam as seguintes estruturas.
Estrutura | Descrição |
---|---|
WLX_CLIENT_CREDENTIALS_INFO_V1_0 | Contém informações de credenciais do cliente. |
WLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0 | Contém as credenciais do cliente permitindo que as credenciais sejam transferidas de forma transparente para uma sessão de destino. |
WLX_DESKTOP | Contém informações da área de trabalho. |
WLX_DISPATCH_VERSION_1_0 | Contém a tabela de despacho Winlogon, versão 1.0. |
WLX_DISPATCH_VERSION_1_1 | Contém a tabela de despacho Winlogon, versão 1.1. |
WLX_DISPATCH_VERSION_1_2 | Contém a tabela de despacho Winlogon, versão 1.2. |
WLX_DISPATCH_VERSION_1_3 | Contém a tabela de despacho Winlogon, versão 1.3. |
WLX_DISPATCH_VERSION_1_4 | Contém a tabela de despacho Winlogon, versão 1.4. |
WLX_MPR_NOTIFY_INFO | Contém informações de autenticação e identificação. |
WLX_PROFILE_V1_0 | Contém informações usadas para configurar o ambiente inicial. |
WLX_PROFILE_V2_0 | Contém informações usadas para configurar o ambiente inicial. |
WLX_TERMINAL_SERVICES_DATA | Contém o caminho do perfil dos Serviços de Terminal e as informações do diretório base. |
Estruturas da Autoridade Local de Segurança
Autoridade de Segurança Local (LSA) utiliza as seguintes estruturas.
Estrutura | Descrição |
---|---|
DOMAIN_PASSWORD_INFORMATION | Contém informações sobre a política de senha de um domínio, como o comprimento mínimo para senhas e como senhas exclusivas devem ser. |
KERB_ADD_CREDENTIALS_REQUEST | Especifica uma mensagem para adicionar, remover ou substituir uma credencial de servidor extra para uma sessão de logon. |
KERB_ADD_CREDENTIALS_REQUEST_EX | Especifica uma mensagem para adicionar, remover ou substituir uma credencial de servidor extra para uma sessão de logon e os de de entidade de serviço de serviço (SPNs) associados a essa credencial. |
KERB_CERTIFICATE_LOGON | Contém informações sobre um cartão inteligente sessão de logon. |
KERB_CERTIFICATE_UNLOCK_LOGON | Contém informações usadas para desbloquear uma estação de trabalho que foi bloqueada durante um cartão inteligente interativo sessão de logon. |
KERB_CHANGEPASSWORD_REQUEST | Contém informações usadas para alterar uma senha. |
KERB_CRYPTO_KEY | Contém informações sobre um Kerberos criptográfico chave de sessão. |
KERB_EXTERNAL_NAME | Contém informações sobre um nome externo. |
KERB_EXTERNAL_TICKET | Contém informações sobre um tíquete externo. |
KERB_INTERACTIVE_LOGON | Contém informações sobre uma sessão interativa de logon . |
KERB_INTERACTIVE_PROFILE | Contém informações sobre um perfil de logon interativo. |
KERB_INTERACTIVE_UNLOCK_LOGON | Contém informações usadas para desbloquear uma estação de trabalho que foi bloqueada durante uma sessão interativa de logon . |
KERB_PURGE_TKT_CACHE_REQUEST | Contém informações usadas para excluir entradas do cache de tíquetes. |
KERB_QUERY_TKT_CACHE_REQUEST | Usado para recuperar informações sobre todos os tíquetes armazenados em cache para a sessão de logon do usuário especificada. |
KERB_QUERY_TKT_CACHE_RESPONSE | Contém os resultados da consulta ao cache de tíquetes. |
KERB_RETRIEVE_TKT_REQUEST | Contém informações usadas para recuperar um ticket. |
KERB_RETRIEVE_TKT_RESPONSE | Contém a resposta da recuperação de um ticket. |
KERB_S4U_LOGON | Contém informações sobre um serviço para usuário (S4U) sessão de logon. |
KERB_SMARTCARD_CSP_INFO | Contém informações sobre um cartão inteligente provedor de serviços de criptografia (CSP). |
KERB_SMART_CARD_LOGON | Contém informações sobre um cartão inteligente sessão de logon. |
KERB_SMART_CARD_UNLOCK_LOGON | Contém informações usadas para desbloquear uma estação de trabalho que foi bloqueada durante um cartão inteligente sessão de logon. |
KERB_TICKET_CACHE_INFO | Contém informações sobre um tíquete Kerberos armazenado em cache. |
KERB_TICKET_LOGON | Contém informações de perfil para um logon de rede. |
KERB_TICKET_PROFILE | Contém informações sobre um perfil de logon interativo. |
KERB_TICKET_UNLOCK_LOGON | Contém informações para desbloquear uma estação de trabalho. |
LSA_DISPATCH_TABLE | Uma tabela de ponteiros para as funções LSA que os pacotes de autenticação do Windows podem chamar. |
LSA_STRING | Contém uma cadeia de caracteres ANSI e suas informações de comprimento. |
LSA_FOREST_TRUST_BINARY_DATA | Contém dados binários usados em operações de confiança de floresta LSA. |
LSA_FOREST_TRUST_COLLISION_INFORMATION | Contém informações sobre colisões de confiança de floresta LSA. |
LSA_FOREST_TRUST_RECORD | Contém informações sobre uma colisão de confiança de floresta LSA. |
LSA_FOREST_TRUST_DOMAIN_INFO | Contém informações de identificação para um domínio. |
LSA_FOREST_TRUST_INFORMATION | Contém informações de confiança de floresta LSA. |
LSA_FOREST_TRUST_RECORD | Contém um registro de confiança de floresta LSA. |
LSA_TOKEN_INFORMATION_NULL | Usado nos casos em que é necessário um acesso ao sistema não autenticado. Esta estrutura não tem conteúdo. |
LSA_TOKEN_INFORMATION_V1 | Contém informações que um pacote de autenticação pode colocar em um objeto de token do Windows Versão 1. |
MSV1_0_CHANGEPASSWORD_REQUEST | Obsoleto. |
MSV1_0_CHANGEPASSWORD_RESPONSE | Obsoleto. |
MSV1_0_ENUMUSERS_REQUEST | Obsoleto. |
MSV1_0_ENUMUSERS_RESPONSE | Obsoleto. |
MSV1_0_GETUSERINFO_REQUEST | Obsoleto. |
MSV1_0_GETUSERINFO_RESPONSE | Obsoleto. |
MSV1_0_INTERACTIVE_LOGON | Contém informações de logon do usuário para um logon interativo. |
MSV1_0_INTERACTIVE_PROFILE | Contém informações sobre um perfil de logon interativo. |
MSV1_0_LM20_LOGON | Contém informações de logon usadas em logons de rede. |
MSV1_0_LM20_LOGON_PROFILE | Contém informações sobre uma sessão de logon de rede. |
MSV1_0_SUBAUTH_LOGON | Usado por subautenticação DLLs. |
MSV1_0_SUBAUTH_REQUEST | Contém informações a serem passadas para um pacote de subautenticação . |
MSV1_0_SUBAUTH_RESPONSE | Contém a resposta de um pacote de subautenticação . |
MSV1_0_SUPPLEMENTAL_CREDENTIAL | Usado para passar credenciais para MSV1_0 de Kerberos ou pacotes de autenticação personalizados. |
NETLOGON_LOGON_IDENTITY_INFO | Usado pelo Msv1_0SubAuthenticationRoutine e Msv1_0SubAuthenticationFilter para passar informações sobre um usuário para logon subautenticação. |
OLD_LARGE_INTEGER | Usado para representar um valor inteiro assinado de 64 bits como dois inteiros de 32 bits. |
QUOTA_LIMITS | Descreve a quantidade de recursos do sistema disponíveis para um usuário. |
SR_SECURITY_DESCRIPTOR | Contém informações sobre a segurança privilégios do usuário. |
USER_ALL_INFORMATION | Contém informações sobre o usuário da sessão. Usado com pacotes de subautenticação. |
Estruturas de Gestão de Credenciais
A API de Gerenciamento de Credenciais inclui as seguintes estruturas.
Estrutura | Descrição |
---|---|
CERT_CREDENTIAL_INFO | Contém uma referência a um certificado. |
CREDENCIAL | Contém uma credencial individual. |
CREDENTIAL_ATTRIBUTE | Contém um atributo definido pelo aplicativo da credencial. |
CREDENTIAL_TARGET_INFORMATION | Contém o nome, o domínio e a árvore do computador de destino. |
CREDUI_INFO | Controla a aparência das caixas de diálogo Gerenciamento de Credenciais. |
USERNAME_TARGET_CREDENTIAL_INFO | Contém uma referência a uma credencial. Essa estrutura é usada para passar um nome de usuário para a funçãoCredMarshalCredential e para fora do CredUnmarshalCredential. |
Estruturas de cartões inteligentes
Smart Card fornece as seguintes estruturas.
Estrutura | Descrição |
---|---|
OPENCARD_SEARCH_CRITERIA | Fornece informações de pesquisa específicas usadas pela funçãoSCardUIDlgSelectCard. |
OPENCARDNAME | Fornece informações usadas pelo função de GetOpenCardName. |
OPENCARDNAME_EX | Fornece informações usadas pelo função SCardUIDlgSelectCard. |
SCARD_ATRMASK | Localiza cartões usando SCardLocateCardsByATR. |
SCARD_IO_REQUEST | Inicia uma estrutura de informações de controle de protocolo. |
SCARD_READERSTATE | Rastreia cartões inteligentes dentro de um leitor. |