Java Web 服务: Metro 服务下的 WS-Security
2010-02-02 00:00:00 来源:WEB开发网清单 4. 带有 WSIT 服务器端扩展的 UsernameToken 策略
<wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu=
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
wsu:Id="UsernameToken">
<wsp:ExactlyOne>
<wsp:All>
<sp:SupportingTokens
xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">
<wsp:Policy>
<sp:UsernameToken sp:IncludeToken=".../IncludeToken/AlwaysToRecipient"/>
</wsp:Policy>
</sp:SupportingTokens>
<wsss:ValidatorConfiguration wspp:visibility="private"
xmlns:wsss="http://schemas.sun.com/2006/03/wss/server"
xmlns:wspp="http://java.sun.com/xml/ns/wsit/policy">
<wsss:Validator name="usernameValidator"
classname="com.sosnoski.ws.library.metro.PasswordValidator"/>
</wsss:ValidatorConfiguration>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
清单 4 中的服务器端 WSIT 扩展以 <wsss:ValidatorConfiguration> 元素和 <wsss:Validator> 子元素形式表示,指定将作为验证器回调使用的类。清单 5 给出了这个类的代码,这个类必须实现 com.sun.xml.wss.impl.callback.PasswordValidationCallback.PasswordValidator 接口。在这里,它只是针对固定值检查提供的用户名和密码,但它可以轻松使用一个数据库查询或其他机制替代。
更多精彩
赞助商链接