我想使用命名空间表示法声明多个身份验证提供程序。
有人知道如何修复下一个代码吗?:
<authentication-manager>
<authentication-provider user-service-ref="userDao">
<password-encoder ref="pwdEncoder"/>
</authentication-provider>
<!-- Here is the problem -->
<authentication-provider>
<user-service>
<user name="peter" password="peter" authorities="adm1" />
</user-service>
</authentication-provider>
</authentication-manager>
(为清晰起见,未显示userDao和pwdEncoder bean)
如果省略/评论第二个提供者,一切正常。
谢谢!
解决!!
我必须在 remember-me 元素中明确声明 user-service-ref =“userDao”:
<remember-me user-service-ref="userDao" />
<authentication-manager>
<authentication-provider user-service-ref="userDao">
<password-encoder ref="pwdEncoder"/>
</authentication-provider>
<authentication-provider user-service-ref="superAdminDeclaration">
<password-encoder ref="pwdEncoder"/>
</authentication-provider>
</authentication-manager>
<user-service id="superAdminDeclaration">
<user name="peter" password="e175750688deee19d7179d444bfaf92129f4eea8b4503d83eb8f92a7dd9cda5fbae73638c913e420" authorities="adm1" />
</user-service>
由于