У меня есть приложение, использующее Spring Security 3.0.x. Там у меня есть пользовательский AuthenticationProvider
:
public class AppAuthenticationProvider implements AuthenticationProvider {
@Override
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
...
if (!check1()) throw new UsernameNotFoundException();
if (!check2()) throw new DisabledException();
...
}
Я бы хотел послать коды ответа куба на каждое исключение, например 404 для UsernameNotFoundException, 403 для DisabledException и т.д. На данный момент у меня есть только идентификатор-ошибка-url в моей конфигурации безопасности Spring, поэтому я перенаправляюсь на него для каждого исключения в authenticate().