从筛选器访问已记录的用户

时间:2010-07-08 11:56:48

标签: java spring filter spring-security

我有Spring Security的Spring 3应用程序。我需要在我的应用程序的几乎所有URL中进行一些处理。根据登录的用户,proccesing会有所不同。我曾经使用Spring过滤器,但我无法访问

SecurityContextHolder.getContext().getAuthentication().getPrincipal()
过滤器中的

因为SecurityContextHolder仍然为null。

这样做的最佳方式是什么?

感谢。

2 个答案:

答案 0 :(得分:2)

要访问安全上下文,您的过滤器应位于Spring Security过滤器后面,即其<filter-mapping>应放在Spring Security的过滤器之后。

答案 1 :(得分:1)

如果您使用的是弹簧,则可以在"interceptor"内进行。它是过滤器的替代品,它可以访问安全上下文。