CAS退出后跳转到登陆页面或者指定页

本文介绍了如何配置CAS服务器以实现用户退出时跳转到登录页面或指定页面。首先,展示了CAS server 4.1.5版本的`LogoutAction` bean配置,允许在退出时重定向。接着,讲解了客户端的修改步骤,包括在web.xml中添加casServerLogoutUrl和serverName参数,创建logout.jsp页面以处理退出逻辑,并提供了退出操作的示例代码。通过这些设置,实现了CAS单点登录系统退出后的定制化跳转。
  • 一、cas server单点登录服务器修改

cas server4.1.5修改,含义是退出时允许重定向:

修改src\main\webapp\WEB-INF\cas-servlet.xml里的logoutAction
增加 p:followServiceRedirects="${cas.logout.followServiceRedirects:true}"使支持logout输入service参数为跳转路径。

<bean id="logoutAction" class="org.jasig.cas.web.flow.LogoutAction"
p:servicesManager-ref="servicesManager"
p:followServiceRedirects="${cas.logout.followServiceRedirects:true}"/>



早期版本修改:

修改src\main\webapp\WEB-INF\cas-servlet.xml里的logoutController
增加 p:followServiceRedirects="true"使支持logout输入service参数为跳转路径。
[html]  view plain  copy  print ?
  1. <bean id="logoutController" class="org.jasig.cas.web.LogoutController"  
  2. p:centralAuthenticationService-ref="centralAuthenticationService"  
  3. p:logoutView="casLogoutView"  
  4. p:warnCookieGenerator-ref="warnCookieGenerator"  
  5. p:ticketGrantingTicketCookieGenerator-ref="ticketGrantingTicketCookieGenerator"   
  6. p:followServiceRedirects="true"  
  7. />  

 

  • 二、客户端修改

 

  • 1、客户端web.xml中添加

<!-- 填写退出的URL --> 
<context-param> 
<param-name>casServerLogoutUrl</param-name> 
<param-value>https://www.cas.com:8443/cas/logout?locale=zh_CN</param-value> 
</context-param>
<!-- 客户服务器地址 --> 
<context-param> 
<param-name>serverName</param-name> 
<param-value>http://www.client.com:8180/CasDemo/</param-value> 
</context-param>

 

  • 2、添加一个退出页logout.jsp,内容如下:

<body> 
<% 
String casServerLogoutUrl=application.getInitParameter("casServerLogoutUrl");
String serverName=application.getInitParameter("serverName");
if(casServerLogoutUrl!=null&&casServerLogoutUrl.indexOf("?")>-1){
casServerLogoutUrl+="&service="+ serverName;
}else{
casServerLogoutUrl+="?service="+ serverName;
}
session.invalidate(); 
response.sendRedirect(casServerLogoutUrl); 
%> 
</body>

 

3、退出操作,如下

<a href="javascript:window.open('<%=basePath%>logout.jsp','_self')">退出</a>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值