程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> WCF NetTcpBinding Transport安全模式(7)

WCF NetTcpBinding Transport安全模式(7)

編輯:關於.NET

ClientCredentialType證書驗證模式---- ChainTrust驗證模式

ChainTrust驗證模式使用證書鏈來驗證 X.509證書是否有效以及是否由受信任 的頒發者所頒發。它指定每個證書都必須存在於某個證書層次結構中,而該層次 結構以位於證書鏈頂端的根證書頒發機構結束。它將驗證 X.509證書是否由受信 任的證書頒發機構頒發。通過搜索證書存儲區並確定是否已將該證書頒發機構的 證書指定為受信任的證書,可以做到這一點。為了使 WCF能夠做出此判斷,必須 將證書頒發機構證書鏈安裝在正確的證書存儲區中。

因為 Windows附帶一組默認的用於受信任證書頒發機構的證書鏈,所以可能不 必為所有證書頒發機構安裝證書鏈。

擴展閱讀       X.509的證書鏈說明

crt上有證書持有人的信息、持有人的公鑰、簽署者的簽名。當安裝了一個證 書後,就信任了這份證書。證書上會說明用途,例如服務器認證、客戶端認證, 或者簽署其他證書。當系統收到一份新的證書的時候,證書會說明是由誰簽署的 。如果這個簽署者確實可以簽署其他證書,並且收到證書上的簽名和簽署者的公 鑰可以對上的時候,系統就自動信任新的證書。
 在系統開始的時候,會自動安裝信任一些證書機構,這些被稱為根證書機 構(CA)。根證書機構會為其他公司頒發證書,用於各種用途。當然,被簽署的 證書也可能是一份“可簽署證書”,這樣就要檢查對方的資質。這樣 逐層簽署,就會形成“證書鏈”。

設置驗證模式為“ChainTrust”的配置如以下代碼所示。

在服務端設置驗證客戶端憑據模式為“ChainTrust”:

      <clientCertificate >
    
         <certificate findValue="XuanhunClient"
    
                       storeLocation="CurrentUser"
    
                       storeName="My"
    
                       x509FindType="FindBySubjectName"/>
    
<authentication certificateValidationMode="ChainTrust" trustedStoreLocation="CurrentUser"  />
    
       </clientCertificate>

在客戶端設置驗證驗證服務端憑據模式為“ChainTrust”:

  <serviceCertificate >
    
     <defaultCertificate 
    
                 x509FindType="FindBySubjectName"
    
                storeLocation="CurrentUser"
    
              storeName="TrustedPeople"
    
                findValue="XuanhunServer"
    
                />
    
<authentication certificateValidationMode="ChainTrust"  />
    
            </serviceCertificate>

作者:玄魂

出處:http://www.cnblogs.com/xuanhun/

查看本欄目

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved