我建议为此使用 Spring Security。我们已经在 WebSphere 中实现了这种精确的模式。诀窍是使用 Spring Security 提供的预认证机制,然后在配置中只定义授权规则。
<http>
<session-management session-fixation-protection="none"/>
<custom-filter position="PRE_AUTH_FILTER" ref="preAuthenticationFilter"/>
<intercept-url pattern="/j_security_check" filters="none"/>
<intercept-url pattern="/ibm_security_logout" filters="none"/>
<!-- put authorization intercept-url elements here... -->
</http>
您还必须定义一些其他 bean,例如预身份验证过滤器和自定义入口点,但这在此处记录:http: //static.springsource.org/spring-security/site/docs/3.0.x/参考/preauth.html