当前位置: 首页 > 知识库问答 >
问题:

没有为委托PasswordEncoder中的id"null"映射的PasswordEncoder

韦高格
2023-03-14

我是Spring安全的新手。使用Spring 4.3和Spring Security 5.0。一切都在运行。登录页面也出现了。如果您输入了错误的密码,则表明您的登录尝试未成功,请重试。好但正确的密码引发异常

我的Spring\u安全。XML是

 <authentication-manager>  
      <authentication-provider>  
        <user-service>  
        <user name="admin" password="1234" authorities="ROLE_USER" />  
        </user-service>  
      </authentication-provider>  
    </authentication-manager> 

我的网站。xml

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
        /WEB-INF/spring-security.xml,
         /WEB-INF/spring/appServlet/hibernate.xml
        </param-value>
    </context-param>



<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>




<filter>  
    <filter-name>springSecurityFilterChain</filter-name>  
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>  
</filter>  
<filter-mapping>  
    <filter-name>springSecurityFilterChain</filter-name>  
    <url-pattern>/*</url-pattern>  
</filter-mapping>  





<servlet>
    <servlet-name>appServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
        /WEB-INF/spring/appServlet/servlet-context.xml
        </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

我的控制器类

 @RequestMapping(value="/admin", method=RequestMethod.GET)  
        public String privateHome() {  

            return "privatePage";  
        }  


When Run the Code /admin page its default run log in page .Everything Fine 

.一旦获得正确的凭据,就没有为id“null”映射的密码编码器

共有1个答案

燕禄
2023-03-14

您可以查找以下问题的答案:Spring Security:将4.0迁移到5.0-错误-没有为id“null”映射的PasswordEncoder

然而,对于Spring Security 5,正确的定义是:

<bean id ="passwordEncoder" class = "org.springframework.security.crypto.password.NoOpPasswordEncoder" factory-method = "getInstance" />
 类似资料:
  • 我正在从Spring Boot 1.5.12迁移到Spring Boot 2.0和Spring Security 5,并试图通过OAuth 2进行身份验证。但即使在使用委托{noop}之后,我也会遇到这个错误: Java语言lang.IllegalArgumentException:没有为id“null”映射的PasswordEncoder 这是我的代码: SecurityConfig安全配置 O

  • 我的代码在spring版本1.5.6中运行良好。释放。但当我将版本升级到2.0.0时,我的一些方法已被弃用,但效果很好。当我通过查看没有为id“null”映射的PasswordEncoder和数据库身份验证来更改我不推荐的方法时,它开始给我错误“没有PasswordEncoder” 这是我的代码。 网络配置 账户控制员 用户服务 我看到了所有相关的答案,但它们可用于inMemory身份验证。Spr

  • 问题内容: 我正在从Spring Boot 1.4.9迁移到Spring Boot 2.0,还迁移到Spring Security 5,并且正在尝试通过OAuth 2进行身份验证。但是我收到此错误: java.lang.IllegalArgumentException:没有为id“ null映射的PasswordEncoder 从Spring Security 5的文档中,我知道密码的存储格式已更

  • 我正在从Spring Boot1.4.9迁移到Spring Boot2.0,也迁移到Spring Security5,我试图通过OAuth2进行身份验证。但是我得到了这个错误: IllegalArgumentException:没有为id“null”映射的PasswordEncoder 编码密码不像BCrypt 因此,我根据Spring Security5文档将编码器更新为: 现在,如果我能在数据

  • 我是springsecurity的新手,尝试在我的项目中使用springstecurity,因为这个错误不断出现 这是我的道课 这是我的凭证类 我认为错误存在于此代码中 这是用户详细信息 这是用户详细信息的实现 这就是正在流行的错误 最后,这是我的数据库,其中存储了用户名和密码的数据库表 这个错误让我发疯,我做了一切事情来阻止这一点,但这是一次又一次的弹出,基本上我的项目是logIn系统,其中一个

  • 我目前正在使用h2数据库学习SpringSecurity和spring boot。 当我尝试通过它抛出的用户名和密码登录时,我使用jdbcAuthentication进行身份验证: <代码>java。lang.IllegalArgumentException:没有为id“null”映射的密码编码器 我使用密码编码器作为:。 这是错误日志 这是我的SpringSecurity课程 SpringSec