IIS(인터넷 정보 서비스)와 안전하게 통신하는 샘플을 실행하려면 서버 인증서를 만들고 설치해야 합니다.
1단계. 인증서 만들기
컴퓨터에 대한 인증서를 만들려면 관리자 권한으로 Visual Studio용 개발자 명령 프롬프트를 열고 IIS와의 보안 통신을 사용하는 각 샘플에 포함된 Setup.bat 실행합니다. 이 일괄 처리 파일을 실행하기 전에 경로에 Makecert.exe 포함된 폴더가 포함되어 있는지 확인합니다. 다음 명령은 Setup.bat인증서를 만드는 데 사용됩니다.
makecert -sr LocalMachine -ss My -n CN=ServiceModelSamples-HTTPS-Server -sky exchange -sk ServiceModelSamples-HTTPS-Key
2단계. 인증서 설치
방금 만든 인증서를 설치하는 데 필요한 단계는 사용 중인 IIS 버전에 따라 달라집니다.
IIS 5.1(Windows XP) 및 IIS 6.0(Windows Server 2003)에 IIS를 설치하려면
인터넷 정보 서비스 관리자 MMC 스냅인을 엽니다.
기본 웹 사이트를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.
디렉터리 보안 탭을 선택합니다.
서버 인증서 단추를 클릭합니다. 웹 서버 인증서 마법사가 시작됩니다.
마법사를 완료합니다. 인증서를 할당하는 옵션을 선택합니다. 표시되는 인증서 목록에서 ServiceModelSamples-HTTPS-Server 인증서를 선택합니다.
HTTPS 주소를
https://localhost/servicemodelsamples/service.svc
사용하여 브라우저에서 서비스에 대한 액세스를 테스트합니다.
이전에 Httpcfg.exe 사용하여 SSL을 구성한 경우
Makecert.exe 사용하거나 Setup.bat실행하여 서버 인증서를 만듭니다.
IIS 관리자를 실행하고 이전 단계에 따라 인증서를 설치합니다.
클라이언트 프로그램에 다음 코드 줄을 추가합니다.
중요합니다
이 코드는 Makecert.exe만든 인증서와 같은 테스트 인증서에만 필요합니다. 프로덕션 코드에는 권장되지 않습니다.
PermissiveCertificatePolicy.Enact("CN=ServiceModelSamples-HTTPS-Server");
IIS 7.0에 IIS를 설치하려면(Windows Vista 및 Windows Server 2008)
시작 메뉴에서 실행을 클릭한 다음 inetmgr을 입력하여 IIS(인터넷 정보 서비스) MMC 스냅인을 엽니다.
기본 웹 사이트를 마우스 오른쪽 단추로 클릭하고 바인딩 편집을 선택합니다.
사이트 바인딩 대화 상자의 추가 단추를 클릭합니다.
형식 드롭다운 목록에서 HTTPS를 선택합니다.
SSL 인증서 드롭다운 목록에서 ServiceModelSamples-HTTPS-Server를 선택하고 확인을 클릭합니다.
HTTPS 주소를
https://localhost/servicemodelsamples/service.svc
사용하여 브라우저에서 서비스에 대한 액세스를 테스트합니다.
비고
방금 설치한 테스트 인증서는 신뢰할 수 있는 인증서가 아니므로 이 인증서로 보호된 로컬 웹 주소로 검색할 때 추가 보안 경고가 발생할 수 있습니다.
인증서 제거
이전에 지시한 대로 인터넷 정보 서비스 관리자를 사용하지만 인증서 또는 바인딩을 추가하는 대신 제거합니다.
다음 명령을 사용하여 컴퓨터 인증서를 제거합니다.
httpcfg delete ssl -i 0.0.0.0:443