構(gòu)建HTTPS
[刀鋒與傷口 發(fā)表于 2006-12-20 16:49:00]
1、不要改變端口號,,在你的站點中,。
2、申請服務(wù)端證書是要通過:高級申請 3,、申請時是什么名稱,,用時也必須用什么名稱。比如申請時用jumpworknet 則用時不能用192.168.160.11或localhost,。以消除第三個錯誤,。 4、可以通過兩種方式去掉第一的錯誤:把服務(wù)器的站點加入到客戶端,,二是把服務(wù)端的受信任的根證書拷到客戶端進行證書的導(dǎo)入,。 ==================================================== 如何設(shè)置客戶端證書 更新日期: 2004-4-20 0:00:00 本頁內(nèi)容 目標(biāo) 適用范圍 如何使用本章內(nèi)容 摘要 創(chuàng)建一個簡單的 Web 應(yīng)用程序 將 Web 應(yīng)用程序配置為需要客戶端證書 申請并安裝客戶端證書 驗證客戶端證書操作 其他資源 目標(biāo) 本章的目標(biāo)是: • 獲取并安裝客戶端證書。 • 創(chuàng)建一個需要客戶端證書的 ASP.NET Web 應(yīng)用程序,。 返回頁首 適用范圍 本章適用于以下產(chǎn)品和技術(shù): • Microsoft® Windows® XP 或 Windows 2000 Server (Service Pack 3) 以及更高版本的操作系統(tǒng) • Microsoft Internet 信息服務(wù) (IIS) 5.0 • Microsoft 證書服務(wù)(如果您需要生成自己的證書) • Microsoft .NET Framework 版本 1.0 (Service Pack 2) 以及更高版本 • Microsoft Visual C#® .NET 返回頁首 如何使用本章內(nèi)容 若要學(xué)好本章內(nèi)容: • 您必須具有使用 Visual C# .NET 和 Microsoft Visual Studio® .NET 的經(jīng)驗,。 • 您必須具有使用 ASP.NET 開發(fā) Web 應(yīng)用程序的經(jīng)驗。 • 您必須有配置 IIS 的經(jīng)驗,。 • 如果您想生成新的客戶端證書,,則必須能夠訪問某個證書頒發(fā)機構(gòu) (CA),如 Microsoft 證書服務(wù),。 • 如果您不希望生成自己的證書,,則必須決定將從哪個商業(yè)證書頒發(fā)機構(gòu)申請客戶端證書,。某些證書頒發(fā)機構(gòu) (CA) 會就此服務(wù)收費。 • 您必須具有一臺安裝了 SSL 證書的 Web 服務(wù)器,。有關(guān)詳細(xì)信息,,請參見如何在 Web 服務(wù)器上設(shè)置 SSL。 • 要了解客戶端證書與其他身份驗證形式之間的相同與差異之處,,請參見第 2 章 ASP.NET 應(yīng)用程序的安全模型,。 返回頁首 摘要 客戶端證書為 Web 應(yīng)用程序提供了一種非常好的身份驗證機制。瀏覽器或其他客戶端應(yīng)用程序必須先提供有效的身份驗證,,然后才能獲得應(yīng)用程序訪問權(quán)限,,這使得客戶端不必提供用戶名和密碼。因此,,在創(chuàng)建供其他客戶端應(yīng)用程序訪問的安全 Web 服務(wù)時,,客戶端的證書就顯得特別有用。 本章詳細(xì)介紹如何獲取和安裝客戶端證書,,并演示了如何創(chuàng)建需要客戶端證書的 Web 應(yīng)用程序,。 返回頁首 創(chuàng)建一個簡單的 Web 應(yīng)用程序 在此過程中,您將創(chuàng)建一個供測試用的簡單 Web 應(yīng)用程序,。 • 創(chuàng)建一個簡單的 Web 應(yīng)用程序 1. 啟動 Visual Studio .NET 并創(chuàng)建一個新的名為 SecureApp 的 Visual C# ASP.NET Web 應(yīng)用程序,。 2. 從工具箱中將一個標(biāo)簽控件拖放到 WebForm1.aspx Web 窗體上,然后將其 ID 屬性設(shè)置為 message,。 3. 再拖放一個標(biāo)簽至 WebForm1.aspx 窗體上,然后將其 ID 屬性設(shè)置為 certData,。 4. 將下面的代碼添加到 Page_Load 事件過程中,。 string username; username = User.Identity.Name; message.Text = "Welcome " + username; HttpClientCertificate cert = Request.ClientCertificate; if (cert.IsPresent) { certData.Text = "檢索到客戶端證書"; } else { certData.Text = "無客戶端證書"; } 5. 在“生成”菜單上,單擊“生成解決方案”,。 6. 啟動 Internet Explorer 并導(dǎo)航至 http://localhost/SecureApp/WebForm1.aspx,。 頁面應(yīng)該顯示“歡迎”消息(不顯示用戶名,因為用戶尚未經(jīng)過身份驗證)和“沒有客戶端證書”,。 7. 關(guān)閉 Internet Explorer,。 返回頁首 將 Web 應(yīng)用程序配置為需要客戶端證書 此過程使用 Internet 信息服務(wù) (IIS) 將 Web 應(yīng)用程序的虛擬目錄配置為需要證書。 本過程假設(shè)您在 Web 服務(wù)器上安裝了有效的證書,。有關(guān)安裝 Web 服務(wù)器證書的詳細(xì)信息,,請參見如何在 Web 服務(wù)器上設(shè)置 SSL。 • 將 Web 應(yīng)用程序的虛擬目錄配置為需要證書 1. 在 Web 服務(wù)主機上啟動 IIS,。 2. 導(dǎo)航到 SecureApp 虛擬目錄,。 3. 右鍵單擊 SecureApp,然后單擊“屬性”,。 4. 單擊“目錄安全性”選項卡,。 5. 單擊“安全通信”下的“編輯”,。 如果無法使用“編輯”,則可能沒有安裝 Web 服務(wù)器證書,。 6. 選擇“要求安全通道 (SSL)”復(fù)選框,。 7. 選擇“需要客戶端證書”選項。 8. 單擊“確定”,,然后再單擊“確定”,。 9. 在“繼承覆蓋”對話框中,單擊“全選”,,然后單擊“確定”關(guān)閉“SecureApp 屬性”對話框,。 這會將新的安全設(shè)置應(yīng)用于虛擬根目錄下的所有子目錄。 10. 要確認(rèn) Web 站點已正確配置,,啟動 Internet Explorer 并(使用 HTTPS)瀏覽到 https://localhost/secureapp/webform1.aspx,。 11. Internet Explorer 顯示“客戶身份驗證”對話框,要求您選擇一個客戶端證書,。因為您尚未安裝客戶端證書,,所以單擊“確定”,確認(rèn)顯示通知您頁面需要客戶端證書的錯誤頁面,。 12. 關(guān)閉 Internet Explorer,。 返回頁首 申請并安裝客戶端證書 此過程安裝客戶端證書。您可以使用由任何證書頒發(fā)機構(gòu)頒發(fā)的證書,,也可按照后面幾節(jié)所述使用 Microsoft 證書服務(wù)來生成自己的證書,。 此過程假設(shè) Microsoft 證書服務(wù)是為掛起的申請配置的,這要求管理員專門頒發(fā)證書,。它也可以配置為應(yīng)證書申請自動頒發(fā)證書,。 • 檢查證書申請狀態(tài)設(shè)置 1. 在 Microsoft 證書服務(wù)計算機上,從“管理工具”程序組中選擇“證書頒發(fā)機構(gòu)”,。 2. 展開“證書頒發(fā)機構(gòu)(本地)”,,右鍵單擊證書頒發(fā)機構(gòu)并單擊“屬性”。 3. 單擊“策略模塊”選項卡,,然后單擊“配置”,。 4. 檢查默認(rèn)操作。 以下過程假設(shè)選中了“將證書申請狀態(tài)設(shè)成待定,。管理員必須專門頒發(fā)證書”,。 • 申請客戶端證書 1. 啟動 Internet Explorer 并導(dǎo)航至 http://hostname/certsrv,其中 hostname 是安裝 Microsoft 證書服務(wù)的計算機的名稱,。 2. 單擊“申請一個證書”,,然后單擊“下一步”。 3. 在“選擇申請類型”頁上,,單擊“用戶證書”,,然后單擊“下一步”,。 4. 單擊“提交”完成申請。 5. 關(guān)閉 Internet Explorer,。 • 頒發(fā)客戶端證書 1. 從“管理工具”程序組中啟動“證書頒發(fā)機構(gòu)”工具,。 2. 展開您的證書頒發(fā)機構(gòu),然后選擇“掛起的申請”文件夾,。 3. 選擇剛提交的證書申請,,指向“操作”菜單上的“所有任務(wù)”,然后單擊“頒發(fā)”,。 4. 確認(rèn)該證書顯示在“頒發(fā)的證書”文件夾中,,然后雙擊查看它。 5. 在“詳細(xì)信息”選項卡上,,單擊“復(fù)制到文件”將證書保存為 Base-64 編碼的 X.509 證書,。 6. 關(guān)閉證書的屬性窗口。 7. 關(guān)閉證書頒發(fā)機構(gòu)工具,。 • 安裝客戶端證書 1. 要查看證書,,啟動 Windows 資源管理器,導(dǎo)航至在前一過程中保存的 .cer 文件,,然后雙擊它,。 2. 單擊“安裝證書”,然后在“證書導(dǎo)入向?qū)?#8221;的首頁單擊“下一步”,。 3. 選擇“根據(jù)證書類型,,自動選擇證書存儲區(qū)”,然后單擊“下一步”,。 4. 單擊“完成”以完成該向?qū)?。關(guān)閉確認(rèn)消息框,然后單擊“確定”關(guān)閉證書,。 返回頁首 驗證客戶端證書操作 此過程驗證您是否可以使用客戶端證書訪問 SecureApp 應(yīng)用程序。 • 驗證客戶端證書操作 1. 啟動 Internet Explorer 并導(dǎo)航至 https://localhost/secureapp/webform1.aspx,。 2. 確認(rèn) Web 頁成功顯示,。 如何在 Web 服務(wù)器上設(shè)置 SSL 更新日期: 2004-4-20 0:00:00 本頁內(nèi)容 目標(biāo) 適用范圍 如何使用本章內(nèi)容 摘要 生成證書申請 提交證書申請 頒發(fā)證書 在 Web 服務(wù)器上安裝證書 將資源配置為要求 SSL 訪問 目標(biāo) 本章的目標(biāo)是: • 獲取 SSL 證書。 • 在 IIS 服務(wù)器上安裝 SSL 證書,。 • 配置虛擬目錄以要求 SSL,。 返回頁首 適用范圍 本章適用于以下產(chǎn)品和技術(shù): • Microsoft Windows® XP 或 Windows 2000 Server (Service Pack 3) 以及更高版本的操作系統(tǒng) • Microsoft Internet 信息服務(wù) 5.0 • Microsoft 證書服務(wù)(如果您需要生成自己的證書) 返回頁首 如何使用本章內(nèi)容 若要學(xué)好本章內(nèi)容: • 您必須有配置 IIS 的經(jīng)驗。 • 如果您想生成自己的證書,,則必須能夠訪問某個證書頒發(fā)機構(gòu) (CA),,如 Microsoft 證書服務(wù)。 • 如果您不希望生成自己的證書,,則必須決定將向哪個商業(yè)證書頒發(fā)機構(gòu)申請 SSL 證書,。大多數(shù)證書頒發(fā)機構(gòu) (CA) 會就此服務(wù)收費,。 • 閱讀第 4 章安全通信。其中介紹了 SSL 及其最常見的用途,。 返回頁首 摘要 安全套接字層 (SSL) 是一套提供身份驗證,、保密性和數(shù)據(jù)完整性的加密技術(shù)。SSL 最常用來在 Web 瀏覽器和 Web 服務(wù)器之間建立安全通信通道,。它也可以在客戶端應(yīng)用程序和 Web 服務(wù)之間使用,。 為支持 SSL 通信,必須為 Web 服務(wù)器配置 SSL 證書,。本章介紹如何獲取 SSL 證書,,以及如何配置 Microsoft® Internet 信息服務(wù) (IIS),以便支持 Web 瀏覽器和其他客戶端應(yīng)用程序之間使用 SSL 安全地進行通信,。 返回頁首 生成證書申請 此過程創(chuàng)建一個新的證書申請,,此申請可發(fā)送到證書頒發(fā)機構(gòu) (CA) 進行處理。如果成功,,CA 將給您發(fā)回一個包含有效證書的文件,。 • 生成證書申請 1. 啟動 IIS Microsoft 管理控制臺 (MMC) 管理單元。 2. 展開 Web 服務(wù)器名,,選擇要安裝證書的 Web 站點,。 3. 右鍵單擊該 Web 站點,然后單擊“屬性”,。 4. 單擊“目錄安全性”選項卡,。 5. 單擊“安全通信”中的“服務(wù)器證書”按鈕,啟動 Web 服務(wù)器證書向?qū)А?br> 注意:如果“服務(wù)器證書”不可用,,可能是因為您選擇了虛擬目錄,、目錄或文件。返回第 2 步,,選擇 Web 站點,。 6. 單擊“下一步”跳過歡迎對話框。 7. 單擊“創(chuàng)建一個新證書”,,然后單擊“下一步”,。 8. 該對話框有以下兩個選項: • “現(xiàn)在準(zhǔn)備申請,但稍后發(fā)送” 該選項總是可用的,。 • “立即將申請發(fā)送到在線證書頒發(fā)機構(gòu)” 僅當(dāng) Web 服務(wù)器可以在配置為頒發(fā) Web 服務(wù)器證書的 Windows 2000 域中訪問一個或多個 Microsoft 證書服務(wù)器時,,該選項才可用。在后面的申請過程中,,您有機會從列表中選擇將申請發(fā)送到的頒發(fā)機構(gòu),。 單擊“現(xiàn)在準(zhǔn)備申請,但稍后發(fā)送”,,然后單擊“下一步”,。 9. 在“名稱”字段中鍵入證書的描述性名稱,,在“位長”字段中鍵入密鑰的位長,然后單擊“下一步”,。 向?qū)褂卯?dāng)前 Web 站點名稱作為默認(rèn)名稱,。它不在證書中使用,但作為友好名稱以助于管理員識別,。 10. 在“組織”字段中鍵入組織名稱(例如 Contoso),,在“組織單位”字段中鍵入組織單位(例如“銷售部”),然后單擊“下一步”,。 注意:這些信息將放在證書申請中,,因此應(yīng)確保它的正確性。CA 將驗證這些信息并將其放在證書中,。瀏覽您的 Web 站點的用戶需要查看這些信息,,以便決定他們是否接受證書。 11. 在“公用名”字段中,,鍵入您的站點的公用名,,然后單擊“下一步”。 重要說明:公用名是證書最后的最重要信息之一,。它是 Web 站點的 DNS 名稱(即用戶在瀏覽您的站點時鍵入的名稱),。如果證書名稱與站點名稱不匹配,當(dāng)用戶瀏覽到您的站點時,,將報告證書問題,。 如果您的站點在 Web 上并且被命名為 www.,這就是您應(yīng)當(dāng)指定的公用名,。 如果您的站點是內(nèi)部站點,,并且用戶是通過計算機名稱瀏覽的,請輸入計算機的 NetBIOS 或 DNS 名稱,。 12. 在“國家/地區(qū)”,、“州/省”和“城市/縣市”等字段中輸入正確的信息,然后單擊“下一步”,。 13. 輸入證書申請的文件名,。 該文件包含類似下面這樣的信息。 -----BEGIN NEW CERTIFICATE REQUEST----- MIIDZjCCAs8CAQAwgYoxNjA0BgNVBAMTLW1penJvY2tsYXB0b3Aubm9ydGhhbWVy... -----END NEW CERTIFICATE REQUEST----- 這是您的證書申請的 Base 64 編碼表示形式,。申請中包含輸入到向?qū)е械男畔ⅲ€包括您的公鑰和用您的私鑰簽名的信息,。 將此申請文件發(fā)送到 CA,。然后 CA 會使用證書申請中的公鑰信息驗證用您的私鑰簽名的信息。CA 也驗證申請中提供的信息,。 當(dāng)您將申請?zhí)峤坏?CA 后,,CA 將在一個文件中發(fā)回證書,。然后您應(yīng)當(dāng)重新啟動 Web 服務(wù)器證書向?qū)А?br> 14. 單擊“下一步”。該向?qū)э@示證書申請中包含的信息概要,。 15. 單擊“下一步”,,然后單擊“完成”完成申請過程。 證書申請現(xiàn)在可以發(fā)送到 CA 進行驗證和處理,。當(dāng)您從 CA 收到證書響應(yīng)以后,,可以再次使用 IIS 證書向?qū)В?Web 服務(wù)器上繼續(xù)安裝證書,。 返回頁首 提交證書申請 此過程使用 Microsoft 證書服務(wù)提交在前面的過程中生成的證書申請,。 • 提交證書申請 1. 使用“記事本”打開在前面的過程中生成的證書文件,將它的整個內(nèi)容復(fù)制到剪貼板,。 2. 啟動 Internet Explorer,,導(dǎo)航到 http://hostname/CertSrv,其中 hostname 是運行 Microsoft 證書服務(wù)的計算機的名稱,。 3. 單擊“申請一個證書”,,然后單擊“下一步”。 4. 在“選擇申請類型”頁中,,單擊“高級申請”,,然后單擊“下一步”。 5. 在“高級證書申請”頁中,,單擊“使用 Base64 編碼的 PKCS#10 文件提交證書申請”,,然后單擊“下一步”。 6. 在“提交一個保存的申請”頁中,,單擊“Base64 編碼的證書申請(PKCS #10 或 #7)”文本框,,按住 CTRL+V,粘貼先前復(fù)制到剪貼板上的證書申請,。 7. 在“證書模板”組合框中,,單擊“Web 服務(wù)器”。 8. 單擊“提交”,。 9. 關(guān)閉 Internet Explorer,。 返回頁首 頒發(fā)證書 • 頒發(fā)證書 1. 從“管理工具”程序組中啟動“證書頒發(fā)機構(gòu)”工具。 2. 展開您的證書頒發(fā)機構(gòu),,然后選擇“掛起的申請”文件夾,。 3. 選擇剛才提交的證書申請。 4. 在“操作”菜單中,,指向“所有任務(wù)”,,然后單擊“頒發(fā)”。 5. 確認(rèn)該證書顯示在“頒發(fā)的證書”文件夾中,然后雙擊查看它,。 6. 在“詳細(xì)信息”選項卡中,,單擊“復(fù)制到文件”,將證書保存為 Base-64 編碼的 X.509 證書,。 7. 關(guān)閉證書的屬性窗口,。 8. 關(guān)閉“證書頒發(fā)機構(gòu)”工具。 返回頁首 在 Web 服務(wù)器上安裝證書 此過程在 Web 服務(wù)器上安裝在前面的過程中頒發(fā)的證書,。 • 在 Web 服務(wù)器上安裝證書 1. 如果 Internet 信息服務(wù)尚未運行,,則啟動它。 2. 展開您的服務(wù)器名稱,,選擇要安裝證書的 Web 站點,。 3. 右鍵單擊該 Web 站點,然后單擊“屬性”,。 4. 單擊“目錄安全性”選項卡,。 5. 單擊“服務(wù)器證書”啟動 Web 服務(wù)器證書向?qū)А?br> 6. 單擊“處理掛起的申請并安裝證書”,然后單擊“下一步”,。 7. 輸入包含 CA 響應(yīng)的文件的路徑和文件名,,然后單擊“下一步”。 8. 檢查證書概述,,單擊“下一步”,,然后單擊“完成”。 現(xiàn)在,,已在 Web 服務(wù)器上安裝了證書,。 返回頁首 將資源配置為要求 SSL 訪問 此過程使用 Internet 服務(wù)管理器,將虛擬目錄配置為要求 SSL 訪問,。您可以為特定的文件,、目錄或虛擬目錄要求使用 SSL??蛻舳吮仨毷褂?HTTPS 協(xié)議訪問所有這類資源,。 • 將資源配置為要求 SSL 訪問 1. 如果 Internet 信息服務(wù)尚未運行,則啟動它,。 2. 展開您的服務(wù)器名稱和 Web 站點,。(這必須是已安裝證書的 Web 站點) 3. 右鍵單擊某個虛擬目錄,然后單擊“屬性”,。 4. 單擊“目錄安全性”選項卡,。 5. 單擊“安全通信”下的“編輯”。 6. 單擊“要求安全通道 (SSL)”,。 現(xiàn)在客戶端必須使用 HTTPS 瀏覽到此虛擬目錄,。 7. 單擊“確定”,然后再次單擊“確定”關(guān)閉“屬性”對話框。 8. 關(guān)閉 Internet 信息服務(wù),。 |
|
來自: jimmylin88cn > 《安全》