2010-02-03 78 views
1

我与春天的安全配置问题弹簧安全不拿起我的认证管理器

这里拧是我的配置

<security:global-method-security pre-post-annotations="enabled" /> 

<security:http auto-config="true"> 
    <security:intercept-url pattern="/dologin"  access="ROLE_USER,ROLE_ANONYMOUS" /> 
    <security:form-login login-processing-url="/security_check" login-page="/onlogin" always-use-default-target="false" authentication-failure-url="/onlogin" default-target-url="/home" /> 
    <security:logout invalidate-session="true" logout-url="/logout" logout-success-url="/onlogout" /> 
    <security:remember-me /> 
    <security:http-basic/> 
</security:http> 

<security:authentication-manager alias="authenticationManager"> 
    <security:authentication-provider ref="daoAuthenticationProvider"/> 
</security:authentication-manager> 

<bean id="anonymousAuthenticationProvider" 
    class="org.springframework.security.authentication.AnonymousAuthenticationProvider"> 
    <property name="key" value="badgerbadgerbadger" /> 
</bean> 

<bean id="daoAuthenticationProvider" 
    class="org.springframework.security.authentication.dao.DaoAuthenticationProvider"> 
    <property name="userDetailsService" ref="userDetailsService" /> 
</bean> 

我的问题是,当请求进行认证;我发现只有两家提供商注册。

org.springfr[email protected]8fe4ad 
org.springfra[email protected]1db9cb9 

我可能会出错吗?请描述一下?

回答

1

我相信你需要通过使用安全性:自定义身份验证提供程序标记来识别自定义提供程序以确保安全。

例如:

<bean id="daoAuthenticationProvider" 
    class="org.springframework.security.authentication.dao.DaoAuthenticationProvider"> 
    <security:custom-authentication-provider /> 
    <property name="userDetailsService" ref="userDetailsService" /> 
</bean> 

则可能需要您anonymousAuthenticationProvider豆也。

+0

嗨Donal Boyle, 我使用的是spring-security 3.0版。并且它没有任何标签,如 我试图找出在配置文件中找到安全标签时会发生什么情况。但是我的加速没有任何结果。 现在我选择了完全基于bean定义的配置。我会告诉你任何与这个主题相关的事情 – 2010-02-07 06:54:42

1

尝试以下操作:

<security:authentication-manager> 
    <security:authentication-provider user-service-ref="userDetailsService"/> 
</security:authentication-manager> 
1
在你需要把DaoAuthenticationProvider

你必须UserDetailsS​​ervice的一个参考,但我并不在你的配置看到这样的豆。
检查以前的错误消息,我期望看到在那里提到错过的bean。