증상

컴퓨터에 Microsoft.NET Framework 4.6 업그레이드 한 것을 가정 합니다. SSL 3.0 ServicePointManager 또는 SslStream Api를 사용 하 여 서버에 연결 하는 응용 프로그램을 사용 하면 연결이 실패 합니다.

원인

ServicePointManager SslStream 에서 사용 하는 SSL/TLS 프로토콜 기본 설정 변경이 문제가 발생 합니다.

이전 값: Ssl 3.0 | Tls 1.0 | Tls 1.1

새 값: Tls 1.0 | Tls 1.1 | Tls 1.2

해결 방법

이 문제를 해결 하려면 SSL 3.0 POODLE 같은 공격에 취약 하 고 안전 하지 않은 것으로 표시 된 때문에 서버를 Tls 1.0, Tls 1.1 또는 Tls 1.2 업데이트.참고: 서버를 업데이트할 수 없습니다 AppContext 클래스를 사용 하 여이 기능을 해제 하도록 합니다. 이렇게 하려면 다음 방법 중 하나를 사용 합니다.

  • 프로그래밍: ServicePointManager 한 번만 초기화 되므로 응용 프로그램에서는 매우 먼저 되어야 합니다. 다음 코드 예제에서는 응용 프로그램에서 사용 합니다.

    private const string DisableCachingName = @"TestSwitch.LocalAppContext.DisableCaching";        private const string DontEnableSchUseStrongCryptoName = @"Switch.System.Net.DontEnableSchUseStrongCrypto";        AppContext.SetSwitch(DisableCachingName, true);        AppContext.SetSwitch(DontEnableSchUseStrongCryptoName, true);
  • 응용 프로그램에 대 한 AppConfig 파일을 사용 하 여: Appconfig 파일에 다음 줄을 추가 합니다.< AppContextSwitchOverrides value="Switch.System.Net.DontEnableSchUseStrongCrypto=true"/ >

.NET Framework 4.6에서 알려진된 문제에 대 한 자세한 내용은 알려진 문제를.NET Framework 4.6을참조 하십시오.

자세한 내용

제품 버전 변경 및.NET Framework 4.6에 미치는 영향에 대 한 자세한 내용은 .NET Framework 4.6에서 응용 프로그램 호환성을 참조 하십시오.참고

  • 응용 프로그램이.NET Framework 4.6을 대상으로 하는 경우에 새 구성이 적용 됩니다. 4.5.2.NET Framework 및 이전 버전의 적용 되지 않습니다 4.6.NET Framework 환경에서 실행 되는 경우에.

  • 영향을 받는 최상위 Api의 목록:

    • HttpWebRequest HttpClient

    • FtpClient

    • SmtpClient

    • SslStream

  • SCH_USE_STRONG_CRYPTO 이 플래그는.NET Framework 4.6에서 자동으로 사용 하 고 안전 하지 않은 암호화 및 해시 알고리즘을 제거 하 여 동작에 영향을. 모든 운영 체제 플랫폼에 대 한 이전의 Windows 10 RC4 알고리즘에서에서 제거할 사용 합니다. 다음 추가 안전 하지 않은 알고리즘은 제거 Windows 10에서: DES, NULL, 내보내고 , MD5

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.