请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问老师如何自定义spring security的错误信息?

当密码错误的时候提示坏的凭证等等这样的提示并不友好,有没有办法可以覆盖掉框架本身的国际化信息?

正在回答

2回答

自己写个SpringSecurityMessageSource覆盖掉默认的。

0 回复 有任何疑惑可以回复我~
  • 提问者 我是外国人 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-12-08 17:03:55
  • leon66 回复 提问者 我是外国人 #2
    小哥 你是怎么写的
    回复 有任何疑惑可以回复我~ 2018-06-19 17:22:02
  • 我是了一下自己写SpringSecurityMessageSource  setBasename("classpath:messages") 将messages_zh_CN.properties  放置在sources 路径下,并不好使,
    
    若不重写SpringSecurityMessageSource  ,将配置文件放置到resources/org/springframework/security/messages_zh_CN.properties 可以使用
    
    如何才能使用 自己的SpringSecurityMessageSource  呢?
    回复 有任何疑惑可以回复我~ 2018-10-28 20:49:23
破地瓜 2019-05-30 10:06:35

https://docs.spring.io/spring-security/site/docs/5.1.5.RELEASE/reference/htmlsingle/#localization

官方有文档

将spring-security-core-xx.jar中org.springframework.security包下对应的中文配置复制到/resources下

然后采用以下代码引入配置(注意:此@Bean不能写在WebSecurityConfigurerAdapter的子类下)

@Configuration
public class SecurityConfiguration {
   @Bean
   public ReloadableResourceBundleMessageSource messageSource() {
       ReloadableResourceBundleMessageSource source = new ReloadableResourceBundleMessageSource();
       source.setBasename("classpath:messages");
       return source;
}


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信