如何在Apache-CXF上为apache JAX-WS启用Spring Security? Web上的示例包括Jax-RS示例,但我不使用Jax-RS。我不想使用cxf的安全性。如何在我的代码中实现它?
答案 0 :(得分:8)
两种可能的方式:
将BasicAuthenticationFilter or DigestAuthenticationFilter放在CXF Servlet前面。
Use a WS-Security UsernamePasswordToken使用CXF编写一个CallbackHandler,a)创建UsernamePasswordAuthenticationToken,b)调用authenticationManager.authenticate()和c)将身份验证存储在SecurityContextHolder中。
请注意,上述内容并未涵盖注销的概念,因为登录会话通常使用cookie实现,而上述内容是无状态方法。如果您真的需要注销,那么您应该考虑使用OAuth,因为您可以通过使访问令牌无效来实现注销。