kingpub

          海內存知己,博客若比鄰

           

          運用Web Services安全機制對SOAP消息加密(2)

          2.2 WebSphere IICE密文登錄原理

            WebSphere IICE加密機制是對BLOWFISH算法的一種實現。一旦安裝成功,WebSphere IICE會使用此算法產生一個密鑰文件同時要保證此文件在客戶端和CONNECTOR端的CLASSPATH中。如下是應用BLOWFISH進行加/解密的一個過程示例。

            列表1:應用blowfish進行加、解密過程

          客戶端的加密過程:

          ?? //Create and encrypt an AuthBundle.
          ?? AuthBundle aB = new AuthBundle(user, password);
          ?? try {
          ????? //Encrypt the auth bundle
          ????? (new BlowfishSealer()).seal(aB);
          ?? } catch(KeyNotFoundException knfe) {
          ????? ...
          ?? }
          ??

          服務器端的解密過程:
          ...use the sealed bundle to logon to a chosen repository.
          ????? ..
          ????? // Unseal the auth bundle if sealed.
          ????? if(authBundle.isSealed()) {
          ???????? // Instantiate an unsealer proxy.
          ???????? UnsealerProxy uP = new UnsealerProxy();
          ???????? try {
          ??????????? // Attempt to unseal the bundle.
          ??????????? // The UnsealerProxy will delegate unsealing
          // to a new instance of "my.magic.Unsealer"
          ??????????? uP.unseal(authBundle);
          ???????? } catch(UnsealerNotFoundException unfe) {
          ??????????? throw new LogonException("Unable … unsealer.", unfe);
          ???????? } catch(KeyNotFoundException knfe) {
          ??????????? throw new LogonException("Unable ….", knfe);
          ???????? } catch(InvalidKeyClassException ikce) {
          ??????????? throw new LogonException("Invalid decryption...", ikce);
          ???????? } catch(EncryptionException ee) {
          ??????????? throw new LogonException("An error ….", ee);
          ???????? }
          ????? }
          ????? ...

            2.3 WebSphere IICE Web Services SOAP消息安全概述

            由于WebSphere IICE使用Axis作為SOAP引擎,我們首先需要了解一下Axis的機制。可以說,Axis的任務就是處理消息。當Axis的核心處理邏輯啟動時,一系列的句柄會被順序的調用。調用的順序是由兩個因素來決定的--部署文件和此引擎為客戶端還是服務器端。

            WebSphere IICE Web Services會被一系列的客戶端和服務器端Axis/JAX-RPC句柄處理。為了能使此安全解決方案正常工作,這些句柄必須被安裝并且要保證安裝順序正確。本文提供了兩套句柄分別實現消息的加密/解密和消息完整性驗證功能,同時要保證這四個句柄被正確的安裝在客戶端和服務器端的WSDD配置文件中,這樣才能保證對于每一個從客戶端發出的消息都被客戶端的證書加密和簽名,同時才能保證服務器端接受到的每一個消息都是被驗證的而且每一個消息都經過了解密。這樣我們就實現了SOAP消息的完整性和機密性。

            同時,用戶可以選擇是否使用此安全機制。如果用戶傾向于非安全機制,他所需要做的就是注釋客戶端和服務器端的WSDD配置文件。

          posted on 2006-06-08 18:00 xiaofeng 閱讀(122) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 隆昌县| 蛟河市| 贵溪市| 九江市| 左云县| 鱼台县| 北流市| 萨嘎县| 芷江| 奉贤区| 泌阳县| 海丰县| 南充市| 五华县| 罗定市| 阳新县| 绩溪县| 高碑店市| 寿阳县| 山阳县| 桂林市| 阿拉善右旗| 肇东市| 延边| 望城县| 万全县| 师宗县| 南靖县| 定襄县| 古蔺县| 台州市| 黄龙县| 晋城| 定南县| 武定县| 子长县| 昌平区| 南宫市| 新巴尔虎左旗| 石嘴山市| 三门县|