위의 사양에 맞지 않으면 web api 발송 시 아래와 같은 오류가 발생될 수도 있습니다.
System.Net.WebException: 기본 연결이 닫혔습니다. 보내기에서 예기치 않은 오류가 발생했습니다. --->
System.IO.IOException: 예기치 않은 패킷 형식으로 인해 핸드셰이크가 실패했습니다.
ASP.NET MVC 및 WEB API 설정하기
TLS 1.2 를 강제 실행하려면, 사이트의 루트에서 global.asax 파일을 찾아 마우스 오른쪽 단추로 클릭하고 코드 열어서 Application_Start메소드 안에 아래 코드를 기술하면 됩니다.
namespace YourApplication
{
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
//**Add these lines**
if (ServicePointManager.SecurityProtocol.HasFlag(SecurityProtocolType.Tls12) == false)
{
ServicePointManager.SecurityProtocol = ServicePointManager.SecurityProtocol | SecurityProtocolType.Tls12;
}
//**Add these lines**
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
}
}
오류 발생할 경우
요청이 중단되었습니다. SSL/TLS 보안 채널을 만들 수 없습니다.
System.Net.WebException: 기본 연결이 닫혔습니다. 보내기에서 예기치 않은 오류가 발생했습니다. ---> System.IO.IOException: 예기치 않은 패킷 형식으로 인해 핸드셰이크가 실패했습니다.
만약에 전부 열어서 테스트 하고자 할 경우, 아래 처럼 프로토콜을 아래와 같이 지정 가능합니다.
댓글