SCH_CREDENTIALS structure (schannel.h)
La structure SCH_CREDENTIALS contient des informations d’initialisation pour les informations d’identification Schannel.
Syntaxe
typedef struct _SCH_CREDENTIALS {
DWORD dwVersion;
DWORD dwCredFormat;
DWORD cCreds;
PCCERT_CONTEXT *paCred;
HCERTSTORE hRootStore;
DWORD cMappers;
_HMAPPER **aphMappers;
struct _HMAPPER;
DWORD dwSessionLifespan;
DWORD dwFlags;
DWORD cTlsParameters;
PTLS_PARAMETERS pTlsParameters;
} SCH_CREDENTIALS, *PSCH_CREDENTIALS;
Membres
dwVersion
Définissez sur SCH_CREDENTIALS_VERSION.
dwCredFormat
Schannel en mode noyau prend en charge les valeurs suivantes.
Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP et Windows XP/2000 : Cet indicateur n’est pas pris en charge et doit être égal à zéro.
Valeur | Signification |
---|---|
|
Le membre paCred de la structure SCH_CREDENTIALS passée doit être un pointeur vers un tableau d’octets de longueur 20 qui contient l’empreinte numérique du certificat. Le certificat est supposé être dans le magasin « MY » de l’ordinateur local. |
|
Le membre paCred de la structure SCH_CREDENTIALS pointe vers une structure SCHANNEL_CERT_HASH_STORE . |
cCreds
Nombre de structures dans le tableau paCred.
paCred
Tableau de pointeurs vers CERT_CONTEXT structures. Chaque pointeur spécifie un certificat qui contient une clé privée à utiliser pour l’authentification de l’application.
Les applications clientes passent souvent une liste vide et dépendent de Schannel pour trouver un certificat approprié ou créer un certificat ultérieurement si nécessaire.
hRootStore
facultatif. Valide pour les applications serveur uniquement. Gérez vers un magasin de certificats qui contient des certificats racines auto-signés pour les autorités de certification approuvées par l’application. Ce membre est utilisé uniquement par les applications côté serveur qui nécessitent une authentification cliente.
cMappers
Réservé.
aphMappers
Réservé.
_HMAPPER
dwSessionLifespan
Nombre de millisecondes pendant lesquelles Schannel conserve la session dans son cache de session. Une fois ce délai écoulé, toutes les nouvelles connexions entre le client et le serveur nécessitent une nouvelle session Schannel. Définissez la valeur de ce membre sur zéro pour utiliser la valeur par défaut de 36000000 millisecondes (dix heures).
dwFlags
Contient des indicateurs de bits qui contrôlent le comportement de Schannel. Ce membre peut être égal à zéro ou à une combinaison des valeurs suivantes.
Valeur | Signification |
---|---|
|
Client uniquement.
Cet indicateur est le contraire de SCH_CRED_MANUAL_CRED_VALIDATION et fait partie du comportement par défaut de Schannel. |
|
Demandez à Schannel de passer l’indicateur CERT_CHAIN_CACHE_ONLY_URL_RETRIEVAL à la fonction CertGetCertificateChain lors de la validation des informations d’identification spécifiées lors d’un appel à AcquireCredentialsHandle (Schannel).
Windows Server 2003 et Windows XP/2000 : Cet indicateur n’est pas pris en charge. |
|
Serveur uniquement.
Si cet indicateur est défini, les liaisons complètes effectuées avec ces informations d’identification n’autorisent pas les reconnexions. Une entrée de cache est créée, de sorte que la session peut être reprise ultérieurement à l’aide de la fonction ApplyControlToken . |
|
Lors de la vérification des certificats révoqués, ignorez CRYPT_E_NO_REVOCATION_CHECK erreurs. Pour obtenir d’autres restrictions, consultez Remarques. |
|
Lors de la vérification des certificats révoqués, ignorez CRYPT_E_REVOCATION_OFFLINE erreurs. Pour obtenir d’autres restrictions, consultez Remarques. |
|
Client uniquement.
Empêcher Schannel de valider la chaîne de certificats de serveur reçue. |
|
Client uniquement.
Empêcher Schannel de tenter de fournir automatiquement une chaîne de certificats pour l’authentification du client. |
|
Client uniquement.
EmpêcheZ Schannel de comparer le nom cible fourni avec les noms d’objet dans les certificats de serveur. |
|
Serveur uniquement.
Empêcher Schannel d’utiliser les fonctions de mappage de certificats système intégrées pour mapper les certificats clients à un compte d’utilisateur. |
|
Lors de la validation d’une chaîne de certificats, case activée tous les certificats à des fins de révocation. Pour obtenir d’autres restrictions, consultez Remarques. |
|
Lors de la validation d’une chaîne de certificats, ne case activée pas la racine pour révocation. Pour obtenir d’autres restrictions, consultez Remarques. |
|
Lors de la validation d’une chaîne de certificats, case activée uniquement le dernier certificat pour révocation. Pour obtenir d’autres restrictions, consultez Remarques. |
|
Client uniquement.
Schannel tente de fournir automatiquement une chaîne de certificats pour l’authentification du client. Cette valeur est l’opposé de SCH_CRED_NO_DEFAULT_CREDS. |
|
Demandez à Schannel de fractionner les données à chiffrer en deux enregistrements distincts pour contrer les faiblesses présentes dans le protocole SSL/TLS lorsqu’elles sont utilisées avec la suite de chiffrement symétrique à l’aide du mode de chaînage de blocs de chiffrement. Pour plus d’informations, consultez « Une vulnérabilité dans SSL/TLS pourrait autoriser la divulgation d’informations » dans la base de connaissances Aide et support à l’adresse http://support.microsoft.com/kb/2643584.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003, Windows XP et Windows XP/2000 : Cet indicateur n’est pas pris en charge. |
|
Schannel envoie le certificat racine dans le cadre du message de certificat.
Note Le certificat racine envoyé sur le réseau par le client ou le serveur Schannel ne doit pas être approuvé. Il doit être validé par rapport à un hachage approuvé du certificat racine.
|
|
Demande à Schannel de désactiver les algorithmes de chiffrement faibles connus, les suites de chiffrement et les versions de protocole SSL/TLS qui peuvent être activées pour une meilleure interopérabilité. |
|
Demande à Schannel de sélectionner uniquement les suites de chiffrement PSK et de désactiver toutes les autres suites de chiffrement. |
cTlsParameters
Nombre d’entrées dans le tableau pTlsParameters.
Il s’agit d’une erreur de spécifier plus de SCH_CRED_MAX_SUPPORTED_PARAMETERS.
pTlsParameters
Tableau de pointeurs vers les structures TLS_PARAMETERS qui indiquent des restrictions de paramètres TLS, le cas échéant. Si aucune restriction n’est spécifiée, les valeurs système par défaut sont utilisées. Il est recommandé que les applications s’appuient sur les valeurs système par défaut.
Il s’agit d’une erreur d’inclure plusieurs TLS_PARAMETERS structure avec cAlpnIds == 0 et rgstrAlpnIds == NULL.
Remarques
Pour utiliser la structure de SCH_CREDENTIALS, définissez SCHANNEL_USE_BLACKLISTS avec UNICODE_STRING et PUNICODE_STRING. Vous pouvez également inclure Ntdef.h, SubAuth.h ou Winternl.h.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 1809 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 1809 [applications de bureau uniquement] |
En-tête | schannel.h |