使用命名空间表示法的多个身份验

时间:2012-05-23 07:55:41

标签: java spring spring-security

  

可能重复:
  Spring Security - multiple authentication-providers

我想使用命名空间表示法声明多个身份验证提供程序。

有人知道如何修复下一个代码吗?:

<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>

由于

0 个答案:

没有答案
相关问题