.Net Framework Standard/WindowsApplication

IIS 보안 적용시 ClickOnce 사용 - TLS

달빛에취하다 2017. 8. 2. 10:56

IIS 에서 보안 채널중 SSL 3.0, SSL 2.0, TLS 1.0 을 미사용으로 변경후 TLS 1.1, TLS 1.2를 적용할때 WebService와 통신이 안되는 문제를 해결 하는 방법입니다.

( IIS Crypto 2.0 으로 설정시 https 통신에 문제가 생기더군요.)

 

.NetFramework 4.5.1 이상 버전부터 ServicePointManager.SecurityProtocol 에서 Tls11, Tls12 이 생겼습니다.

 

아래 내용은 적용 하는 부분 입니다.

 

    static class Program
    {
        /// <summary>
        /// 해당 응용 프로그램의 주 진입점입니다.
        /// </summary>
        [STAThread]
        static void Main()
        {
        
            // ------------------------------------------------------
            //System.Net.ServicePointManager.Expect100Continue = false;
            System.Net.ServicePointManager.SecurityProtocol = (System.Net.SecurityProtocolType)3072;  // 4.0
            //System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls11;
            //System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
            // ------------------------------------------------------            

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }

    }

 

 

1. 이 부분은 https 프로토콜에 적용 됩니다. (http는 적용되지 않습니다.)

 

2. 프로그램 주 진입점에 넣어서 사용하시면 됩니다.

 

3. ClickOnce 프로그램 배포 (.Application) 시 https를 사용할 경우 TLS 1.1 혹은 TLS 1.2 에서 배포 에러가 날 수 있습니다.

해당 부분은 체인 인증서 (Chain Certificate) 및 서버 인증서 부분을 확인하셔야 합니다.

  (클라이언트 부분도 마찬가지입니다.)

  - 이 부분은 통신 방식 문제라 Framework 버전을 올리셔도 해결이 되지 않을 수 있습니다. (일단 저는 테스트 했으나 안됩니다.)

  - 위에 언급한 인증서 부분을 확인하세요.

-> 해당 부분은 이미 .NetFramework 버전이 올라가면서 처리되어 있습니다. (작성일 : 2022-01-26)

 

 

4. 3번 항목에 대해서 Self Sign Certificate 로 확인된 사항입니다.

 

 

2022.07.22 - [Server/Windows Server] - IIS Crypto 적용 시 주의? 유의 사항 구버전 MS SQL 연결 - 추천 Cipher Suites

 

IIS Crypto 적용 시 주의? 유의 사항 구버전 MS SQL 연결 - 추천 Cipher Suites

글 작성일은 2022년 7월 22일 입니다. 시간이 갈 수록 변화하기 때문에 작성 일자를 적어 둡니다. IIS Crypto로 Windows Server의 TLS 버전 제한 및 cipher suites 제한시 MSSQL 연결에 문제가 생길 수 있습니다...

dev.d-0-b.kr