Structures d’authentification
Les structures d’authentification sont classées en fonction de l’utilisation comme suit :
- SSPI Structures
- Schannel Structures
- Structures de package de sécurité personnalisées
- Structures du fournisseur de réseau
- GINA Structures
- Structures d’autorité de sécurité locale
- Structures de gestion des informations d’identification
- Structures de carte à puce
SSPI Structures
Les structures suivantes, définies dans Sspi.h, sont utilisées dans les fonctions SSPI.
Structure | Description |
---|---|
CREDSSP_CRED | Spécifie les données d’authentification pour les packages de sécurité Schannel et Negotiate |
SEC_WINNT_AUTH_IDENTITY | Permet de transmettre un nom d’utilisateur et un mot de passe particuliers à la bibliothèque d’exécution à des fins d’authentification. |
SEC_WINNT_AUTH_IDENTITY_EX | Contient des informations sur un utilisateur. Une forme ANSI et Unicode de cette structure sont fournies. |
SecBuffer | Mémoire tampon allouée par une application de transport à passer à un package de sécurité. |
SecBufferDesc | Tableau de structures SecBuffer à passer d’une application de transport à un package de sécurité. |
SecPkgContext_AccessToken | Contient un handle pour le jeton d’accès du contexte de sécurité. |
SecPkgContext_ClientCreds | Spécifie les informations d’identification du client lors de l’appel de la fonction QueryContextAttributes (CredSSP). |
SecPkgContext_ConnectionInfo | Contient des informations de protocole et de chiffrement. Cette structure est utilisée par la fonction QueryContextAttributes (Général). |
SecPkgContext_CredentialName | Spécifie le nom des informations d’identification. |
SecPkgContext_DceInfo | Contient les données d’autorisation utilisées par les services DCE. |
SecPkgContext_EapKeyBlock | Contient les données clés utilisées par le protocole d’authentification TLS EAP. |
SecPkgContext_Flags | Contient des informations sur les indicateurs dans le contexte de sécurité. |
SecPkgContext_IssuerListInfoEx | Contient une liste d’autorités de certification approuvées. |
SecPkgContext_Lifespan | Indique la durée de vie d’un contexte de sécurité. |
SecPkgContext_Names | Contient le nom de l’utilisateur associé à un contexte de sécurité. |
SecPkgContext_NativeNames | Contient les noms de principal du client et du serveur du ticket sortant. |
SecPkgContext_NegotiationInfo | Contient des informations sur le package de sécurité en cours de configuration ou qui a été configuré. Il donne également le status sur la négociation pour configurer le package de sécurité. |
SecPkgContext_PackageInfo | Contient le nom d’un fournisseur de support de sécurité (SSP). |
SecPkgContext_PasswordExpiry | Contient des informations sur l’expiration d’un mot de passe ou d’autres informations d’identification. |
SecPkgContext_SessionKey | Contient des informations sur la clé de session. |
SecPkgContext_Sizes | Contient les tailles des structures importantes utilisées dans les fonctions de prise en charge des messages. |
SecPkgContext_StreamSizes | Contient les tailles des différents attributs de flux à utiliser avec les fonctions de prise en charge des messages. |
SecPkgContext_TargetInformation | Contient des informations sur les informations d’identification utilisées pour le contexte de sécurité. |
SecPkgCredentials_Names | Contient le nom de l’utilisateur associé à un contexte. |
SecPkgInfo | Fournit des informations générales sur un package de sécurité, telles que son nom et ses fonctionnalités. |
SECURITY_INTEGER | Structure pour contenir une valeur numérique. Il est utilisé pour définir d’autres types. |
SecurityFunctionTable | Table dispatch qui contient des pointeurs vers les fonctions définies dans SSPI. |
Schannel Structures
Les structures suivantes sont définies pour une utilisation avec Schannel.
Structure | Description |
---|---|
SCH_CRED_PUBLIC_CERTCHAIN | Contient un certificat unique. Une chaîne de certification peut être générée à partir de ce certificat. |
SCH_CRED_SECRET_PRIVKEY | Contient les informations de clé privée nécessaires à l’authentification d’un client ou d’un serveur. |
SCHANNEL_CERT_HASH | Contient les données du magasin de hachage pour le certificat utilisé par Schannel. |
SCHANNEL_CERT_HASH_STORE | Contient les données du magasin de hachage pour le certificat que Schannel utilise en mode noyau. |
SCHANNEL_ALERT_TOKEN | Génère une alerte SSL (Secure Sockets Layer Protocol) ou TSL (Transport Layer Security Protocol) à envoyer à la cible d’un appel à la fonction InitializeSecurityContext (Schannel) ou AcceptSecurityContext (Schannel). |
SCHANNEL_CLIENT_SIGNATURE | Spécifie une signature client lorsqu’un appel à la fonction InitializeSecurityContext (Schannel) ne peut pas accéder à la clé privée d’un certificat client (dans ce cas, la fonction retourne SEC_I_SIGNATURE_NEEDED). |
SCHANNEL_CRED | Contient les données d’informations d’identification Schannel. |
SCHANNEL_SESSION_TOKEN | Spécifie si les reconnexions sont activées pour une session d’authentification créée en appelant la fonction InitializeSecurityContext (Schannel) ou la fonction AcceptSecurityContext (Schannel). |
SecPkgContext_Authority | Contient le nom de l’autorité d’authentification, le cas échéant. Il peut s’agir d’une autorité de certification ou du nom d’un serveur ou d’un domaine qui a authentifié la connexion. |
SecPkgContext_ConnectionInfo | Contient des informations de protocole et de chiffrement. Cette structure est utilisée par la fonction QueryContextAttributes (Général). |
SecPkgContext_IssuerListInfoEx | Contient une liste d’autorités de certification approuvées. |
SecPkgContext_KeyInfo | Contient des informations sur les clés de session utilisées dans un contexte de sécurité. Cette structure a été remplacée par la structure SecPkgContext_ConnectionInfo . |
SecPkgContext_ProtoInfo | Contient des informations sur le protocole en cours d’utilisation. |
SecPkgContext_SessionAppData | Stocke les données d’application pour un contexte de session. |
SecPkgCred_CipherStrengths | Contient la force minimale et maximale autorisée pour le chiffrement utilisé par les informations d’identification Schannel spécifiées. |
SecPkgCred_SupportedAlgs | Contient des identificateurs pour les algorithmes autorisés avec des informations d’identification Schannel spécifiées. |
SecPkgCred_SupportedProtocols | Indique les protocoles autorisés avec les informations d’identification Schannel spécifiées. |
X509Certificate | Représente un certificat X.509 . |
Structures de package de sécurité personnalisées
Le package de sécurité personnalisé utilise les structures suivantes.
Structure | Description |
---|---|
LSA_SECPKG_FUNCTION_TABLE | Table de pointeurs vers les fonctions de l’autorité de sécurité locale (LSA) que les packages de sécurité personnalisés peuvent appeler. |
SECPKG_CALL_INFO | Contient des informations sur un appel de fonction en cours d’exécution. |
SECPKG_CLIENT_INFO | Contient des informations sur l’utilisateur d’un package de sécurité. |
SECPK_CONTEXT_THUNKS | Contient des informations sur les appels au package de sécurité qui seront exécutés en cours avec LSA. |
SECPKG_DLL_FUNCTIONS | Contient les fonctions disponibles pour les packages de sécurité personnalisés qui s’exécutent en cours avec une application cliente/serveur. |
SECPKG_EVENT_DOMAIN_CHANGE | Contient des informations sur la session et l’ordinateur. Ce nom de structure est un alias pour la structure SECPKG_PARAMETERS . |
SECPKG_EVENT_NOTIFY | Contient des informations sur un événement lié à la sécurité. |
SECPKG_EVENT_PACKAGE_CHANGE | Contient des informations sur la disponibilité et l’utilisation des packages de sécurité. |
SECPKG_EXTENDED_INFORMATION | Contient des informations étendues sur le package de sécurité. |
SECPKG_FUNCTION_TABLE | Contient des pointeurs vers les fonctions implémentées par les packages de sécurité. |
SECPKG_GSS_INFO | Contient des informations sur l’OID GSS utilisé pour identifier un package de sécurité. |
SECPKG_MUTUAL_AUTH_LEVEL | Contient des informations sur le niveau d’authentification mutuelle utilisé par un package de sécurité. |
SECPKG_PARAMETERS | Contient des informations sur la session et l’ordinateur. |
SECPKG_PRIMARY_CRED | Contient des informations d’identification principales . |
SECPKG_SUPPLEMENTAL_CRED | Contient des informations d’identification supplémentaires . |
SECPKG_SUPPLEMENTAL_CRED_ARRAY | Contient des informations d’identification supplémentaires. |
SECPKG_USER_FUNCTION_TABLE | Contient les fonctions implémentées par un package de sécurité chargé en cours avec les applications client/serveur. |
SecurityUserData | Contient des informations sur l’utilisateur connecté. |
Structures du fournisseur de réseau
Les structures suivantes sont utilisées par les API du fournisseur de réseau et les fonctions associées.
Structure | Description |
---|---|
NETCONNECTINFOSTRUCT | Contient des informations sur les performances d’une connexion réseau. |
NETRESOURCE | Contient des informations sur une ressource réseau énumérée. |
NOTIFYADD | Contient les détails d’une opération de connexion réseau. |
NOTIFYCANCEL | Contient les détails d’une opération de déconnexion réseau. |
NOTIFYINFO | Contient status informations sur une opération de connexion ou de déconnexion réseau. |
REMOTE_NAME_INFO | Contient des informations sur un nom universel distant. |
UNIVERSAL_NAME_INFO | Contient un nom universel local. |
GINA Structures
Les fonctions d’interface GINA et les fonctions de prise en charge winlogon utilisent les structures suivantes.
Structure | Description |
---|---|
WLX_CLIENT_CREDENTIALS_INFO_V1_0 | Contient les informations d’identification du client. |
WLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0 | Contient les informations d’identification du client qui permettent de transférer les informations d’identification de manière transparente vers une session cible. |
WLX_DESKTOP | Contient des informations de bureau. |
WLX_DISPATCH_VERSION_1_0 | Contient la table de répartition Winlogon, version 1.0. |
WLX_DISPATCH_VERSION_1_1 | Contient la table de répartition Winlogon, version 1.1. |
WLX_DISPATCH_VERSION_1_2 | Contient la table de répartition Winlogon, version 1.2. |
WLX_DISPATCH_VERSION_1_3 | Contient la table de répartition Winlogon, version 1.3. |
WLX_DISPATCH_VERSION_1_4 | Contient la table de répartition Winlogon, version 1.4. |
WLX_MPR_NOTIFY_INFO | Contient des informations d’authentification et d’identification. |
WLX_PROFILE_V1_0 | Contient les informations utilisées pour configurer l’environnement initial. |
WLX_PROFILE_V2_0 | Contient les informations utilisées pour configurer l’environnement initial. |
WLX_TERMINAL_SERVICES_DATA | Contient le chemin d’accès du profil des services Terminal Server et les informations du répertoire de base. |
Structures des autorités de sécurité locales
L’autorité de sécurité locale (LSA) utilise les structures suivantes.
Structure | Description |
---|---|
DOMAIN_PASSWORD_INFORMATION | Contient des informations sur la stratégie de mot de passe d’un domaine, telles que la longueur minimale des mots de passe et la façon dont les mots de passe doivent être uniques. |
KERB_ADD_CREDENTIALS_REQUEST | Spécifie un message à ajouter, supprimer ou remplacer des informations d’identification de serveur supplémentaires pour une session d’ouverture de session. |
KERB_ADD_CREDENTIALS_REQUEST_EX | Spécifie un message à ajouter, supprimer ou remplacer des informations d’identification de serveur supplémentaires pour une session d’ouverture de session, ainsi que les noms de principaux de service (SPN) associés à ces informations d’identification. |
KERB_CERTIFICATE_LOGON | Contient des informations sur une session d’ouverture de session smart carte. |
KERB_CERTIFICATE_UNLOCK_LOGON | Contient les informations utilisées pour déverrouiller une station de travail qui a été verrouillée pendant une session d’ouverture de session de carte intelligente interactive. |
KERB_CHANGEPASSWORD_REQUEST | Contient les informations utilisées pour modifier un mot de passe. |
KERB_CRYPTO_KEY | Contient des informations sur une clé de sessionde chiffrement Kerberos. |
KERB_EXTERNAL_NAME | Contient des informations sur un nom externe. |
KERB_EXTERNAL_TICKET | Contient des informations sur un ticket externe. |
KERB_INTERACTIVE_LOGON | Contient des informations sur une session d’ouverture de session interactive. |
KERB_INTERACTIVE_PROFILE | Contient des informations sur un profil d’ouverture de session interactif. |
KERB_INTERACTIVE_UNLOCK_LOGON | Contient les informations utilisées pour déverrouiller une station de travail qui a été verrouillée pendant une session d’ouverture de session interactive. |
KERB_PURGE_TKT_CACHE_REQUEST | Contient les informations utilisées pour supprimer des entrées du cache de tickets. |
KERB_QUERY_TKT_CACHE_REQUEST | Utilisé pour récupérer des informations sur tous les tickets mis en cache pour la session d’ouverture de session utilisateur spécifiée. |
KERB_QUERY_TKT_CACHE_RESPONSE | Contient les résultats de l’interrogation du cache de tickets. |
KERB_RETRIEVE_TKT_REQUEST | Contient les informations utilisées pour récupérer un ticket. |
KERB_RETRIEVE_TKT_RESPONSE | Contient la réponse de la récupération d’un ticket. |
KERB_S4U_LOGON | Contient des informations sur un service pour une session d’ouverture de session utilisateur (S4U). |
KERB_SMARTCARD_CSP_INFO | Contient des informations sur un fournisseur de services de chiffrement intelligent carte (CSP). |
KERB_SMART_CARD_LOGON | Contient des informations sur une session d’ouverture de session smart carte. |
KERB_SMART_CARD_UNLOCK_LOGON | Contient les informations utilisées pour déverrouiller une station de travail qui a été verrouillée pendant une session d’ouverture de session de carte intelligente. |
KERB_TICKET_CACHE_INFO | Contient des informations sur un ticket Kerberos mis en cache. |
KERB_TICKET_LOGON | Contient des informations de profil pour une ouverture de session réseau. |
KERB_TICKET_PROFILE | Contient des informations sur un profil d’ouverture de session interactif. |
KERB_TICKET_UNLOCK_LOGON | Contient des informations pour déverrouiller une station de travail. |
LSA_DISPATCH_TABLE | Table de pointeurs vers les fonctions LSA que les packages d’authentification Windows peuvent appeler. |
LSA_STRING | Contient une chaîne ANSI et ses informations de longueur. |
LSA_FOREST_TRUST_BINARY_DATA | Contient des données binaires utilisées dans les opérations d’approbation de forêt LSA. |
LSA_FOREST_TRUST_COLLISION_INFORMATION | Contient des informations sur les collisions d’approbation de forêt LSA. |
LSA_FOREST_TRUST_RECORD | Contient des informations sur une collision d’approbation de forêt LSA. |
LSA_FOREST_TRUST_DOMAIN_INFO | Contient des informations d’identification pour un domaine. |
LSA_FOREST_TRUST_INFORMATION | Contient des informations d’approbation de forêt LSA. |
LSA_FOREST_TRUST_RECORD | Contient un enregistrement d’approbation de forêt LSA. |
LSA_TOKEN_INFORMATION_NULL | Utilisé dans les cas où un accès système non authentifié est nécessaire. Cette structure n’a pas de contenu. |
LSA_TOKEN_INFORMATION_V1 | Contient des informations qu’un package d’authentification peut placer dans un objet de jeton Windows version 1. |
MSV1_0_CHANGEPASSWORD_REQUEST | Obsolète. |
MSV1_0_CHANGEPASSWORD_RESPONSE | Obsolète. |
MSV1_0_ENUMUSERS_REQUEST | Obsolète. |
MSV1_0_ENUMUSERS_RESPONSE | Obsolète. |
MSV1_0_GETUSERINFO_REQUEST | Obsolète. |
MSV1_0_GETUSERINFO_RESPONSE | Obsolète. |
MSV1_0_INTERACTIVE_LOGON | Contient des informations d’ouverture de session utilisateur pour une ouverture de session interactive. |
MSV1_0_INTERACTIVE_PROFILE | Contient des informations sur un profil d’ouverture de session interactif. |
MSV1_0_LM20_LOGON | Contient les informations de connexion utilisées dans les ouvertures de session réseau. |
MSV1_0_LM20_LOGON_PROFILE | Contient des informations sur une session d’ouverture de session réseau. |
MSV1_0_SUBAUTH_LOGON | Utilisé par les DLL de sous-authentification . |
MSV1_0_SUBAUTH_REQUEST | Contient des informations à passer à un package de sous-authentification. |
MSV1_0_SUBAUTH_RESPONSE | Contient la réponse d’un package de sous-authentification. |
MSV1_0_SUPPLEMENTAL_CREDENTIAL | Permet de transmettre des informations d’identification à MSV1_0 à partir de packages d’authentification Kerberos ou personnalisés. |
NETLOGON_LOGON_IDENTITY_INFO | Utilisé par le Msv1_0SubAuthenticationRoutine et le Msv1_0SubAuthenticationFilter pour transmettre des informations sur un utilisateur pour la sous-authentification d’ouverture de session. |
OLD_LARGE_INTEGER | Utilisé pour représenter une valeur entière signée 64 bits sous la forme de deux entiers 32 bits. |
QUOTA_LIMITS | Décrit la quantité de ressources système disponibles pour un utilisateur. |
SR_SECURITY_DESCRIPTOR | Contient des informations sur les privilèges de sécurité de l’utilisateur. |
USER_ALL_INFORMATION | Contient des informations sur l’utilisateur de session. Utilisé avec les packages de sous-authentification. |
Structures de gestion des informations d’identification
L’API Gestion des informations d’identification comprend les structures suivantes.
Structure | Description |
---|---|
CERT_CREDENTIAL_INFO | Contient une référence à un certificat. |
CREDENTIAL | Contient des informations d’identification individuelles. |
CREDENTIAL_ATTRIBUTE | Contient un attribut défini par l’application des informations d’identification. |
CREDENTIAL_TARGET_INFORMATION | Contient le nom, le domaine et l’arborescence de l’ordinateur cible. |
CREDUI_INFO | Contrôle l’apparence des boîtes de dialogue Gestion des informations d’identification. |
USERNAME_TARGET_CREDENTIAL_INFO | Contient une référence à des informations d’identification. Cette structure est utilisée pour passer un nom d’utilisateur dans la fonction CredMarshalCredential et en dehors de CredUnmarshalCredential. |
Structures de carte à puce
La carte à puce fournit les structures suivantes.
Structure | Description |
---|---|
OPENCARD_SEARCH_CRITERIA | Fournit des informations de recherche spécifiques utilisées par la fonction SCardUIDlgSelectCard . |
OPENCARDNAME | Fournit des informations utilisées par la fonction GetOpenCardName . |
OPENCARDNAME_EX | Fournit des informations utilisées par la fonction SCardUIDlgSelectCard . |
SCARD_ATRMASK | Recherche les cartes à l’aide de SCardLocateCardsByATR. |
SCARD_IO_REQUEST | Commence une structure d’informations de contrôle de protocole. |
SCARD_READERSTATE | Effectue le suivi des cartes à puce au sein d’un lecteur. |