Estructuras de autenticación
Las estructuras de autenticación se clasifican según el uso de la siguiente manera:
- Estructuras SSPI
- Estructuras Schannel
- Estructuras de paquetes de seguridad personalizados
- Estructuras del proveedor de red
- Estructuras de GINA
- Estructuras de la autoridad de seguridad local
- Estructuras de administración de credenciales
- Estructuras de tarjeta inteligente
Las siguientes estructuras, definidas en Sspi.h, se usan en funciones de SSPI.
Estructura | Descripción |
---|---|
CREDSSP_CRED | Especifica los datos de autenticación para los paquetes de seguridad Schannel y Negotiate. |
SEC_WINNT_AUTH_IDENTITY | Se usa para pasar un nombre de usuario y una contraseña determinados a la biblioteca en tiempo de ejecución para la autenticación. |
SEC_WINNT_AUTH_IDENTITY_EX | Contiene información sobre un usuario. Se proporcionan tanto una forma ANSI como Unicode de esta estructura. |
SecBuffer | Búfer asignado por una aplicación de transporte para pasar a un paquete de seguridad. |
SecBufferDesc | Matriz de estructuras SecBuffer que se van a pasar de una aplicación de transporte a un paquete de seguridad. |
SecPkgContext_AccessToken | Contiene un identificador para el token de acceso del contexto de seguridad. |
SecPkgContext_ClientCreds | Especifica las credenciales de cliente al llamar a la función QueryContextAttributes (CredSSP ). |
SecPkgContext_ConnectionInfo | Contiene información de protocolo y cifrado. Esta estructura la usa la función QueryContextAttributes (General). |
SecPkgContext_CredentialName | Especifica el nombre de la credencial. |
SecPkgContext_DceInfo | Contiene datos de autorización utilizados por los servicios DCE. |
SecPkgContext_EapKeyBlock | Contiene datos clave utilizados por el protocolo de autenticación TLS de EAP. |
SecPkgContext_Flags | Contiene información sobre las marcas en el contexto de seguridad. |
SecPkgContext_IssuerListInfoEx | Contiene una lista de entidades de certificación (CA) de confianza. |
SecPkgContext_Lifespan | Indica el período de vida de un contexto de seguridad. |
SecPkgContext_Names | Contiene el nombre del usuario asociado a un contexto de seguridad. |
SecPkgContext_NativeNames | Contiene los nombres principales de cliente y servidor del vale de salida. |
SecPkgContext_NegotiationInfo | Contiene información sobre el paquete de seguridad que se está configurando o que se ha configurado. También proporciona el estado de la negociación para configurar el paquete de seguridad. |
SecPkgContext_PackageInfo | Contiene el nombre de un proveedor de soporte técnico de seguridad (SSP). |
SecPkgContext_PasswordExpiry | Contiene información sobre la expiración de una contraseña u otra credencial. |
SecPkgContext_SessionKey | Contiene información sobre la clave de sesión. |
SecPkgContext_Sizes | Contiene los tamaños de las estructuras importantes usadas en las funciones de compatibilidad de mensajes. |
SecPkgContext_StreamSizes | Contiene los tamaños de los distintos atributos de secuencia para su uso con las funciones de compatibilidad de mensajes. |
SecPkgContext_TargetInformation | Contiene información sobre la credencial usada para el contexto de seguridad. |
SecPkgCredentials_Names | Contiene el nombre del usuario asociado a un contexto. |
SecPkgInfo | Proporciona información general sobre un paquete de seguridad, como su nombre y funcionalidades. |
SECURITY_INTEGER | Estructura que contiene un valor numérico. Se usa para definir otros tipos. |
SecurityFunctionTable | Tabla de distribución que contiene punteros a las funciones definidas en SSPI. |
Las estructuras siguientes se definen para su uso con Schannel.
Estructura | Descripción |
---|---|
SCH_CRED_PUBLIC_CERTCHAIN | Contiene un único certificado. Se puede crear una cadena de certificación a partir de este certificado. |
SCH_CRED_SECRET_PRIVKEY | Contiene información de clave privada necesaria para autenticar un cliente o servidor. |
SCHANNEL_CERT_HASH | Contiene los datos del almacén hash del certificado que usa Schannel. |
SCHANNEL_CERT_HASH_STORE | Contiene los datos del almacén hash del certificado que Schannel usa en modo kernel. |
SCHANNEL_ALERT_TOKEN | Genera una alerta protocolo de capa de sockets seguros (SSL) o protocolo de seguridad de la capa de transporte (TSL) que se enviará al destino de una llamada a la función InitializeSecurityContext (Schannel) o a la función AcceptSecurityContext (Schannel). |
SCHANNEL_CLIENT_SIGNATURE | Especifica una firma de cliente cuando una llamada a la función InitializeSecurityContext (Schannel) no puede acceder a la clave privada de un certificado de cliente (en este caso, la función devuelve SEC_I_SIGNATURE_NEEDED). |
SCHANNEL_CRED | Contiene los datos de una credencial de Schannel. |
SCHANNEL_SESSION_TOKEN | Especifica si las reconexión están habilitadas para una sesión de autenticación creada mediante una llamada a la función InitializeSecurityContext (Schannel) o a la función AcceptSecurityContext (Schannel). |
SecPkgContext_Authority | Contiene el nombre de la entidad de autenticación si hay uno disponible. Puede ser una entidad de certificación (CA) o el nombre de un servidor o dominio que autentica la conexión. |
SecPkgContext_ConnectionInfo | Contiene información de protocolo y cifrado. Esta estructura la usa la función QueryContextAttributes (General). |
SecPkgContext_IssuerListInfoEx | Contiene una lista de entidades de certificación de confianza. |
SecPkgContext_KeyInfo | Contiene información sobre las claves de sesión usadas en un contexto de seguridad. Esta estructura se ha reemplazado por la estructura SecPkgContext_ConnectionInfo . |
SecPkgContext_ProtoInfo | Contiene información sobre el protocolo en uso. |
SecPkgContext_SessionAppData | Almacena los datos de la aplicación para un contexto de sesión. |
SecPkgCred_CipherStrengths | Contiene la intensidad mínima y máxima permitida para el cifrado utilizado por la credencial de Schannel especificada. |
SecPkgCred_SupportedAlgs | Contiene identificadores para los algoritmos permitidos con una credencial de Schannel especificada. |
SecPkgCred_SupportedProtocols | Indica los protocolos permitidos con una credencial de Schannel especificada. |
X509Certificate | Representa un certificado X.509 . |
El paquete de seguridad personalizado usa las estructuras siguientes.
Estructura | Descripción |
---|---|
LSA_SECPKG_FUNCTION_TABLE | Una tabla de punteros a las funciones de autoridad de seguridad local (LSA) a las que pueden llamar los paquetes de seguridad personalizados. |
SECPKG_CALL_INFO | Contiene información sobre una llamada de función en ejecución. |
SECPKG_CLIENT_INFO | Contiene información sobre el usuario de un paquete de seguridad. |
SECPK_CONTEXT_THUNKS | Contiene información sobre las llamadas al paquete de seguridad que se ejecutarán en proceso con LSA. |
SECPKG_DLL_FUNCTIONS | Contiene las funciones disponibles para los paquetes de seguridad personalizados que se ejecutan en proceso con una aplicación cliente/servidor. |
SECPKG_EVENT_DOMAIN_CHANGE | Contiene información de sesión y equipo. Este nombre de estructura es un alias para la estructura SECPKG_PARAMETERS . |
SECPKG_EVENT_NOTIFY | Contiene información sobre un evento relacionado con la seguridad. |
SECPKG_EVENT_PACKAGE_CHANGE | Contiene información sobre la disponibilidad y el uso de paquetes de seguridad. |
SECPKG_EXTENDED_INFORMATION | Contiene información extendida sobre el paquete de seguridad. |
SECPKG_FUNCTION_TABLE | Contiene punteros a las funciones implementadas por paquetes de seguridad. |
SECPKG_GSS_INFO | Contiene información sobre el OID de GSS que se usa para identificar un paquete de seguridad. |
SECPKG_MUTUAL_AUTH_LEVEL | Contiene información sobre el nivel de autenticación mutua utilizado por un paquete de seguridad. |
SECPKG_PARAMETERS | Contiene información de sesión y máquina. |
SECPKG_PRIMARY_CRED | Contiene información de credenciales principales . |
SECPKG_SUPPLEMENTAL_CRED | Contiene información de credenciales complementarias . |
SECPKG_SUPPLEMENTAL_CRED_ARRAY | Contiene información de credenciales complementarias. |
SECPKG_USER_FUNCTION_TABLE | Contiene las funciones implementadas por un paquete de seguridad cargado en proceso con aplicaciones cliente/servidor. |
SecurityUserData | Contiene información sobre el usuario que ha iniciado sesión. |
Las API del proveedor de red y las funciones relacionadas usan las siguientes estructuras.
Estructura | Descripción |
---|---|
NETCONNECTINFOSTRUCT | Contiene información sobre el rendimiento de una conexión de red. |
NETRESOURCE | Contiene información sobre un recurso de red enumerado. |
NOTIFYADD | Contiene los detalles de una operación de conexión de red. |
NOTIFYCANCEL | Contiene los detalles de una operación de desconexión de red. |
NOTIFYINFO | Contiene información de estado sobre una operación de conexión o desconexión de red. |
REMOTE_NAME_INFO | Contiene información sobre un nombre universal remoto. |
UNIVERSAL_NAME_INFO | Contiene un nombre universal local. |
Las funciones de interfaz de GINA y las funciones de compatibilidad de Winlogon usan las siguientes estructuras.
Estructura | Descripción |
---|---|
WLX_CLIENT_CREDENTIALS_INFO_V1_0 | Contiene información de credenciales de cliente. |
WLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0 | Contiene las credenciales de cliente que permiten transferir las credenciales de forma transparente a una sesión de destino. |
WLX_DESKTOP | Contiene información de escritorio. |
WLX_DISPATCH_VERSION_1_0 | Contiene la tabla de distribución Winlogon, versión 1.0. |
WLX_DISPATCH_VERSION_1_1 | Contiene la tabla de distribución Winlogon, versión 1.1. |
WLX_DISPATCH_VERSION_1_2 | Contiene la tabla de distribución Winlogon, versión 1.2. |
WLX_DISPATCH_VERSION_1_3 | Contiene la tabla de distribución Winlogon, versión 1.3. |
WLX_DISPATCH_VERSION_1_4 | Contiene la tabla de distribución Winlogon, versión 1.4. |
WLX_MPR_NOTIFY_INFO | Contiene información de autenticación e identificación. |
WLX_PROFILE_V1_0 | Contiene información utilizada para configurar el entorno inicial. |
WLX_PROFILE_V2_0 | Contiene información utilizada para configurar el entorno inicial. |
WLX_TERMINAL_SERVICES_DATA | Contiene la ruta de acceso del perfil de Terminal Services y la información del directorio principal. |
La autoridad de seguridad local (LSA) usa las siguientes estructuras.
Estructura | Descripción |
---|---|
DOMAIN_PASSWORD_INFORMATION | Contiene información sobre la directiva de contraseñas de un dominio, como la longitud mínima de las contraseñas y cómo deben ser las contraseñas únicas. |
KERB_ADD_CREDENTIALS_REQUEST | Especifica un mensaje para agregar, quitar o reemplazar una credencial de servidor adicional para una sesión de inicio de sesión. |
KERB_ADD_CREDENTIALS_REQUEST_EX | Especifica un mensaje para agregar, quitar o reemplazar una credencial de servidor adicional para una sesión de inicio de sesión y los nombres de entidad de seguridad de servicio (SPN) asociados a esa credencial. |
KERB_CERTIFICATE_LOGON | Contiene información sobre una sesión de inicio de sesión de tarjeta inteligente. |
KERB_CERTIFICATE_UNLOCK_LOGON | Contiene información utilizada para desbloquear una estación de trabajo que se ha bloqueado durante una sesión interactiva de inicio de sesión de tarjeta inteligente. |
KERB_CHANGEPASSWORD_REQUEST | Contiene información utilizada para cambiar una contraseña. |
KERB_CRYPTO_KEY | Contiene información sobre una clave de sesión criptográfica kerberos. |
KERB_EXTERNAL_NAME | Contiene información sobre un nombre externo. |
KERB_EXTERNAL_TICKET | Contiene información sobre un vale externo. |
KERB_INTERACTIVE_LOGON | Contiene información sobre una sesión de inicio de sesión interactiva. |
KERB_INTERACTIVE_PROFILE | Contiene información sobre un perfil de inicio de sesión interactivo. |
KERB_INTERACTIVE_UNLOCK_LOGON | Contiene información utilizada para desbloquear una estación de trabajo que se ha bloqueado durante una sesión de inicio de sesión interactiva. |
KERB_PURGE_TKT_CACHE_REQUEST | Contiene información utilizada para eliminar entradas de la memoria caché de vales. |
KERB_QUERY_TKT_CACHE_REQUEST | Se usa para recuperar información sobre todos los vales almacenados en caché para la sesión de inicio de sesión de usuario especificada. |
KERB_QUERY_TKT_CACHE_RESPONSE | Contiene los resultados de consultar la caché de vales. |
KERB_RETRIEVE_TKT_REQUEST | Contiene información utilizada para recuperar un vale. |
KERB_RETRIEVE_TKT_RESPONSE | Contiene la respuesta de recuperar un vale. |
KERB_S4U_LOGON | Contiene información sobre un servicio para la sesión de inicio de sesión del usuario (S4U). |
KERB_SMARTCARD_CSP_INFO | Contiene información sobre un proveedor de servicios criptográficos de tarjeta inteligente (CSP). |
KERB_SMART_CARD_LOGON | Contiene información sobre una sesión de inicio de sesión de tarjeta inteligente. |
KERB_SMART_CARD_UNLOCK_LOGON | Contiene información utilizada para desbloquear una estación de trabajo que se ha bloqueado durante una sesión de inicio de sesión de tarjeta inteligente. |
KERB_TICKET_CACHE_INFO | Contiene información sobre un vale Kerberos almacenado en caché. |
KERB_TICKET_LOGON | Contiene información de perfil para un inicio de sesión de red. |
KERB_TICKET_PROFILE | Contiene información sobre un perfil de inicio de sesión interactivo. |
KERB_TICKET_UNLOCK_LOGON | Contiene información para desbloquear una estación de trabajo. |
LSA_DISPATCH_TABLE | Tabla de punteros a las funciones LSA a las que pueden llamar los paquetes de autenticación de Windows. |
LSA_STRING | Contiene una cadena ANSI y su información de longitud. |
LSA_FOREST_TRUST_BINARY_DATA | Contiene datos binarios usados en las operaciones de confianza de bosque de LSA. |
LSA_FOREST_TRUST_COLLISION_INFORMATION | Contiene información sobre las colisiones de confianza de bosque de LSA. |
LSA_FOREST_TRUST_RECORD | Contiene información sobre una colisión de confianza de bosque LSA. |
LSA_FOREST_TRUST_DOMAIN_INFO | Contiene información de identificación de un dominio. |
LSA_FOREST_TRUST_INFORMATION | Contiene información de confianza de bosque de LSA. |
LSA_FOREST_TRUST_RECORD | Contiene un registro de confianza de bosque LSA. |
LSA_TOKEN_INFORMATION_NULL | Se usa en los casos en los que se necesita un acceso al sistema no autenticado. Esta estructura no tiene contenido. |
LSA_TOKEN_INFORMATION_V1 | Contiene información que un paquete de autenticación puede colocar en un objeto de token de Windows de la versión 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 | Contiene información de inicio de sesión de usuario para un inicio de sesión interactivo. |
MSV1_0_INTERACTIVE_PROFILE | Contiene información sobre un perfil de inicio de sesión interactivo. |
MSV1_0_LM20_LOGON | Contiene información de inicio de sesión usada en inicios de sesión de red. |
MSV1_0_LM20_LOGON_PROFILE | Contiene información sobre una sesión de inicio de sesión de red. |
MSV1_0_SUBAUTH_LOGON | Usado por archivos DLL de subautenticación . |
MSV1_0_SUBAUTH_REQUEST | Contiene información para pasar a un paquete de subautenticación. |
MSV1_0_SUBAUTH_RESPONSE | Contiene la respuesta de un paquete de subautenticación. |
MSV1_0_SUPPLEMENTAL_CREDENTIAL | Se usa para pasar credenciales a MSV1_0 desde Kerberos o paquetes de autenticación personalizados. |
NETLOGON_LOGON_IDENTITY_INFO | Usado por el Msv1_0SubAuthenticationRoutine y Msv1_0SubAuthenticationFilter para pasar información sobre un usuario para la subautenticación de inicio de sesión. |
OLD_LARGE_INTEGER | Se usa para representar un valor entero de 64 bits con signo como dos enteros de 32 bits. |
QUOTA_LIMITS | Describe la cantidad de recursos del sistema disponibles para un usuario. |
SR_SECURITY_DESCRIPTOR | Contiene información sobre los privilegios de seguridad del usuario. |
USER_ALL_INFORMATION | Contiene información sobre el usuario de sesión. Se usa con paquetes de subautenticación. |
Credentials Management API incluye las siguientes estructuras.
Estructura | Descripción |
---|---|
CERT_CREDENTIAL_INFO | Contiene una referencia a un certificado. |
CREDENCIAL | Contiene una credencial individual. |
CREDENTIAL_ATTRIBUTE | Contiene un atributo definido por la aplicación de la credencial. |
CREDENTIAL_TARGET_INFORMATION | Contiene el nombre, el dominio y el árbol del equipo de destino. |
CREDUI_INFO | Controla la apariencia de los cuadros de diálogo Administración de credenciales. |
USERNAME_TARGET_CREDENTIAL_INFO | Contiene una referencia a una credencial. Esta estructura se usa para pasar un nombre de usuario a la función CredMarshalCredential y fuera de CredUnmarshalCredential. |
La tarjeta inteligente proporciona las siguientes estructuras.
Estructura | Descripción |
---|---|
OPENCARD_SEARCH_CRITERIA | Proporciona información de búsqueda específica utilizada por la función SCardUIDlgSelectCard . |
OPENCARDNAME | Proporciona información utilizada por la función GetOpenCardName . |
OPENCARDNAME_EX | Proporciona información utilizada por la función SCardUIDlgSelectCard . |
SCARD_ATRMASK | Busca tarjetas mediante SCardLocateCardsByATR. |
SCARD_IO_REQUEST | Comienza una estructura de información de control de protocolo. |
SCARD_READERSTATE | Realiza un seguimiento de las tarjetas inteligentes dentro de un lector. |