WCFNetTcpBindingTransport安全模式(1)NetTcpSecurity定義
WCF NetTcpBinding Transport安全模式(1)NetTcpSecurity定義
預設情況下,NetTcpBinding會生成一個執行時通訊堆疊,該堆疊使用傳輸安全。
NetTcpBinding類共有四個建構函式,分別如下:
q NetTcpBinding()。初始化NetTcpBinding類的新例項。
q NetTcpBinding(SecurityMode)。用所使用的指定安全型別初始化NetTcpBinding類的新例項。
q NetTcpBinding(String)。使用指定配置名稱初始化NetTcpBinding類的新例項。
q NetTcpBinding(SecurityMode, Boolean)。用所使用的指定安全型別和一個指示是否顯式啟用安全會話的值來初始化NetTcpBinding類的新例項。
NetTcpBinding類有一個型別為NetTcpSecurity的屬性,名為Security。NetTcpSecurity指定用NetTcpBinding配置的終結點所使用的傳輸級安全性和訊息級安全性的型別。程式碼清單11-8是NetTcpSecurity的定義(部分成員)。
程式碼清單11-8 NetTcpSecurity定義
public sealed class NetTcpSecurity
{
// Fields
internal const SecurityMode DefaultMode = SecurityMode.Transport;
// Methods
public NetTcpSecurity();
public MessageSecurityOverTcp Message {get; set; }
public SecurityMode Mode { get; set; }
public TcpTransportSecurity Transport { get; set; }
}
從以上程式碼可以知道,NetTcpSecurity為NetTcpBinding設定安全模式,並根據安全模式指定傳輸和訊息安全細節。同時,可以看到預設情況下,NetTcpSecurity為NetTcpBinding設定的傳輸安全型別為Transport。若安全型別為Transport,那麼需要設定TcpTransportSecurity屬性的值,TcpTransportSecurity的定義如程式碼清單11-9所示。
程式碼清單11-9 TcpTransportSecurity定義(部分程式碼)
public sealed class TcpTransportSecurity
{
internal const TcpClientCredentialType DefaultClientCredentialType = TcpClientCredentialType.Windows;
internal const ProtectionLevel DefaultProtectionLevel = ProtectionLevel.EncryptAndSign;
[DefaultValue(1)]
public TcpClientCredentialType ClientCredentialType { get; set; }
public ExtendedProtectionPolicy ExtendedProtectionPolicy { get; set; }
[DefaultValue(2)]
public ProtectionLevelProtectionLevel { get; set; }
}
以上程式碼公開了TcpTransportSecurity的三個屬性,其中ClientCredentialType屬性用來獲取或設定用於身份驗證的客戶端憑據型別;ExtendedProtectionPolicy屬性用來獲取或設定 TCP 傳輸的擴充套件保護策略;ProtectionLevel用來設定保護級別。在預設情況下,客戶端憑據型別設定為Windows,保護級別為EncryptAndSign。
下面的系列博文通過例項來探究NetTcpBinding下的安全配置。
—————————————注:本文部分內容改編自《.NET 安全揭祕》
本文轉自玄魂部落格園部落格,原文連結:http://www.cnblogs.com/xuanhun/archive/2012/06/24/2560033.html,如需轉載請自行聯絡原作者
相關文章
- WCFNetTcpBindingTransport安全模式(8)ClientCredentialType證書驗證模式—-PeerOrChainTrust驗證模式TCP模式clientAIRust
- WCFNetTcpBindingTransport安全模式(7)ClientCredentialType證書驗證模式—-ChainTrust驗證模式TCP模式clientAIRust
- 設計模式定義設計模式
- 資料模式(Schema)定義模式
- 360安全衛士如何設定自定義安全防護
- 介面卡 和 策略模式的定義模式
- 策略模式-定義一個演算法族模式演算法
- Oracle歸檔模式、引數意義、設定Oracle模式
- 思科安全副總裁:SDN應該是安全定義網路
- 設計模式的數學定義是什麼?設計模式
- 安全性配置-定義任務流節點
- 1 函式極限的嚴格定義函式
- linux PS1 提示符定義Linux
- 答讀者問(1):非模式物種找marker;如何根據marker定義細胞型別模式型別
- 軟體定義安全的發展及應對策略
- 對話推薦系統 | (1) 任務定義
- Protocol Buffers學習(1):定義一個訊息Protocol
- 阿里雲安全肖力:雲原生安全定義下一代安全架構阿里架構
- 真正“搞”懂HTTPS協議15之安全的定義HTTP協議
- 樹(1)--樹和二叉樹的基本定義二叉樹
- com學習筆記(1)基礎介面的定義筆記
- [iOS]自定義UICollectionView 2-1–CollectionView的實現(定義與初始化)iOSUIView
- WAF開放規則定義權:專家策略+使用者自定義策略=Web安全Web
- Item定義
- 需求定義
- 闡述免費增值模式定義及虛擬商品型別模式型別
- 資料庫安全定義以及重要性簡單講解資料庫
- 面向1-類和物件-方法、new的定義和使用物件
- 持續定義 Saas 模式雲資料倉儲+實時搜尋模式
- 定義製造業操作(定義 MES/MOM 系統)
- 類定義介面
- 程式的定義
- Oracle Scn 定義Oracle
- html定義列表HTML
- oracle 定義jobOracle
- 如何定義NoSQLSQL
- 育種定義
- 廣義智慧集基本定義公式公式