这很奇怪。身份验证工作正常,但是当我今天启动项目时,它不再工作了。我完全不知道是什么问题。当我输入CORRECT数据时(是的,我100%确定它是正确的),并且我调试它,SPRING_SECURITY_LAST_EXCEPTION包含BadCredentialsException。这是我的UserDetailsService类返回的内容:
正如您所看到的,它从数据库中获取信息,构建用户并返回它,但弹簧安全因某种原因而变得疯狂。
我的安全配置:
<context:component-scan base-package="pl.sikor.security" />
<http use-expressions="true">
<intercept-url pattern="/game/**" access="isAuthenticated()"/>
<intercept-url pattern="/**" access="permitAll"/>
<form-login password-parameter="password" username-parameter="username" login-page="/login"
default-target-url="/game/profile" login-processing-url="/processLogin" authentication-failure-url="/login"/>
<logout logout-url="/game/logout" logout-success-url="/logout" delete-cookies="true" invalidate-session="true"/>
</http>
<authentication-manager alias="authenticationManager">
<authentication-provider user-service-ref="userDetailsServiceImpl">
<password-encoder ref="bCryptPasswordEncoder" />
</authentication-provider>
</authentication-manager>
<beans:bean id="bCryptPasswordEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"/>
我没有任何过滤器,springSecurityFilterChain是唯一一个,所以我想没有必要粘贴我的web.xml任何帮助都会非常感激。它让我疯了。
顺便说一句,昨天,我使用@OneToOne和懒人提取类型将我的帐户表与另一个帐户表关联起来,但我不认为它与此有任何关系。
答案 0 :(得分:0)
好的,我找到了。问题是我在getter上有JPA注释。当我把它们放在田地上时,它又开始工作了 我昨天把它们放在了吸气剂上,因为人们说当你必须制作一个自定义吸气剂时它很方便。我很想听听别人为什么在我的情况下阻止了春天的安全工作。