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

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

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

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

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

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

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

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

那里有一个非常详细的例子,你可能会发现它很有用。

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

cryptoConfig.setProvider(PROVIDER); 

关于自定义安全标题,我很抱歉,但我没有尝试,所以我无法帮助你。