若要執行與 Internet Information Services (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 上安裝 IIS (Windows XP) 和 IIS 6.0 (Windows Server 2003)
開啟 Internet Information Services Manager MMC 嵌入式管理單元。
以滑鼠右鍵按兩下預設網站,然後選取 [ 屬性]。
選取 [目錄安全性] 索引標籤。
按兩下 [ 伺服器憑證] 按鈕。 Web 伺服器證書精靈隨即啟動。
完成安裝精靈。 選取指派憑證的選項。 從顯示的憑證清單中選取 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 以開啟 Internet Information Services (IIS) MMC 嵌入式管理單元。
以滑鼠右鍵按兩下 [預設網站 ],然後選取 [編輯系結...
按兩下 [網站系結] 對話框的 [新增] 按鈕。
從 [類型] 下拉式清單中選取 [HTTPS]。
從 [SSL 憑證] 下拉式清單中選取 [ServiceModelSamples-HTTPS-Server],然後按兩下 [確定]。
使用 HTTPS 位址
https://localhost/servicemodelsamples/service.svc在瀏覽器中測試服務的存取權。
備註
由於您剛安裝的測試憑證不是受信任的憑證,因此流覽至使用此憑證保護的本機網址時,可能會遇到其他安全性警告。
拿掉憑證
請按照先前的指示使用 Internet Information Services Manager,但要移除憑證或綁定,而不是添加它。
使用下列命令移除計算機憑證。
httpcfg delete ssl -i 0.0.0.0:443