由于希望尽可能保持 Web 服务无状态,我遇到了一个问题。我最近开始使用 Axis2 并试图找到一个可行的身份验证解决方案。对于身份验证,我的意思是用户/密码。我已经将 SSL 与 WS-Policy 结合使用来保护过程调用。
但是,我发现与 Rampart 1.6.2 捆绑的一些示例已经过时,尤其是名为“sample-tomcat”的策略示例及其 WSPasswordCallback 处理程序(可在此处找到)。WSPasswordCallback.USERNAME_TOKEN_UNKNOWN
在 1.6 中已弃用,并且WSPasswordCallback.getPassword()
始终返回 null,即使在消息的安全标头中的 UsernameToken 元素中提供了密码。
所以。我不确定从哪里着手检查每条消息的用户名/密码。我正在看这两个选项:
使用执行用户名/密码身份验证的处理程序编写模块。
放弃无状态并编写登录服务,返回所有其他服务所需的令牌。
还有其他选择吗?