iis https 用戶端認證

來源:互聯網
上載者:User

標籤:

1、自建根憑證

makecert -r -pe -n "CN=WebSSLTestRoot" -b 12/22/2013 -e 12/23/2024 -ss root -sr localmachine -len 2048

 

2、建網站用的認證

makecert -pe -n "CN=www.aaa.com" -b 12/22/2013 -e 12/23/2024 -eku 1.3.6.1.5.5.7.3.1 -is root -ir localmachine -in WebSSLTestRoot -len 2048 -ss WebHosting -sr localmachine

cn是網站對應的網域名稱

3、建用戶端認證

makecert -pe -n "CN=czcz1024" -eku 1.3.6.1.5.5.7.3.2 -is root -ir localmachine -in WebSSLTestRoot -ss my -sr currentuser -len 2048

cn可以是使用者名稱

根憑證在 本機電腦-可信任的根憑證授權單位

網站認證在 本機電腦-Web宿主

用戶端認證在 目前使用者-個人

 

iis中,建立網站用web宿主的

使用ie,訪問,當用戶端有認證試,會要求選擇認證

string r;HttpClientCertificate cert = Request.ClientCertificate;if (cert.IsPresent)    r = cert.ServerSubject + "---" + cert.Subject;else    r = "No certificate was found.";return Content(r);

我們可以通過代碼來擷取認證資訊

 

 

4、程式自動建立使用者用戶端認證

var path = @"…\makecert.exe";var cmd = " -pe -n \"CN=czcz1024\" -eku 1.3.6.1.5.5.7.3.2 -is root -ir localmachine -in WebSSLTestRoot -ss my -sr currentuser -len 2048";var p = Process.Start(path, cmd);p.WaitForExit();            p.Close();

調用cmd去執行,需要iis已administrator身份運行

5、匯出,並提供客戶下載

X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser);store.Open(OpenFlags.MaxAllowed);foreach (X509Certificate2 myX509Certificate2 in store.Certificates){    if (myX509Certificate2.Subject == "CN=czcz1024")    {        byte[] CertByte = myX509Certificate2.Export(X509ContentType.Pfx,"123456");        return File(CertByte, "application/octet-stream", "cert.pfx");    }}return Content("not found");

同樣,這個也需要administrator才能擷取到

需要匯出成pfx,用戶端才可以匯入,匯入的時候,要求輸入密碼,密碼為代碼中的“123456”那部分

6、iis的ssl設定

如果是必需,當用戶端沒有認證時

 

當選擇

沒有認證則顯示

對應上面代碼的else分支

 

選擇 忽略 則不會要求用戶端提供認證了

 

自建根,當用戶端訪問時,需要匯入根憑證到受信任的根

iis https 用戶端認證

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.