У меня есть простой вопрос, но я не могу найти ответ нигде. У меня есть приложение WCF-Server. Я хочу, чтобы он использовал ТОЛЬКО TLS1.2.
У меня нет контроля над клиентом, и я не могу редактировать настройки SCHANNEL на машине.
Я уже пробовал следующее, которое, похоже, работает только для исходящих соединений (clientside)
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
Есть ли способ ограничить что-либо, кроме сервера TLS 1.2 на один код?
EDIT: Я использую привязку net.tcp и создаю такие привязки:
private static Binding CreateNetTcpBinding()
{
return new NetTcpBinding
{
ReceiveTimeout = TimeSpan.FromMinutes(10),
ReliableSession =
{
Enabled = true,
InactivityTimeout = TimeSpan.FromMinutes(1)
},
Security =
{
Mode = SecurityMode.Transport,
Transport =
{
ClientCredentialType = TcpClientCredentialType.Windows,
ProtectionLevel = ProtectionLevel.EncryptAndSign,
SslProtocols = SslProtocols.Tls12
},
Message =
{
AlgorithmSuite = SecurityAlgorithmSuite.xxx <-- not here on purpose,
ClientCredentialType = MessageCredentialType.Windows
}
}
};
}
Если кто-то скажет мне, где проверить TLS-версию текущего соединения (некоторый контекст), который также будет достаточным!
Заранее благодарю вас!