我想先用用户名和密码对用户进行身份验证,然后使用发送给他的令牌(如果第一次身份验证成功)来对下一个请求进行身份验证:
例如:
这是使用用户名和密码进行身份验证的路径:/api/
这是验证请求的路径:/api/**
这就是我映射过滤器的过程,但是请求总是被我的tokenFilter
拦截,从来没有与我的usernamePasswordAuthFilter
一起传递,这就是配置:
<http pattern="/api/" auto-config="false"
create-session="stateless" entry-point-ref="apiAuthenticationEntryPoint"
security-context-repository-ref="apiSecurityContextRepository"
use-expressions="true">
<http-basic />
<custom-filter position="FORM_LOGIN_FILTER" ref="usernamePasswordAuthFilter" />
<custom-filter position="PRE_AUTH_FILTER" ref="tokenAuthFilter" />
<anonymous enabled="true" granted-authority="ADMIN" />
<intercept-url pattern="/api/**" access="isAuthenticated()" />
<intercept-url pattern="/api/" access="permitAll" />
<csrf disabled="true" />
</http>