В Spring Security при сбое аутентификации будут отображаться следующие предопределенные сообщения об ошибках:
Spring display : Bad credentials
В этой статье мы покажем вам, как переопределить приведенное выше сообщение об ошибке и отобразить собственное сообщение об ошибке. Например,
Spring display : Bad credentials You want override it with this message : Invalid username or password
Решение
Безопасность Spring сохраняла сообщения в ” messages.properties “внутри” spring-security-core.jar “, см. рисунок ниже:
Чтобы переопределить его, найдите, какой ключ генерирует какое сообщение об ошибке в файле spring security message.properties , и переопределите его своим собственным файлом свойств.
1. Переопределение ключа и сообщения
Создайте новый файл свойств, поместите его в путь к классам проекта и переопределите “ключ” Spring своим пользовательским сообщением об ошибке. В этом случае просто переопределите ” AbstractUserDetailsAuthenticationProvider.badcredentials
“.
Файл: мои сообщения.свойства
AbstractUserDetailsAuthenticationProvider.badCredentials=Invalid username or password
2. Зарегистрировать ресурс Bundlemessagesource
Чтобы загрузить вышеуказанный файл свойств, определите ResourceBundleMessageSource
в файле конфигурации Spring bean.
mymessages
Теперь при сбое аутентификации будет отображаться ваше пользовательское сообщение об ошибке ” Неверное имя пользователя или пароль ” вместо ” Неверные учетные данные ” по умолчанию.
Скачать Исходный Код
Оригинал: “https://mkyong.com/spring-security/display-custom-error-message-in-spring-security/”