Java Web 服务: Metro 服务下的 WS-Security
2010-02-02 00:00:00 来源:WEB开发网清单5. 服务器回调代码
public class PasswordValidator implements PasswordValidationCallback.PasswordValidator
{
public boolean validate(Request request) throws PasswordValidationException {
PasswordValidationCallback.PlainTextPasswordRequest ptreq
= (PasswordValidationCallback.PlainTextPasswordRequest)request;
return "libuser".equals(ptreq.getUsername()) &&
"books".equals(ptreq.getPassword());
}
}
Metro 策略工具
Metro/WSIT 要求您向 WSDL 文件添加配置信息,就像使用 Axis2/Rampart 一样。这个系列中此前介绍 Axis2/Rampart 的文章在构建过程中使用了一种特殊的策略工具来根据需要生成经过修改的 WSDL 文件。本文的示例代码 下载 部分包含一种相似的工具,它根据 Metro/WSIT 的需要而设计。
这个工具就是 com.sosnoski.ws.MergeTool 应用程序,在示例代码的 mergetool 目录中。MergeTool 用于将数据合并到目标 XML 文件中,匹配嵌套的 XML 元素,找到需要合并的数据并在目标文档中确定数据的合并点。示例程序的 build.xml 使用 MergeTool 将客户端或服务器的 WSIT 配置信息添加到服务的 WSDL 中。如果愿意,您也可以在自己的应用程序中使用 MergeTool — mergetool/readme.txt 文件包含一些基础的使用说明,您也可以在提供的构建中看到 MergeTool 的使用方法。
如果没有 <wsss:ValidatorConfiguration>,Metro 将使用您的 Web 应用程序容器(提供 servlet 的 Web 服务器)所提供的授权机制。
更多精彩
赞助商链接