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

首頁 > 學院 > 開發設計 > 正文

WCF Security基本概念(轉載)

2019-11-17 01:50:34
字體:
來源:轉載
供稿:網友

WCF Security基本概念(轉載)

WCF Security 主要包括 "Transfer Security"、"access Control"、"Auditing" 幾個部分。

1. Transfer Security

Transfer Security 主要包括三個方面: "消息完整性(Message Integrity)"、"消息機密性 (Message Confidentiality)" 和 "交互驗證(Mutual Authentication)"。

  • 消息完整性必須確保消息在傳輸過程中沒有被篡改,接收的消息是完整且正確的;
  • 消息機密性必須確保消息不會被任何第三方查閱,消息內容不會泄漏給任何非相關人員;
  • 交互認證則是指客戶端和服務器必須通過某種信任機制才能建立正確的連接,同時交互認證還要監測并阻止拒絕服務攻擊(DOS)。通常的做法是對消息進行數字簽名來確保其完整性,使用非對稱加密算法來阻止消息內容外泄,而用戶名/密碼、X.509 數字證書等方式則可以用來驗證對方身份。

(1) Security Mode

WCF 提供了 5 種不同的安全方式來實現上述三個安全目標。

  • None: 不采取任何安全措施,僅適合在內部安全環境使用。
  • Transport: 在傳輸協議級別上對通道的所有通訊進行加密,可使用的通訊協議包括 HTTPS、TCP、ipC 和 MSMQ。優點是應用廣泛,多平臺支持,實施方便簡單,效率極高,適合高吞吐量的服務使用;缺點是只能實現點對點(point-to-point)的消息安全,在使用中介連接(PRoxy)時可能會泄漏消息內容,比較適用于于 Intranet 或直接連接的環境。
  • Message: 通過相關標準(如 WS-Security)直接對消息進行加密來達到安全目的。優點是能實現端到端(end-to-end)的安全傳輸,不存在中介安全隱患,且擴展性較好。因采取工業安全標準,所以整合能力更強,適用于 Internet 服務。缺點是比 Transport 效率要低一些。
  • Mixed(TransportWithMessageCredential): 混合了上面兩種方式。使用 Transport 方式完成消息完整性、消息機密性以及服務器認證,而使用 Message 方式完成客戶端認證。
  • Both: 使用 Transport 和 Message 共同完成所有的安全過程,比較恐怖,性能低下,只有 NetMsmqBinding 支持這一安全方式。

(2) Bindings and transfer security modes

1

附:NetTcpBinding、NetNamedPipeBinding 和 NetMsmqBinding 缺省使用 Transport 安全方式,原因是因為它們多用于 Intranet 環境下,相對比較安全。另外 Transport 方式擁有較好的性能,也非常適合內部高性能服務系統使用。BasicHttpBinding 缺省采取 None 方式是為了兼容 ASMX。

我們可以通過編碼或者配置文件的方式來指定 Binding 的安全方式。

NetTcpBinding binding = new NetTcpBinding(); binding.Security.Mode = SecurityMode.Message;

app.config

<bindings>   <netTcpBinding>     <binding name = "NewBinding0">       <security mode = "Message" />     </binding>   </netTcpBinding> < /bindings>

(3) Credentials

Security Mode 解決了消息的完整性和機密性,那么剩下來的就是 "Authentication" 了。WCF 支持多種認證方式,允許我們從多個 "客戶端驗證類型(Client Credentials Types)" 中選擇適合我們需求的方案,比如經典的 "用戶名/密碼",或者 "Windows 集成身份認證(NTLM 或 Kerberos)"、"X.509 數字證書" 等。下面兩張表展示了不同的綁定類型在不同安全模式下對驗證方式的支持情況。

Transport Security and Credentials

2

Message Security and Credentials

3

2. Access Control

Access Control 又被稱之為 "Authorization",和 "Authentication" 驗證客戶端身份的目的不同,它被用來控制用戶(組)的代碼訪問授權。比如說財務相關服務只能被 "會計部" 訪問,人事相關服務只能被 "人事部" 和 "董事會" 訪問,越權訪問會觸發 "權限異常"。簡單點說,"Authentication" 詢問 "你是誰?",然后 "Authorization" 會限制你該做什么,不該做什么。

3. Auditing

Auditing 的作用是將 WCF 安全相關事件記錄到 "Windows 系統日志" 中。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汤阴县| 新建县| 汉中市| 宕昌县| 布拖县| 东海县| 正阳县| 天津市| 招远市| 莒南县| 浏阳市| 江安县| 大理市| 绿春县| 冀州市| 枣强县| 松滋市| 大连市| 乃东县| 苏尼特左旗| 秦安县| 遂平县| 涟水县| 三门县| 台东市| 北碚区| 浑源县| 时尚| 德令哈市| 河曲县| 隆林| 吴川市| 昭平县| 蒙山县| 荣成市| 吴忠市| 两当县| 连江县| 合水县| 宣威市| 双峰县|