`
lhx222
  • 浏览: 73556 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

CAS单点登录HTTP协议版本配置指南

阅读更多

CAS单点登录配置(HTTP协议版本)



一、CAS版本:
服务端是cas-server-3.4.7。这里不需要源代码,解压zip包中的cas-server-webapp-3.4.7.war出来即可。
客户端是cas-client-3.2.0。这里主要用到cas-client-core-3.2.0.jar包,当然在后面如果需要用到,可自行添加。Apache的日志包这里常用的包是需要的。

二、环境搭建
Tomcat6.x + JDK6.x
关于搭建基本环境,网上已经一大把:
官方WIKI:https://wiki.jasig.org/display/CASUM/Home
IBM技术社区:http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/
ITeye技术社区:http://www.iteye.com/topic/544899
还有很多就不列举了。
总体来说,使用Http协议的CAS比Https版本的步骤少了ssl的配置,然后在服务端需要修改部分配置文件即可。基本上的配置是大同小异的,下面就详细记录下来,日后参考。

三、部署配置
环境搭建完毕后,按下面的步骤,按部就班走完下面的步骤即可
1.CAS服务端配置。服务端主机名假定为sso.ican.org。
  (1).端口配置。我们不使用8443,直接使用80端口,这样看上去舒服点。
  进入部署CAS服务端的Tomcat的conf目录下,配置service.xml即可,主要代码如下:

[code="java"]...

...
  
...
  
...


注意到这里之际设置默认的主机是sso.ican.org了,另外我将下载下来的cas-server-webapp-3.4.7.war解压到Eclipse中的一个工程中去了(G:/projects/sso.ican.org/web目录下),同时把docBase指向该工程的目录下,这样可以随时在IDE中修改配置文件,比用普通的文本编辑器编辑配置文件方便很多。
基本Tomcat的配置修改到此完成了。

2.配置CAS服务应用程序的配置文件
主要有WEB-INF有cas.properties、deployerConfigContext.xml以及WEB-INF子目录spring-configuration下的ticketGrantingTicketCookieGenerator.xml、warnCookieGenerator.xml。修改这些文件后,就可以使用http协议以及80端口来访问CAS登录认证接口了。下面按顺序列出主要的修改和说明:
cas.properties文件,把localhost替换为正式的主机名sso.ican.org,以及去掉了8080端口和cas上下文目录:

[code="java"]cas.securityContext.serviceProperties.service=http://sso.ican.org/services/j_acegi_cas_security_check
# Names of roles allowed to access the CAS service manager
cas.securityContext.serviceProperties.adminRoles=ROLE_ADMIN
cas.securityContext.casProcessingFilterEntryPoint.loginUrl=http://sso.ican.org/login
cas.securityContext.ticketValidator.casServerUrlPrefix=http://sso.ican.org

cas.themeResolver.defaultThemeName=cas-theme-default
cas.viewResolver.basename=default_views

host.name=cas

#database.hibernate.dialect=org.hibernate.dialect.OracleDialect
#database.hibernate.dialect=org.hibernate.dialect.MySQLDialect
database.hibernate.dialect=org.hibernate.dialect.HSQLDialect


deployerConfigContext.xml文件,在前面添加了数据源与密码编码器Bean,这个在后面验证用户登录信息时候会用到;同时替换原来user=password的简单验证bean;以及设置验证不要求使用安全的https方式(p:requireSecure="false"):

[code="java"]...
oracle.jdbc.driver.OracleDriverjdbc:oracle:thin:@172.16.172.180:1521:developbase_gzdevelop

...


...


ticketGrantingTicketCookieGenerator.xml文件中将cookie安全要求为false,因为我们用的是http协议而不是https协议

[code="java"]


同样warnCookieGenerator.xml文件中也设置cookie安全要求为false,这样,我们就完成了使用HTTP协议版本的CAS服务端了。


[code="java"]



Web.xml不需要设置任何东西,使用现成的就可以了。

3.配置CAS客户端,示例中的客户端主机名师www.easycode.com,使用8080端口访问。
CAS客户端的配置主要就是一个web.xml文件:

[code="java"]  CAS Single Sign Out Filterorg.jasig.cas.client.session.SingleSignOutFilterCAS Authentication Filterorg.jasig.cas.client.authentication.AuthenticationFiltercasServerLoginUrlhttp://sso.ican.org/loginserverNamehttp://www.easycode.com:8080CAS Validation Filterorg.jasig.cas.client.validation.Cas10TicketValidationFiltercasServerUrlPrefixhttp://sso.ican.orgserverNamehttp://www.easycode.com:8080CAS HttpServletRequest Wrapper Filterorg.jasig.cas.client.util.HttpServletRequestWrapperFilterCAS Assertion Thread Local Filterorg.jasig.cas.client.util.AssertionThreadLocalFilterCAS Single Sign Out Filter/*CAS Authentication Filter/servlets/*CAS Validation Filter/servlets/*CAS HttpServletRequest Wrapper Filter/servlets/*CAS Assertion Thread Local Filter/servlets/*org.jasig.cas.client.session.SingleSignOutHttpSessionListenerLogoutServletsso.iss.test.LogoutServletcasServerLogoutUrlhttp://sso.ican.org/logout


详细配置可以参考这里:
https://wiki.jasig.org/display/CASUM/End-to-end+Windows+Example
我从Tomcat的示例程序中copy了servlet的例子到客户端程序中,也就是servlets目录的资源是需要登录才能访问的。


编写一些示例页面index.html,方便测试。为了验证当点登出,同时配置另外一个CAS客户端download.easycode.com。详细见附件。sso.ican.org的包太大,按照文档下载CAS的程序解压下来然后按上面的步骤修改即可
3
0
分享到:
评论

相关推荐

    CAS单点登录多语言整合文档+源码

    这个压缩包文件包含的是关于CAS单点登录的多语言整合文档和源码,特别提到了PHP客户端和Java客户端的整合。 首先,我们来深入理解一下CAS的基本工作原理。当用户尝试访问受CAS保护的应用时,会被重定向到CAS服务器...

    cas单点登录技术

    点登录系统设计..................................................附件部分提供了在不同应用服务器(如WebLogic、Tomcat)上配置和实现CAS单点登录的指南,包括使用LDAP进行用户认证的步骤,为实际部署提供了参考。

    Pentaho 5.4.0.1 + CAS单点登录配置文档

    **Pentaho 5.4.0.1与CAS单点登录配置详解** Pentaho是一款开源的企业级商业智能(BI)平台,提供数据集成、分析、报告和仪表板等功能。在5.4.0.1版本中,Pentaho支持与其他系统集成,包括使用中央认证服务(Central...

    discuz x2.5和cas集成,实现cas单点登录 sso

    CAS,全称为中央认证服务,是一个开放源码的单点登录协议实现,最初由耶鲁大学开发。CAS3.5是CAS的一个特定版本,提供了一种集中式的身份验证机制,支持多种协议如HTTP、HTTPS等。它的工作原理是,当用户尝试访问一...

    cas-3.4.1_单点登录_CAS_

    CAS(Central Authentication Service)是Java开发的一个开源的单点登录(Single Sign-On,简称SSO)框架,主要用于解决网络应用中的身份验证问题。在“cas-3.4.1_单点登录_CAS_”这个项目中,你将获得一个完整的CAS...

    使用CAS整合CXF实现单点登录部署步骤

    本文将详细介绍如何使用CAS整合CXF,实现基于Tomcat服务器的单点登录部署步骤。 首先,我们需要在Tomcat服务器上部署CAS项目。这通常涉及以下步骤: 1. **下载CAS服务器**:从官方Git仓库或Maven仓库获取最新的CAS...

    cas 单点登录

    ### CAS单点登录快速开发指南 #### 一、CAS单点登录简介 CAS(Central Authentication Service)是一种开放源代码的单点登录协议和服务,广泛应用于高等教育机构和其他领域。CAS允许客户端应用通过一个中心认证...

    cas单点登陆demo包含cas服务器和2个客户端代码

    CAS(Central Authentication Service)是Java开发的一个开源身份验证框架,主要功能是实现Web应用的单点登录(Single Sign-On,SSO)。这个压缩包提供的是一个完整的CAS SSO演示项目,包括一个CAS服务器和两个...

    cas tomcat整合单点登录demo

    【标题】"CAS Tomcat整合单点登录Demo"是一个示例项目,展示了如何将CAS(Central Authentication Service)与Tomcat应用程序服务器集成,实现单点登录(Single Sign-On, SSO)的功能。CAS是一种开放源码的身份验证...

    CAS单点登录(SSO)完整教程

    ### CAS单点登录(SSO)完整教程:深入解析与实践指南 #### 一、引言:CAS SSO的全面理解 CAS(Central Authentication Service),即中央认证服务,是由Yelu大学研发并开源的一种用于实现单点登录(SSO)的服务框架...

    CAS 单点登录安装笔记4 -- asp.net client端的设置

    综上所述,集成CAS单点登录到ASP.NET应用程序涉及到配置CAS客户端设置、处理登录和登出流程、以及验证服务票证。通过这种方式,用户只需要一次登录即可访问所有集成CAS的系统,提高了用户体验并加强了安全性。

    cas-shiro-https单点登录实现

    单点登录(Single Sign-On,简称SSO)是一种在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的技术。在这个场景中,我们关注的是`cas-shiro-https`的实现,它结合了CAS(Central ...

    cas3.5单点

    文档还可能涵盖了配置示例、故障排查指南以及常见问题解答,帮助读者理解和实施CAS 3.5.2单点登录解决方案。 总之,CAS 3.5.2单点登录是一个强大的身份验证解决方案,旨在简化多应用环境下的用户登录流程,提高用户...

    tomcat配置ssl-单点登录(sso).rar

    - "使用 CAS 在 Tomcat 中实现单点登录_1.pdf":这份文档应该详细介绍了如何在Tomcat上集成CAS,包括下载CAS服务器,配置服务提供者,以及客户端的安装和配置。 - "跨域SSO实例安装和配置指南_3.pdf":此文件可能...

    cas_sso.rar_CAS_CAS SSO_cas文档_sso C_单点登录

    **CAS单点登录系统详解** CAS(Central Authentication Service,中央认证服务)是一种广泛使用的开源身份验证框架,旨在提供一种安全的单点登录(Single Sign-On,SSO)解决方案。SSO允许用户通过一次登录,就能...

    cas-server-webapps.war 单点登录war包

    总结来说,这个压缩包提供的CAS服务器Web应用程序war包,特别适用于在WAS 8.5环境中实现单点登录功能,且提供了定制的数据源配置,便于与各种数据库系统集成。配合readme.txt文件和extend目录,用户可以按照指示进行...

    Java单点登录系统 JA-SIG CAS

    Java单点登录系统(Single Sign-On,简称SSO)是一种身份验证机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次输入凭证。JA-SIG CAS(Central Authentication Service)是Java社区开发的一个开源...

Global site tag (gtag.js) - Google Analytics