使用带有自己的安全框架的axis2 ramaprt模块

ag1*_*112 5 java ws-security axis2 web-services rampart

我在我的项目中使用axis2实现了webservice(服务器端).我们希望在现有Web服务中启用WS-security.我们正在评估apache ramapart模块是否符合我们的需求.这是我们的要求:基本上我们有内部安全框架,提供加密,签名和令牌生成功能.我们的内部安全框架基本上需要以XML形式的一组配置,并且它公开各种API以执行各种安全操作.

现在有了上述环境,我可以想到三种可能的解决方案: -

  1. 我可以围绕内部安全框架开发一个axis2模块,并在安全阶段将其安装为.mar文件.所以我不会使用apache rampart.但是这种方法的问题是我不能使用ws-security策略来指定安全断言并确保传入的安全性令牌符合有效的策略.这就像重新发明轮子已经做的那样.

  2. 我相信apache rampart强调要求apache wss4j模块进行安全操作.我相信apache wss4j模块提供了一种注册第三方安全提供程序的方法(通过实现CryptoProvider接口).我不确定这是否是可行和可行的解决方案.请建议.

  3. Ws-security策略允许使用自定义令牌.可以使用我们的内部安全框架构建此自定义令牌.所以基本上它使我们能够使用apache rampart模块创建ws-security策略,并使用我们的安全框架开发自定义令牌.但我在互联网上找不到这方面的帮助.有谁可以帮助举例.

任何其他建议也是最受欢迎的.

Tom*_*mer 1

我在这里发布了一个答案:如何手动加密 SOAP 消息?

那里有一个非常详细的示例,您可能会觉得有用。

您可以使用以下方法设置提供者:

cryptoConfig.setProvider(PROVIDER); 
Run Code Online (Sandbox Code Playgroud)

关于自定义安全标头,很抱歉,我没有尝试过,所以我无法为您提供帮助。