国产探花免费观看_亚洲丰满少妇自慰呻吟_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 類,因而在程序中處理也更為方便一些。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 九江县| 大同县| 吉隆县| 额济纳旗| 理塘县| 集贤县| 临江市| 芷江| 左贡县| 丹阳市| 宽甸| 商河县| 湄潭县| 平定县| 兴海县| 安阳市| 界首市| 松江区| 桐梓县| 都匀市| 托克托县| 镇雄县| 龙井市| 噶尔县| 辽中县| 浪卡子县| 栾川县| 修武县| 岳西县| 家居| 七台河市| 祁门县| 阿鲁科尔沁旗| 定襄县| 河西区| 黑水县| 左云县| 东光县| 永新县| 河北区| 白银市|