1

我需要对网络服务(服务器端)使用加密(和签名)。我使用axis2并成功添加了壁垒模块(用于WS-Security实现)。但是壁垒页面(http://ws.apache.org/axis2/modules/rampart/1_2/security-module.html)缺少示例,并且示例文件没有真正记录。所以我的问题是:添加加密(和签名)的最简单方法是什么?我必须在 services.xml 中添加什么,我必须编写一个 policy.xml 吗?我必须给客户的开发人员什么(除了 WSDL)?如果您能给我指一个好的教程,那将很有帮助,谢谢等...

4

3 回答 3

3

是否可以简单地使用 SSL (https)?那肯定会简化事情。

于 2008-10-18T06:15:07.707 回答
1

Vinze - 我也遇到了壁垒的这个问题,虽然我并没有试图公开一个网络服务,只是调用一个。(见这个问题)。

我发现所有 Web 服务安全性的东西都令人困惑,而且壁垒的文档记录很差也无济于事(没有你提到的好的教程)。

您可能会成功写入 WSS4J API 而不是使用壁垒。(顺便说一句,我认为壁垒是建立在 WSS4J 之上的)。

至于为客户的开发人员提供什么,如果您将策略信息放入 wsdl 而不是单独的 policy.xml,对他/她来说可能是最简单的。但是您可能应该计划向他/她提供有关如何保护您的服务的文档,以便他/她知道如何调用它。

于 2008-10-20T03:52:49.553 回答
0

我在这本书中找到了很多答案:http: //agileskills2.org/DWSAA/index.html(第 9 章)所以即使我没有完成,我也会尝试回答我自己的问题:

  • 即使策略在 WSDL 中,当前的 Axis 2 版本 (1.4) 也不会查看它,因此您必须在 services.xml 中添加策略和壁垒配置
  • 您必须为客户端编写一个rampart-config.xml 并在用作存根构造函数参数的ConfigurationContext 中“使用”模块
  • 对于这两者,您都需要一个密钥库(例如 JKS)和一个证书

也许更多,当我成功时,我会编辑这个答案......

于 2008-11-25T13:53:57.593 回答