春季安全性-身份验证后重定向GWT

时间:2019-03-22 13:57:11

标签: gwt spring-security

我有一个尝试使用Spring Security登录的GWT应用程序。当前,成功登录后,我将被重定向回“登录”页面。我猜这是因为我的弹簧配置和我缺乏弹簧安全知识。

在spring-security.xml中,我这样定义拦截器:

 <security:http auto-config="true">

    <security:intercept-url pattern="/login" access="permitAll" />
    <security:intercept-url pattern="/**" access="isAuthenticated()" />

    </security:http>

我猜测问题出在access = isAuthenticated()上,但我不确定。我希望它重定向到gwt页面/应用程序,它将基于返回的角色处理视图。我用这种方法制作了一个非常简单的gwt应用程序,并且有效。

我使用的是Spring生成的登录页面,而不是JSP。

spring-security.xml

<?xml version="1.0" encoding="UTF-8"?>
<b:beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:b="http://www.springframework.org/schema/beans"
       xmlns:security="http://www.springframework.org/schema/security"
         xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
                        http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">


    <!-- This is where we configure Spring-Security  -->
    <security:http auto-config="true">

    <security:intercept-url pattern="/login" access="permitAll" />
    <security:intercept-url pattern="/**" access="isAuthenticated()" />

    </security:http>

    <b:bean id="graplAuthentication" class="com.foo.rim.security.GraplAuthentication"/>

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

</b:beans>

1 个答案:

答案 0 :(得分:0)

事实证明这是两件事。

1)我需要添加user-expressions =“ true”,这样它才能获取访问权限=

<security:http auto-config="true" use-expressions="true">

2)我有一个自定义用户Authentication类,但是忘记将Authenticated布尔值设置为true。这些都使其正常工作。