国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

在ASP/ASP.NET 中處理客戶端數字證書

2024-05-04 11:07:47
字體:
來源:轉載
供稿:網友

  客戶端數字證書與基本身份驗證(Basic)、域服務器的摘要式身份驗證、集成 Windows 身份認證或自定義的 Form 認證等方式相比,雖然部署和管理方面稍微復雜一些,但安全性也更好一些,應用上也較為靈活。

 在 ASP 和 ASP.NET 中處理和識別客戶端數字證書是非常容易的,代碼如下:

ASP (VBScript)語法:

    Dim subject
   subject=Request.ServerVariables("CERT_SUBJECT") 

   subject=Request.ClientCertifate("Subject")  '--適用于 Subject 沒有中文的證書

 ASP.NET(C#) 語法:

   string subject ;
   HttpClientCertificate hcc = Request.ClientCertificate;
   if(hcc.IsValid) = hcc.Subject;

    得到的 subject 字符串是以逗號分隔的子字段列表。例如,C=CN,O=BOC,CN=moslem ,然后將字符串分隔處理,取最后的 CN 值(可能不止一個 CN),這個值是用戶的 Common Name ,即“常規名稱”,一般就是用戶的姓名或 ID。

    拿到數字證書中的 CN 后,就可以做進一步的處理了,如對用戶進行授權等。我認為比較有效的一種做法是在客戶端同時啟用數字證書和 Form 認證,可以通過比較 CN 和 Form 中輸入的用戶名的值是否匹配來做到多因子身份認證。

    相對來說,ASP.NET 中提供了專門的處理客戶端數字證書的 HttpClientCertificate 類,因而在程序中處理也更為方便一些。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 彰化市| 石渠县| 普安县| 九寨沟县| 镇巴县| 万安县| 镇平县| 水富县| 新丰县| 东平县| 大化| 白银市| 徐闻县| 齐河县| 新乡市| 华亭县| 郯城县| 双鸭山市| 新营市| 阳山县| 黄浦区| 香港| 电白县| 广饶县| 天柱县| 新津县| 佛坪县| 隆安县| 内黄县| 青铜峡市| 巩义市| 阿坝县| 海晏县| 瑞丽市| 涡阳县| 长子县| 五莲县| 南澳县| 富裕县| 威远县| 朔州市|