如果我理解正确,当我配置 Spring Security 时,会自动创建一个FilterSecurityInterceptor实例。我想将alwaysReauthenticate属性设置为true,但我不想创建自己的FilterSecurityInterceptor或配置自己的自定义过滤器链。有没有办法做到这一点?
更新:2012 年 5 月 1 日 根据下面的评论,我想出了这段代码,它可以按预期工作:
public class ForceAuthCheckinator implements BeanPostProcessor {
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
return bean;
}
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
if (beanName.contains("FilterSecurityInterceptor")) {
((FilterSecurityInterceptor) bean).setAlwaysReauthenticate(true);
}
return bean;
}
}
然后在我的应用程序上下文文件中添加了这一行,它激活了类并将其连接到位:
<bean class="com.mydomain.ForceAuthCheckinator"/>
谢谢您的帮助。