최대 지원 서버와 통신하기위한 기본 보안 프로토콜은 무엇입니까 TLS 1.2
? 윌 .NET
기본적으로 서버 측에서 지원하는 최고 보안 프로토콜을 선택하거나 내가 명시 적으로이 코드 줄을 추가해야합니까 :
System.Net.ServicePointManager.SecurityProtocol =
SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
코드 변경 외에이 기본값을 변경하는 방법이 있습니까?
마지막으로 .NET 4.0
최대 TLS 1.0
? 즉, 지원하려면 클라이언트 프로젝트를 4.5로 업그레이드해야합니다 TLS 1.2
.
내 동기는 SSLv3
서버가 지원하더라도 클라이언트 측에 대한 지원을 제거 하고 (시스템 레지스트리 에서이 기능을 비활성화하는 powershell 스크립트가 있음) 서버가 지원하는 가장 높은 TLS 프로토콜을 지원하는 것입니다.
업데이트 :ServicePointManager
클래스를
보면 및에 .NET 4.0
대한 열거 값이 표시되지 않습니다 . 둘 다 기본값은 입니다. 레지스트리에서 비활성화해도이 기본값이 깨지지 않기를 바랍니다 .TLS 1.0
1.1
.NET 4.0/4.5
SecurityProtocolType.Tls|SecurityProtocolType.Ssl3
SSLv3
그러나 모든 응용 프로그램의 모든 부트 스트랩 코드로 모든 응용 프로그램 을 업그레이드 .NET 4.5
하고 명시 적으로 추가 해야한다고 결정했습니다 SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
.
이렇게하면 다양한 API 및 서비스에 대한 아웃 바운드 요청이 다운 그레이드되지 않고 SSLv3
최고 수준을 선택해야합니다 TLS
.
이 접근 방식이 합리적이거나 과도하게 들립니까? 업데이트 할 응용 프로그램이 많으며 TLS 1.0
가까운 장래에 일부 공급자가 더 이상 사용하지 않을 수 있다고 들었으므로 향후 증명하고 싶습니다 .
클라이언트가 API에 대한 아웃 바운드 요청을 할 때 레지스트리에서 SSL3을 비활성화하면 .NET 프레임 워크에도 영향을 미치나요? 기본적으로 TLS 1.1 및 1.2는 활성화되어 있지 않습니다. 레지스트리를 통해 활성화해야합니까? RE http://support.microsoft.com/kb/245030 .
약간의 조사 후에 레지스트리 설정이 IIS (서버 하위 키) 및 브라우저 (클라이언트 하위 키)에 적용되므로 영향을 미치지 않습니다.
죄송합니다.이 게시물은 여러 개의 질문으로 바뀌 었으며 "아마도"답변이 이어졌습니다.