Рубрики
Без рубрики

Отображать пользовательское сообщение об ошибке в Spring Security

– Отображение пользовательского сообщения об ошибке в Spring Security

В 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/”