본문 바로가기

IT 살이/04. 기술 - 프로그래밍

ClickOnce 인증서 만료 문제

■ 이미 배포한 애플리케이션의 경우

.NETv2.0기반의 ClickOnce 애플리케이션에서는 인증서가 만료된 경우 만료 기간을 연장하여 업데이트를 할 수 없습니다. 만료 기간을 연장하면 전혀 새로운 인증서가 되어 버립니다. 따라서 인증서가 만료되면 기존의 ClickOnce 애플리케이션을 프로그램추가/제거에서 삭제하고 다시 설치해야 합니다.
구글링을 해보면 이를 해결하기 위한 노력이 있습니다. 그중에서 다음 링크는 그동안 봐 왔던 해결책중에서 개인적으로 제일 맘에 듭니다.

ClickOnce and Expiring Code Signing Certificates
http://www.jamesharte.com/blog/?p=11

모든 사용자들이 프로그램 추가/제거에서 애플리케이션을 삭제하고 다시 설치하는 작업이 필요없도록 하기 위한 방안을 설명하고 있습니다.

다음 링크도 참고할 수 있습니다.
http://support.microsoft.com/Default.aspx?kbid=925521
http://www.may.be/renewcert/
http://blogs.msdn.com/danielma/archive/2007/03/19/clickonce-and-expired-certificates.aspx

■ 앞으로 배포할 애플리케이션의 경우

이미 배포한 애플리케이션은 어쩔 수 없다지만, .NET 2.0과 Visual Studio 2005를 이용해서 개발한 애플리케이션을 배포할 경우라면 좋은 방법이 있습니다. 테스트 인증서를 만드는 컴의 현재 시간을 아주 먼 훗날로 세팅합니다. 예를 들어 2099년 정도로. 그런 다음 테스트 인증서를 만들면 그 인증서의 만료 날짜는 2100년이 됩니다.  관련 웹 페이지 문서 링크입니다.
ClickOnce Expired Certificate