1. 獲取訪問網(wǎng)站需要的證書
為葉集等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及葉集網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站制作、成都做網(wǎng)站、葉集網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
2. 從微軟官網(wǎng)下載“資源工具箱”,其中包括證書管理工具。
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17657
安裝完,Windows HTTP服務(wù)證書配置工具(WinHttpCertCfg.exe)通常應(yīng)該在C:\Program Files\Windows Resource Kits\Tools文件夾下。
3. 使用CMD命令行,運(yùn)行WinHttpCertCfg.exe工具;
WinHttpCertCfg.exe –g –c LOCAL_MACHINE\MY –i “你的證書地址” –a “授權(quán)的用戶組/名” –p密碼

給IIS服務(wù)用戶組授權(quán)并導(dǎo)入證書。

這樣,就可以在IIS管理,證書頁面可以看到剛才導(dǎo)入的證書。
重啟IIS服務(wù),使剛才的授權(quán)生效。
4. 導(dǎo)出證書為.CER文件
開始—》運(yùn)行—》輸入MMC;打開控制臺(tái)
文件—》添加/刪除管理單元
選擇“證書”,點(diǎn)擊“添加”,選擇“計(jì)算機(jī)賬號(hào)”,“下一步”,“完成”,“確定”
選擇“個(gè)人”—》“證書”;

右鍵單擊證書,“所有任務(wù)”—》“導(dǎo)出”—》“下一步”—》“下一步”
選擇

,點(diǎn)擊“下一步”,單擊“瀏覽”,輸入要保存的文件名和地址,“下一步”—》“完成”;
導(dǎo)出成功!
5. C#使用證書進(jìn)行SSL安全通信代碼示例
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- //引用命名空間
- using System.IO;
- using System.Net;
- using System.Net.Security;
- using System.Security.Authentication;
- using System.Security.Cryptography.X509Certificates;
- public partial class ssl : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- //驗(yàn)證服務(wù)器證書回調(diào)方法
- ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);
- //創(chuàng)建HttpWebRequest對(duì)象
- HttpWebRequest https = (HttpWebRequest)HttpWebRequest.Create("https://localhost/restful/test/BBBAAA");
- //創(chuàng)建證書
- X509Certificate obj509 = new X509Certificate(AppDomain.CurrentDomain.BaseDirectory+"cert\\ccc.cer");//寫入正確的證書路徑(第四步導(dǎo)出的Cer文件)
- //添加證書到HTTP請(qǐng)求中
- https.ClientCertificates.Add(obj509);
- https.Method = "GET";
- //獲取請(qǐng)求返回的數(shù)據(jù)
- HttpWebResponse response = (HttpWebResponse)https.GetResponse();
- //讀取返回的信息
- StreamReader sr = new StreamReader(response.GetResponseStream(), true);
- int count;
- char[] ReadBuf = new char[1024];
- do
- {
- count = sr.Read(ReadBuf, 0, 1024);
- if (0 != count)
- {
- Label3.Text = new string(ReadBuf);
- }
- } while (count > 0);
- }
- //重寫證書驗(yàn)證方法,總是返回TRUE,解決未能為SSL/TLS安全通道建立信任關(guān)系的問題
- public bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
- {
- //總是返回TRUE
- return true;
- }
- }
本文標(biāo)題:ASP.NET(C#)使用證書進(jìn)行SSL安全通信
本文鏈接:http://chinadenli.net/article18/pgjddp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、用戶體驗(yàn)、網(wǎng)站制作、、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)