通過繫結元素看各種繫結對訊息保護的實現

2021-08-31 13:02:28 字數 2240 閱讀 7865

為了演示方便,我寫了如下乙個針對binding型別的擴充套件方法listallbindingelements,該方法會將繫結所有的繫結元素的型別列印出來。接下來,我們就利用這個擴充套件方法應用了那些常見的繫結,看看最終決定安全傳輸的是哪些繫結元素。

1: public static class bindingextension

2: .", ++i, bindingelement.gettype().fullname);

9:         }

10:     }

11: }

我們先來看看對於三種典型安全模式(transport、message和mixed)下的basichttpbinding具體由哪些繫結元素構成,為了我編寫了如下的程式。

輸出結果:

我們來具體分析一下最終在不同安全模式下輸出的繫結元素列表。對於mixe安全模式下對服務的驗證、訊息簽名和加密都是基於transport安全,message安全僅僅用於對客戶端的認證。所以對於transport和mixed模式,訊息保護都是通過httpstransportbindingelement 來實現。從名稱就可以看出來,這是乙個基於https的傳輸繫結元素,這也再次印證了basichttpbinding通過https實現transport安全模式的說法。asp.net利用.net控制項實現下拉導航選單的製作

對於message安全模式的三個繫結元素中,很明顯和安全傳輸相關的是asymmetricsecuritybindingelement 。從名稱我們就知道,該繫結元素通過非對稱加密 的 方式提供簽名和加密的實現。具體來說,對於請求訊息來說,傳送方使用自己的私鑰對訊息進行簽名,使用接收方的公鑰對訊息進行加密。接收方採用傳送方的公鑰 驗證簽名,用自己的私鑰對訊息進行解密。這也是為什麼在選擇了message安全模式的情況下,基於使用者名稱/密碼的客戶端憑證不被支援的真正原因。

對元素繫結事件方法

1 對元素繫結事件的方法不止一種,live 1.9後版本不支援 bind,on,delegate。2 多數時候使用on繫結事件。p on click function 3 對於動態建立的元素繫結事件。document on click bind p function 上面這種是使用on繫結事件,另一...

各種前台繫結

記錄,以便使用 1 gridview 中列 2 繫結資源檔案 上述中的 為一種 直接寫到td中的 resources.lexmarkmpsdoa.field printerpartno 3 text databinder.eval container.dataitem,entrustco 4 時間格...

元素繫結事件

on事件名 function 當事件發生時 on事件名 this 用賦值方式繫結事件處理函式 addeventlistener 事件名 handler 在瀏覽器中為 元素的指定事件,新增乙個事件監聽物件。將事件監聽物件加入到瀏覽器的監聽佇列中。觸發事件時 瀏覽器會遍歷監聽佇列中的每個監聽物件,找到觸...