L'article décrit certaines informations de configuration du registre pour l'implémentation Windows® du protocole Transport Layer Security (TLS) et du protocole Secure Sockets Layer (SSL) via le fournisseur de support de sécurité Schannel (SSP).
Remarque :S'applique à Windows Server (canal semi-annuel), Windows Server 2019, Windows Server 2016 et Windows 10.
Les sections suivantes traitent des paramètres de configuration de registre spécifiques :
CertificateMappingMethods
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Deux méthodes existent pour mapper les certificats clients :
-
Mappages un à un :ces mappages associent des certificats clients individuels à des comptes d'utilisateurs individuels sur une base individuelle. Chaque certificat client correspond à un compte utilisateur.
-
Mappages plusieurs-à-un :Ces mappages associent plusieurs certificats à un compte d'utilisateur en fonction des sous-champs des certificats client.
La configuration de cette entrée sur votre serveur chaque fois qu'un client présente un certificat client associe automatiquement cet utilisateur au compte utilisateur Windows approprié.
Chiffres et suites de chiffrement
Pour configurer ces enregistrements, vous avez besoin de l'ordre de la suite de chiffrement TLS, de la stratégie de groupe MDM ou de PowerShell®, et cet article ne couvre pas la configuration.
ClientCacheTime
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Cette entrée contrôle le temps nécessaire au système d'exploitation (en millisecondes) pour faire expirer les entrées de cache côté client. Si la valeur est 0
, il désactive la connexion sécurisée.
ActiverOcspStaplingForSni
Le protocole OCSP (Online Certificate Status Protocol) est un protocole utilisé pour obtenir l'état de révocation d'un certificat numérique X.509 lors de la prise de contact TLS. En activant cette entrée, le serveur Web peut réduire sa charge de travail.
Chemin du registre :HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Ajoutez la clé suivante :"EnableOcspStaplingForSni"=dword:00000001
Pour désactiver, définissez le DWORD valeur à 0 :"EnableOcspStaplingForSni"=dword:00000000
FIPSAlgorithmPolicy
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\LSA
L'Institut national des normes et de la technologie annonce publiquement les normes fédérales de traitement de l'information (FIPS) développées pour être utilisées dans les systèmes informatiques par des agences gouvernementales américaines non militaires et des sous-traitants gouvernementaux. La définition de cette entrée contrôle la conformité FIPS. La valeur par défaut est 0
.
Hachages
La configuration de l'ordre de la suite de chiffrement doit contrôler les algorithmes de hachage TLS/SSL.
IssuerCacheSize
Lorsque les émetteurs ne correspondent pas à un compte, le serveur peut tenter de mapper le même nom d'émetteur à plusieurs reprises, des centaines de fois par seconde. Vous utilisez cette entrée, qui contrôle la taille du cache de l'émetteur, avec le mappage de l'émetteur. Cette entrée de registre spécifie la taille du cache et la valeur par défaut est 100
.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
IssuerCacheTime
Comme IssuerCacheSize évite de multiplier les tentatives de mappage de l'émetteur au serveur, vous pouvez limiter la durée de l'intervalle de temporisation du cache en millisecondes. La valeur par défaut est de 10 minutes.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
KeyExchangeAlgorithm :tailles de clé RSA client
Cette entrée contrôle la taille de la clé RSA du client.
Chemin du registre :HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\PKCS
Si vous souhaitez spécifier une longueur minimale pour la clé RSA, vous devez créer un ClientMinKeyBitLength
saisie et attribuez la longueur souhaitée. Si vous ne créez pas cette entrée, la valeur par défaut est 1024 bits. Cependant, si vous spécifiez une longueur maximale, créez le ClientMaxKeyBitLength
saisir et modifier la valeur souhaitée.
Remarque :La configuration de l'ordre de la suite de chiffrement doit contrôler l'utilisation d'algorithmes d'échange de clés.
KeyExchangeAlgorithm :tailles de clé Diffie-Hellman
Cette entrée contrôle les tailles de clé Diffie-Hellman.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\Diffie-Hellman
Notez que les entrées supplémentaires pour spécifier une valeur de la clé Diffie-Helman sont les mêmes que la clé RSA. Si vous souhaitez spécifier une plage minimale prise en charge de la clé Diffie-Helman, vous devez créer un ClientMinKeyBitLength entrée et assignez la longueur de bit souhaitée que vous voulez. Si vous ne créez pas cette entrée, la valeur par défaut est de 1024 bits. Si vous spécifiez une plage de prise en charge maximale, créez la ClientMaxKeyBitLength saisie et modifier la valeur souhaitée. Enfin, utilisez le ServerMinKeyBitLength pour spécifier la longueur du serveur TLS par défaut. Sinon, la valeur par défaut est 2048.
Remarque :La configuration de l'ordre de la suite de chiffrement doit contrôler l'utilisation d'algorithmes d'échange de clés.
Taille maximale du cache
Les éléments de cache peuvent avoir des tailles différentes. Lorsque vous activez cette entrée, vous définissez une taille maximale de cache. Définir la valeur sur 0
désactive la session côté serveur et évite la reconnexion. Probablement, en activant cette entrée, vous obtenez une consommation de mémoire supplémentaire sur votre serveur. La valeur par défaut est de 20 000 éléments.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Messagerie :analyse de fragments
Chaque fois qu'un client essaie de se connecter à un serveur avec TLS et que la connexion réussit, le système stocke un message de prise de contact sur le serveur. Vous pouvez définir une limite de taille pour le stockage de ces messages. Lorsque vous définissez la valeur sur 0x0
, vous ne pouvez pas stocker de messages de prise de contact, ce qui entraîne l'échec du TLS. Vous pouvez augmenter la taille maximale autorisée à 2^24-1 octets.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Messaging
SendTrustedIssuerList
Utilisez cette entrée uniquement si vous ne souhaitez pas envoyer de liste des émetteurs de confiance au client.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
ServerCacheTime
Utilisez cette entrée pour définir le temps (en millisecondes) nécessaire au système d'exploitation pour faire expirer les entrées de cache côté serveur.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Une valeur de 0
désactive le cache de session côté serveur et empêche la reconnexion. Augmenter ServerCacheTime au-dessus des valeurs par défaut provoque Lsass.exe consommer de la mémoire. Chaque élément de cache de session nécessite généralement 2 à 4 Ko de mémoire. Le temps de cache du serveur par défaut est de 10 heures.
Si vous désactivez l'entrée par défaut en utilisant le DisabledByDefault entrée et l'application anSSPI demande explicitement d'utiliser SSL, TLS ou DTLS, cela peut être négocié.
SSL 2.0
Cette sous-clé contrôle l'utilisation de SSL 2.0.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole SSL 2.0, créez un Activé (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0
. Pour désactiver SSL 2.0 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
SSL 3.0
Cette sous-clé contrôle l'utilisation de SSL 3.0.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole SSL 3.0, créez un Activé (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0
. Pour désactiver SSL 3.0 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
TLS 1.0
Cette sous-clé contrôle l'utilisation de TLS 1.0.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole TLS 1.0, créez un Enabled (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez le DWORD valeur à 0
.Pour désactiver TLS 1.0 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
TLS 1.1
Cette sous-clé contrôle l'utilisation de TLS 1.1.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole TLS 1.1, créez un Enabled (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0
. Pour désactiver TLS 1.1 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
TLS 1.2
Cette sous-clé contrôle l'utilisation de TLS 1.2.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole TLS 1.2, créez un Enabled (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0.
Pour désactiver TLS 1.2 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
DTLS 1.0
Cette sous-clé contrôle l'utilisation de DTLS 1.0.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole DTLS 1.0, créez un Enabled (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0
. Pour désactiver DTLS 1.0 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.
DTLS 1.2
Cette sous-clé contrôle l'utilisation de DTLS 1.2.
Chemin du registre :HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
Pour activer le protocole DTLS 1.2, créez un Enabled (dans la sous-clé Client ou Server) et remplacez la valeur par 1
. Pour le désactiver, changez la valeur en 0
. Pour désactiver DTLS 1.2 par défaut, créez un DisabledByDefault entrée et changez la valeur en 1
.