Partager via


Gérer les protocoles SSL/TLS et les suites de chiffrement pour AD FS

La documentation suivante fournit des informations sur la désactivation et l’activation de certains protocoles TLS/SSL et suites de chiffrement que les services de fédération Active Directory (AD FS) utilisent.

Suites TLS/SSL, Schannel et chiffrement dans AD FS

Le protocole TLS (Transport Layer Security) fournit des communications sécurisées chiffrées sur le réseau. Le protocole SSL (Secure Sockets Layer) chiffre les échanges de données sensibles transmis entre un serveur web et un navigateur web similaire à TLS. Les services de fédération Active Directory (AD FS) utilisent ces protocoles pour les communications. Aujourd’hui, plusieurs versions de ces protocoles existent.

Le canal de sécurité (Schannel) est un fournisseur de support de sécurité (SSP) qui implémente les protocoles d’authentification standard SSL, TLS et DTLS Internet. L’interface SSPI (Security Support Provider Interface) est une API utilisée par les systèmes Windows pour exécuter des fonctions relatives à la sécurité, dont notamment l’authentification. Le SSPI fonctionne comme une interface commune à plusieurs SSP, y compris le SSP Schannel.

Une suite de chiffrement est un ensemble d’algorithmes cryptographiques. L’implémentation SSP Schannel des protocoles TLS/SSL utilise des algorithmes d’une suite de chiffrement pour créer des clés et chiffrer des informations. Une suite de chiffrement spécifie un algorithme pour chacune des tâches suivantes :

  • Échange de clés
  • Chiffrement en bloc
  • Authentification de message

AD FS utilise Schannel.dll pour effectuer ses interactions de communication sécurisées. Actuellement, AD FS prend en charge tous les protocoles et suites de chiffrement prises en charge par Schannel.dll.

Gérer les protocoles TLS/SSL et les suites de chiffrement

Importante

Cette section contient des étapes qui vous indiquent comment modifier le registre. Cependant, des problèmes sérieux peuvent survenir si vous modifiez le registre de manière incorrecte. Par conséquent, veillez à suivre attentivement ces étapes.

N’oubliez pas que la modification des paramètres de sécurité par défaut pour SCHANNEL peut interrompre ou empêcher les communications entre certains clients et serveurs. Cela se produit si la communication sécurisée est requise et qu’ils n’ont pas de protocole pour la négociation des communications.

Si vous appliquez ces modifications, elles doivent être appliquées à tous vos serveurs AD FS dans votre batterie de serveurs. Une fois ces modifications appliquées, un redémarrage est requis.

Aujourd’hui, renforcer vos serveurs et supprimer des suites de chiffrement plus anciennes ou faibles devient une priorité majeure pour de nombreuses organisations. Les suites logicielles sont disponibles pour tester vos serveurs et fournir des informations détaillées sur ces protocoles et suites. Afin de rester conforme ou d’obtenir des évaluations sécurisées, la suppression ou la désactivation de protocoles ou de suites de chiffrement plus faibles est devenue un must. Le reste de ce document fournit des conseils sur la façon d’activer ou de désactiver certains protocoles et suites de chiffrement.

Les clés de Registre suivantes se trouvent à l’emplacement suivant : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols. Utilisez l’Éditeur de Registre ou PowerShell pour activer ou désactiver ces protocoles et suites de chiffrement.

Capture d’écran de l’Éditeur de Registre montrant les clés de Registre situées dans le dossier Protocoles.

Activer et désactiver SSL 3.0

Utilisez les clés de Registre suivantes et leurs valeurs pour activer et désactiver SSL 3.0.

Activer SSL 3.0

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Désactivé par défaut 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Désactivé par défaut 00000000

Désactiver SSL 3.0

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Désactivé par défaut 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Désactivé par défaut 00000001

Utiliser PowerShell pour désactiver SSL 3.0

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

Write-Host 'SSL 3.0 has been disabled.'

Activer et désactiver TLS 1.0

Utilisez les clés de Registre suivantes et leurs valeurs pour activer et désactiver TLS 1.0.

Importante

La désactivation de TLS 1.0 interrompt l’approbation WAP vers AD FS. Si vous désactivez TLS 1.0, vous devez activer l’authentification forte pour vos applications. Pour plus d’informations, consultez Activer l’authentification forte pour les applications .NET

Activer TLS 1.0

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Désactivé par défaut 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client Désactivé par défaut 00000000

Désactivation de TLS 1.0

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Activé"=00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Désactivé par défaut 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client Désactivé par défaut 00000001

Utiliser PowerShell pour désactiver TLS 1.0

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

Write-Host 'TLS 1.0 has been disabled.'

Activer et désactiver TLS 1.1

Utilisez les clés de Registre suivantes et leurs valeurs pour activer et désactiver TLS 1.1.

Activation du protocole TLS 1.1

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Désactivé par défaut 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Activé 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Désactivé par défaut 00000000

Activer TLS 1.1

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Désactivé par défaut 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Désactivé par défaut 00000001

Utiliser PowerShell pour désactiver TLS 1.1

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

Write-Host 'TLS 1.1 has been disabled.'

Désactiver le protocole TLS 1.2

TLS 1.2 est activé par défaut à partir de Windows Server 2012. Vous pouvez utiliser les clés de Registre suivantes et leurs valeurs pour désactiver TLS 1.2.

Avertissement

La désactivation de TLS 1.2 n’est pas recommandée, car elle peut perturber les fonctionnalités d’autres composants sur le serveur qui s’appuient sur ce protocole. Par exemple, les services tels que Microsoft Azure AD Connect (Azure AD Sync) nécessitent que TLS 1.2 fonctionne correctement. La désactivation peut entraîner des défaillances de service ou une fonctionnalité détériorée.

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server Désactivé par défaut 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client Activé 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client Désactivé par défaut 00000001

Utiliser PowerShell pour désactiver TLS 1.2

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

Write-Host 'TLS 1.2 has been disabled.'

Activer ou désactiver des hachages, des chiffrements et des suites de chiffrement

Le contrôle des chiffrements, des hachages et des algorithmes d’échange de clés, autres que la taille de clé, via le Registre n’est pas pris en charge. Les hachages, les chiffrements et les algorithmes d’échange de clés sont contrôlés via PowerShell, MDM ou Cipher Suite Ordering.

Pour obtenir la liste complète des suites de chiffrement prises en charge, consultez Suites de chiffrement dans TLS/SSL (SSP Schannel). Cet article fournit une table des suites activées par défaut et indique les suites prises en charge, mais non activées par défaut. Pour hiérarchiser les suites de chiffrement, consultez Hiérarchisation des suites de chiffrement Schannel.

Activer l’authentification forte pour les applications .NET

Les applications .NET Framework 3.5/4.0/4.5.x peuvent basculer le protocole par défaut vers TLS 1.2 en activant la clé de Registre SchUseStrongCrypto. Ces clés de Registre forcent les applications .NET à utiliser TLS 1.2.

Importante

Pour AD FS sur Windows Server 2016 et Windows Server 2012 R2, vous devez utiliser la clé .NET Framework 4.0/4.5.x : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319

Pour .NET Framework 3.5, utilisez la clé de Registre suivante :

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 SchUseStrongCrypto 00000001

Pour .NET Framework 4.0/4.5.x, utilisez la clé de Registre suivante :

Chemin Nom de la valeur Données de la valeur
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 SchUseStrongCrypto 00000001

Capture d’écran de l’éditeur de Registre mettant en évidence la clé SchUseStrongCrypto

New-ItemProperty -path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -name 'SchUseStrongCrypto' -value '1' -PropertyType 'DWord' -Force | Out-Null

Informations supplémentaires