Spring安全性无法重定向到所需页面

时间:2010-09-28 00:22:32

标签: spring-security

我正在使用与Struts2,Spring和Hibernate集成的Spring安全框架。

<David:http auto-config="true" access-denied-page="/accessDenied.html">

        <!-- Don`t set any role restriction on login.jsp -->
        <David:intercept-url pattern="/login.jsp"
            access="IS_AUTHENTICATED_ANONYMOUSLY" />

        <!-- Restrict access to All other pages -->
        <David:intercept-url pattern="/admin.jsp"
            access="ROLE_ADMIN" />

        <!-- Set the login page and what to do if login fails -->
        <David:form-login login-page="/login.jsp"
            authentication-failure-url="/accessdenied.html?login_error=1" 
            default-target-url="/index.jsp"/>
        <David:logout logout-success-url="/index.jsp" />
    </David:http>

    <!-- Specify login examnination strategy -->
    <David:authentication-provider>
        <David:password-encoder hash="md5" />
        <David:jdbc-user-service
            data-source-ref="dataSource"
            users-by-username-query="select username, password, status as enabled from user where username=?"
            authorities-by-username-query="select u.username,r.name as authority
                                             from user u
                                             join user_role ur
                                               on u.id=ur.user_id
                                             join role r
                                               on r.id=ur.role_id
                                            where u.username=?" />
    </David:authentication-provider>

这是我的安全配置页面。

问题是,即使密码和帐户都正确,登录表单页面也不会根据我输入的内容指向成功页面或失败页面。

但我100%确定Spring安全框架正在运行。

因为,我无法通过在url address列中键入URL来直接访问管理页面。 我必须提供正确的密码和用户名 然而,问题是它不能自动直接........................

为什么会这样?

由于

1 个答案:

答案 0 :(得分:0)

您可以尝试设置 index.jsp /accessdenied.html 的权限,例如 USER_ROLE IS_AUTHENTICATED_ANONYMOUSLY 分别?