2

我有一个PayloadRootQNameEndpointMapping,Wss4jSecurityInterceptor和一个为我进行身份验证的自定义CallbackHandler项。现在的要求是通过 web 服务凭据或至少UsernameToken传递到 web 服务来处理特定的用例。

我怎样才能做到这一点?是否可以将某些东西推到MessageContext那里并稍后从那里取回?或者我可以从SoapMessage任何提示中检索它们吗?

谢谢你。

4

1 回答 1

1

我使用UserPasswordAuthenticationToken并设置了身份验证的用户详细信息#setDetails(Object details)。然后可以通过以下方式设置身份验证

SecurityContextHolder.getContext().setAuthentication(authentication);

稍后,这可以从SecurityContextHolder通常使用本地线程实现的中检索。

于 2010-12-01T10:41:38.197 回答