zoukankan      html  css  js  c++  java
  • Document

    出现问题的原因:

      内存用户验证时,Spring boot 2.0.1引用的security 依赖是 spring security 5.X版本,此版本需要提供一个PasswordEncorder的实例,否则后台汇报错误:
    java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id "null"
    并且页面毫无响应。

     

    解决方法:

    创建PasswordEncorder的实现类MyPasswordEncoder。

    代码一:

     1 package com.mmall.demo;
     2 
     3 import org.springframework.security.crypto.password.PasswordEncoder;
     4 
     5 public class MyPasswordEncoder implements PasswordEncoder {
     6     @Override
     7     public String encode(CharSequence rawPassword) {
     8         return rawPassword.toString();
     9     }
    10 
    11     @Override
    12     public boolean matches(CharSequence rawPassword, String encodedPassword) {
    13         return encodedPassword.equals(rawPassword);
    14     }
    15 }
    View Code

    代码二:

     1 package com.mmall.demo;
     2 
     3 import org.springframework.context.annotation.Configuration;
     4 import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
     5 import org.springframework.security.config.annotation.web.builders.HttpSecurity;
     6 import org.springframework.security.config.annotation.web.builders.WebSecurity;
     7 import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
     8 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
     9 
    10 @Configuration
    11 @EnableWebSecurity
    12 public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
    13 
    14     @Override
    15     protected void configure(AuthenticationManagerBuilder auth) throws Exception {
    16         auth.inMemoryAuthentication().
    17                 passwordEncoder(new MyPasswordEncoder()).
    18                 withUser("admin").password("123456").roles("ADMIN");
    19     }
    20 
    21     @Override
    22     protected void configure(HttpSecurity http) throws Exception {
    23        http.authorizeRequests()
    24                .antMatchers("/").permitAll()
    25                .anyRequest().authenticated()
    26                .and()
    27                .logout().permitAll()
    28                .and()
    29                .formLogin();
    30        http.csrf().disable();
    31     }
    32 
    33     @Override
    34     public void configure(WebSecurity web) throws Exception {
    35         web.ignoring().antMatchers("/js/**","/css/**","/image/**");
    36     }
    37 
    38 
    39 }
    View Code
  • 相关阅读:
    C#编程总结 字符转码
    获取 苹果UDID 序列号
    SVN :This XML file does not appear to have any style information associated with it.
    oracle 实时查询最耗CPU资源的SQL语句
    Oracle 优化和性能调整
    weblogic管理脚本
    weblogic状态监控脚本
    oracle性能检测sql语句
    Oracle动态性能表-V$SESSION_WAIT,V$SESSION_EVENT
    linux HBA 卡驱动安装
  • 原文地址:https://www.cnblogs.com/chenyanlong/p/10688662.html
Copyright © 2011-2022 走看看