使用Jasig CAS登录后,重定向到请求的最后一页

时间:2016-01-21 18:06:55

标签: spring-mvc cas

我在Spring应用程序中使用Jasig CAS。 CAS Authentication Filter bean的配置如下所示:

<bean id="authenticationFilter" class="org.jasig.cas.client.authentication.AuthenticationFilter">
  <property name="casServerLoginUrl" value="https://localhost:8443/cas/login"/>
  <property name="service" value="https://localhost:8443/myapp/index.html"/>
</bean>  

即。一方面,身份验证过滤器将重定向到casServerLoginUrl属性中指定的URL,另一方面,CAS服务器将重定向回service属性中指定的URL。

有没有办法让service属性的值动态化?我希望它在登录前包含最后一个请求的URL,并在成功登录CAS后分别重定向到此URL。

2 个答案:

答案 0 :(得分:1)

由于service参数标识CAS-Server上的服务,因此无法动态更改。 问题是CAS服务器使用服务参数进行标识AND作为重定向位置URL。

如果您操作'CasAuthenticationFilter'中的service / redirect-URL,以便客户端应用程序将service参数设置为当前请求的url,那么cas将为该特定URL创建一个票证。 这意味着1.票证验证将失败,并且2. Cas-Server为客户端应用程序上的每个请求页面创建新票证。

答案 1 :(得分:0)

当您调用cas登录页面时,您可以在客户端使用 service 参数

https://yourcas.com/cas/login?service=urlservice

CAS成功验证后将客户端重定向到此URL

相关问题