Наше приложение имеет специальный обработчик успеха для успешных логинов. Он в основном перенаправляет их на страницу, на которой они были, когда их сеанс истек.
Мы переходим к конфигурации Java, а не к конфигурации spring xml. Остальная часть конфигурации прошла очень плавно, но мы не можем найти, куда помещать атрибут аутентификации-success-handler-ref в тег безопасности: form-login.
<security:http auto-config='true'>
...
<security:intercept-url pattern="/**" access="IS_AUTHENTICATED_FULLY"/>
<security:form-login login-page="/login" default-target-url="/sites"
authentication-failure-url="/login"
authentication-success-handler-ref="authenticationSuccessHandler"/>
...
Здесь наш конфиг.
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.failureUrl("/login")
.and()
.logout()
.permitAll()
.and()
}
Кроме того, мы не можем найти, куда поставить default-target-url, но это определенно менее важно.
Предостережение, мы на самом деле используем Groovy, но код в основном такой же, как и для конфигурации Java.