증상
.NET Framework 4.5 기반으로 빌드된 애플리케이션은 보안 HTTPS 연결을 설정하지 못하거나, 오래되고 안전하지 않은 프로토콜을 기본값으로 사용할 수 있습니다. 이로 인해 연결 실패, 브라우저 보안 경고가 발생하거나, TLS 1.2 이상과 같은 강력한 암호화 표준을 요구하는 최신 API 및 서비스에서 거부될 수 있습니다.
원인
.NET Framework 4.5는 지원이 종료되었으므로 최신 암호화 메커니즘을 사용하지 않습니다. 따라서 지원되는 프레임워크에서 앱을 빌드하는 것을 강력히 권장합니다. (여기에 지원 수명 주기 문서를 추가하세요)
.NET Framework 공식 지원 정책 | .NET
해결책
가장 강력한 해결책은 애플리케이션을 .NET Framework 4.6, 4.7 이상으로 업그레이드하는 것입니다. 이 버전부터는 TLS 1.2가 기본적으로 활성화됩니다. 이를 통해 추가 구성 없이도 애플리케이션이 더 강력한 암호화 스위트와 보안 프로토콜을 자동으로 사용하도록 보장합니다.
개발 또는 프로덕션 환경에 더 최신 .NET Framework를 설치한 후, 프로젝트의 대상 프레임워크를 업데이트하고 다시 컴파일하십시오. ASP.NET 애플리케이션의 경우, Web.config 파일을 업데이트하여 새 프레임워크 버전을 반영해야 합니다. 예를 들어, .NET 4.6으로 업그레이드하는 경우:
<system.web> <compilation targetFramework="4.6" /> <httpRuntime targetFramework="4.6" /> </system.web>
이 변경 사항은 업데이트된 프레임워크에서 애플리케이션을 다시 빌드하는 것과 함께, IIS 및 .NET 런타임이 최신 라이브러리를 사용하도록 보장합니다. 배포되면 애플리케이션은 기본적으로 TLS 1.2를 사용하여 HTTPS 연결을 협상하게 되며, 취약하거나 지원되지 않는 암호 프로토콜과 관련된 문제를 해결할 수 있습니다.