WEB开发网
开发学院软件开发Java Java Web 服务: WS-Security 的细粒度使用 阅读

Java Web 服务: WS-Security 的细粒度使用

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: 清单 2 中的代码根据 ServiceClient 选项设置用户名和密码,意味着这些是针对使用该服务的所有操作定义的,Java Web 服务: WS-Security 的细粒度使用(4),即使它们只用于单个操作,与将 Rampart 模块用于所有操作不同的是,清单 3 展示了包含有 Rampar

清单 2 中的代码根据 ServiceClient 选项设置用户名和密码,意味着这些是针对使用该服务的所有操作定义的,即使它们只用于单个操作。与将 Rampart 模块用于所有操作不同的是,以这种方式设置用户名和密码是无害的 — 这些值只有在 Rampart 需要用之构建 UsernameToken 时使用,其他情况下将会忽略。

清单 3 展示了包含有 Rampart 配置的策略文档。这里使用了与 “Axis2 WS-Security 签名和加密” 相同的策略,现在被提取到一个独立的策略文档中。


清单 3. Rampart 客户机配置策略
<wsp:Policy xmlns:wsu= 
  "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" 
  xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"> 
 <wsp:ExactlyOne> 
  <wsp:All> 
 
   <ramp:RampartConfig xmlns:ramp="http://ws.apache.org/rampart/policy"> 
    <ramp:user>clientkey</ramp:user> 
    <ramp:passwordCallbackClass 
     >com.sosnoski.ws.library.adb.PWCBHandler</ramp:passwordCallbackClass> 
     
    <ramp:signatureCrypto> 
     <ramp:crypto provider="org.apache.ws.security.components.crypto.Merlin"> 
      <ramp:property name="org.apache.ws.security.crypto.merlin.keystore.type" 
       >JKS</ramp:property> 
      <ramp:property name="org.apache.ws.security.crypto.merlin.file" 
       >client.keystore</ramp:property> 
      <ramp:property 
       name="org.apache.ws.security.crypto.merlin.keystore.password" 
       >nosecret</ramp:property> 
     </ramp:crypto> 
    </ramp:signatureCrypto> 
     
   </ramp:RampartConfig> 
   
  </wsp:All> 
 </wsp:ExactlyOne> 
</wsp:Policy>

上一页  1 2 3 4 5 6 7  下一页

Tags:Java Web 服务

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接