cas实现 sso的原理和方法简介

cas实现 sso的原理和方法简介

ID:11918086

大小:115.50 KB

页数:0页

时间:2018-07-14

cas实现 sso的原理和方法简介_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《cas实现 sso的原理和方法简介》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、CAS实现SSO的原理和方法简介1.了解一下cas实现singlesignout的原理,如图所示:                                       图一演示了单点登陆的工作原理。当一个web浏览器登录到应用服务器时,应用服务器(application)会检测用户的session,如果没有session,则应用服务器会把url跳转到CASserver上,要求用户登录,用户登录成功后,CASserver会记请求的application的url和该用户的sessionId(在应用服务器跳转url时,通过参数传给CASserver)。此时在CAS服务器会种下T

2、GCCookie值到webbrowser.拥有该TGCCookie的webbrowser可以无需登录进入所有建立sso服务的应用服务器application。                                   图二演示了单点登出的工作原理。当一个web浏览器要求登退应用服务器,应用服务器(application)会把url跳转到CASserver上的/cas/logouturl资源上,CASserver接受请求后,会检测用户的TCGCookie,把对应的session清除,同时会找到所有通过该TGCsso登录的应用服务器URL提交请求,所有的回调请求中,包含一个

3、参数logoutRequest,内容格式如下:@NOT_USED@[SESSION IDENTIFIER]所有收到请求的应用服务器application会解析这个参数,取得sessionId,根据这个Id取得session后,把se

4、ssion删除。这样就实现单点登出的功能。1.结合源代码来讲述一下内部的代码怎么实现的首先,要实现SSO在应用服务器application端的web.xml要加入以下配置   CAS Single Sign Out Filter   org.jasig.cas.client.session.SingleSignOutFilter   CAS Single Sign Out Fil

5、ter   /*    org.jasig.cas.client.session.SingleSignOutHttpSessionListener注:如果有配置CASclientFilter,则CASSingleSignOutFilter必须要放到CASclientFilter之前。配置部分的目的是在CASserver回调所有的application进行单点登

6、出操作的时候,需要这个filter来实现session清楚。主要代码如下:org.jasig.cas.client.session.SingleSignOutFilterpublic void doFilter(final ServletRequest servletRequest, final ServletResponse servletResponse, final FilterChain  filterChain) throws IOException, ServletException {         final HttpServletRequest request

7、 = (HttpServletRequest) servletRequest;            if ("POST".equals(request.getMethod())) {              final String logoutRequest = request.getParameter("logoutRequest");               if (CommonUtils.isNotBlank(logoutRequest)) {          

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。