¿Cuál es el protocolo de seguridad predeterminado para comunicarse con servidores que admiten hasta TLS 1.2
? Será .NET
por defecto, seleccione el protocolo de seguridad más alta soportada en el lado del servidor o tengo que añadir explícitamente esta línea de código:
System.Net.ServicePointManager.SecurityProtocol =
SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
¿Hay alguna manera de cambiar este valor predeterminado, además de un cambio de código?
Por último, ¿ .NET 4.0
solo admite hasta TLS 1.0
? es decir, tengo que actualizar los proyectos del cliente a 4.5 para admitirlos TLS 1.2
.
Mi motivación es eliminar el soporte SSLv3
del lado del cliente incluso si el servidor lo admite (ya tengo un script de PowerShell para deshabilitar esto en el registro de la máquina) y admitir el protocolo TLS más alto que el servidor admite.
Actualización:
Mirando la ServicePointManager
clase en .NET 4.0
No veo valores enumerados para TLS 1.0
y 1.1
. En ambos .NET 4.0/4.5
, el valor predeterminado es SecurityProtocolType.Tls|SecurityProtocolType.Ssl3
. Esperemos que este valor predeterminado no se rompa deshabilitando SSLv3
en el registro.
Sin embargo, he decidido que tengo que actualizar todas las aplicaciones .NET 4.5
y agregar explícitamente de SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
todos modos a todos los códigos de arranque de todas las aplicaciones.
Esto hará que las solicitudes salientes a varias API y servicios no se degraden SSLv3
y deben seleccionar el nivel más alto TLS
.
¿Este enfoque suena razonable o excesivo? Tengo muchas aplicaciones para actualizar, y quiero probarlas en el futuro, ya que escuché que TLS 1.0
algunos proveedores pueden dejar de usarlas en el futuro cercano.
Como cliente que realiza solicitudes de salida a las API, ¿la desactivación de SSL3 en el registro tiene algún efecto en el marco .NET? Veo por defecto, TLS 1.1 y 1.2 no están habilitados, ¿tenemos que habilitarlo a través del registro? RE http://support.microsoft.com/kb/245030 .
Después de un poco de investigación, creo que la configuración del registro no tendrá ningún efecto ya que se aplican a IIS (subclave de servidor) y navegadores (subclave de cliente).
Lo sentimos, esta publicación se convirtió en varias preguntas, seguidas de respuestas "quizás".