WCF .NET 4.0 не работает без TLS 1.0
В компании, в которой я работаю, у нас есть продукт, который использует WCF вместо net.tcp с использованием SSL в.NET Framework 4.0. В конкретном клиенте по соображениям безопасности существует требование отключить SSL 2, SSL 3 и TLS 1. Проблема в том, что связь не работает без TLS 1.0. Может кто-нибудь сказать мне, почему? Я использовал IISCrypto для отключения вышеуказанных протоколов. Это прикреплено в этом обсуждении с примером кода. Шаги для воспроизведения сценария.
Отключите протоколы, как показано на рисунке ниже
Перезагрузите компьютер
- Построить решение прилагается
- Выполнить Server.exe
- Выполнить Client.exe
- Это покажет ошибку ниже: вызывающий не был аутентифицирован службой
2 ответа
Ребята.
После многих попыток единственным способом заставить WCF работать без TLS 1.0 было включение FIPS.
Перейдите по ссылке /questions/46801204/kak-vklyuchit-fips-na-windows-7/46801223#46801223 чтобы включить FIPS.
Если вы включили TLS 1.1 и 1.2 на клиенте, убедитесь, что они также включены на сервере. В некоторых более ранних версиях Windows TLS 1.1 и 1.2 не включены по умолчанию, и для них требуется их включение вручную.
Убедитесь, что и клиент, и сервер поддерживают шифрование TLS 1.1+, и повторите попытку подключения.