CAS单点登录系统实操指南

CAS单点登录系统实操指南
CAS单点登录系统实操指南

CAS单点登录系统实操指南

CAS单点登录系统实操指南 (1)

1. CAS单点登录介绍 (3)

1.1. 什么是单点登录 (3)

1.2. 什么是CAS (3)

2. CAS服务端部署及配置 (5)

2.1. 基础部署配置 (5)

2.2. 去除https认证 (7)

2.3. 登录数据源设置 (8)

2.3.1 密码未加密处理 (8)

2.3.2 密码MD5加密配置 (9)

2.4. 登录页面的极简改造 (10)

3. CAS客户端搭建 (11)

3.1. 搭建工程并添加依赖 (11)

3.2. 单点登录配置 (12)

3.3. 单点登出配置 (14)

3.3.1 未重定向登出 (14)

3.3.2 重定向地址登出 (15)

3.4. 获取登录用户信息配置 (15)

4. CAS客户端与SpringSecurity集成 (16)

4.1. 搭建工程并添加依赖 (16)

4.2. 修改和创建配置文件 (18)

4.3. 创建Spring-security认证脚本 (22)

4.4. 获取登录名 (22)

1. CAS单点登录介绍

1.1. 什么是单点登录

单点登录(Single Sign On),简称为SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统方式的session是无法解决的,我们需要使用相关的单点登录技术来解决。

1.2. 什么是CAS

CAS 是Yale 大学发起的一个开源项目,旨在为Web 应用系统提供一种可靠的单点登录方法,CAS 在2004 年12 月正式成为JA-SIG 的一个项目。CAS 具有以下特点:

【1】开源的企业级单点登录解决方案。

【2】CAS Server 为需要独立部署的Web 应用。

【3】CAS Client 支持非常多的客户端(这里指单点登录系统中的各个Web 应用),包括Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。

从结构上看,CAS 包含两个部分:CAS Server 和CAS Client。CAS Server 需要独立部署,主要负责对用户的认证工作;CAS Client 负责处理对客户端受保护资源的访问请求,需要登录时,重定向到CAS Server。下图是CAS 最基本的协议过程:

SSO单点登录访问流程主要有以下步骤:

1. 访问服务:SSO客户端发送请求访问应用系统提供的服务资源。

2. 定向认证:SSO客户端会重定向用户请求到SSO服务器。

3. 用户认证:用户身份认证。

4. 发放票据:SSO服务器会产生一个随机的Service Ticket。

5. 验证票据:SSO服务器验证票据Service Ticket的合法性,验证通过后,允许

客户端访问服务。

6. 传输用户信息:SSO服务器验证票据通过后,传输用户认证结果信息给客户端。

2. CAS服务端部署及配置

本文采用版本为CAS.5.3,Tomcat.8.5.23,mysql8.0+。

2.1. 基础部署配置

第一步:下载官方提供的CAS部署工程和对应版本Tomcat。解压后的CAS 工程目录列表如下:

第二步:双击build.sh运行程序,会自动开始构建war包,构建完成后会在同级目录出现target文件夹,进入文件夹目录如下:

第三步:将cas.war包拷贝到tomcat目录/webapps/目录下,启动tomcat (注意端口是否被占用),cas.war将会被自动解压。出现下图所示,表示启动成功。

第四步:浏览器输入地址:localhost:9001/cas/login,会弹出登录界面。

第五步:输入初始用户名和密码:casuser/Mellon,登录成功,表示基础部署完成。

注:如果要修改登录密码,进入tomcat目录webapps\cas\WEB-INF\classes 下,修改application.properties文件中的https://www.360docs.net/doc/3211221351.html,ers字段值,如下:

2.2. 去除https认证

CAS默认使用的是HTTPS协议,如果使用HTTPS协议需要SSL安全证书(需向特定的机构申请和购买)。如果对安全要求不高或是在开发测试阶段,可使用HTTP协议。这里通过修改配置,让CAS使用HTTP协议。

第一步:修改webapps\cas\WEB-INF\classes\application.properties文件,在最后添加如下语句:

第二步:修改webapps\cas\WEB-INF\classes\services\HTTPSandIMAPS-10000001.json文件,添加http协议访问。

注:如果客户端没有经过https认证对CAS服务端进行访问,将会出现未认证授权的服务的界面提示。

2.3. 登录数据源设置

2.3.1 密码未加密处理

第一步:新建数据库userdb,建立用户登录的数据库表tb_user,并添加字段username,password。插入一条数据,如用户名密码为:demo:123456。

第二步:修改cas工程目录pom.xml文件,添加如下依赖。

第三步:进入cas工程目录,使用命令行,先执行清除命令,再执行安装命令。

第三步:将构建完成target目录下的cas.war文件拷贝到tomcat目录下,运行tomcat,解压war包。

第四步:修改tomcat目录下的webapps\cas\WEB-

INF\classes\application.properties文件,注释掉用户名密码登录的

https://www.360docs.net/doc/3211221351.html,ers字段,并添加数据库相关配置。

第五步:重启tomcat,并使用第一步插入的用户名密码进行登录,如果出现登录成功界面,表示数据源设置成功。

2.3.2 密码MD5加密配置

修改tomcat目录下的webapps\cas\WEB-INF\classes\application.properties文件,添加md5加密相关配置。

2.4. 登录页面的极简改造

进入tomcat目录\webapps\cas\WEB-INF\classes\templates,修改casLoginView.html文件,这个是CAS自带的登录页面,极简更改如下:

3. CAS客户端搭建

3.1. 搭建工程并添加依赖

搭建Maven的web工程,并在pom.xml文件中添加cas客户端依赖和servlet依赖,以及tomcat插件。配置如下:

3.2. 单点登录配置

第一步:修改web.xml文件,在文件中添加两个登录的必填配置,一个是负责用户的认证工作,另一个是负责对Ticket的校验工作,配置如下:

第二步:修改或添加index.html页面,这个页面是登录成功后,进入的第一个页面,用于验证登录是否成功。

第三步:启动程序,访问客户端设置地址,便会进入CAS登录界面,输入用户名和密码,登录成功进入index.jsp页面。

3.3. 单点登出配置

3.3.1 未重定向登出

第一步:在web.xml文件中添加单点登出配置。

第二步:在index.html添加登出按钮,并添加登出的访问地址。(注意:本地测试这里必须填127.0.0.1,不能填localhost,否则登出会失效)

第三步:测试登出操作,退出成功,返回退出成功界面。

3.3.2 重定向地址登出

第一步:修改3.3.1章节的第二步index.html文件,添加重定向地址,如下:

第二步:修改CAS服务端tomcat目录文件webapps\cas\WEB-INF\classes\ application.properties,添加允许重定向字段,并重启tomcat。

第三步:测试,点击退出登出后,将会重定向到百度页面。

3.4. 获取登录用户信息配置

在web.xml文件中,添加如下配置。

4. CAS客户端与SpringSecurity集成

4.1. 搭建工程并添加依赖

创建Maven工程,并在pom.xml文件中添加Spring、Spring-security相关依赖,以及tomcat插件。

4.2. 修改和创建配置文件

第一步:创建spring-security和CAS相关的配置文件spring-security.xml,注意修改端口和CAS服务访问地址。

第二步:创建springmvc.xml文件,用于添加包扫描和注解配置。

第三步:修改web.xml文件,添加认证拦截器和spring文件扫描器。

CAS_SSO单点登录实例详细步骤

CAS SSO单点登录实例详细步骤 原创作者:孙俊财

第一步 1、用keytool生成证书: 命令: keytool -genkey -alias sjc -keyalg RSA -keysto re c:/store/mykey 说明: 这里-alias sjc 是表示生成的这个证书的别名叫sjc,-keyalg RSA 指的是采用的RSA算法,-keystore c:/store/mykey是指生成的证书存储的位置。回车后会提示你输入keystore password,这可以自己定(这里输入sunjuncai,下面配tomcat时要用的),然后是一些个人信息及组织信息,可以轻松搞定。 注意:密码输入后,会让你输入其他信息,记得这里第一个姓名必须是服务器的域名这里我输入的是完整计算机名称:gaofeng.nmc.hamcc 这里要注意如果不这样写就会报如下异常: java.io.IOException: HTTPS hostname wrong: should be 实战: C:\Documents and Settings\wangyoushi8>keytool -genkey -alias sjc -keyalg RSA -keystore c:/store/mykey 输入keystore密码:sunjuncai

您的名字与姓氏是什么? [Unknown]:gaofeng.nmc.hamcc 您的组织单位名称是什么? [Unknown]:上海神洲数港 您的组织名称是什么? [Unknown]:网络优化 您所在的城市或区域名称是什么? [Unknown]:郑州 您所在的州或省份名称是什么? [Unknown]:河南 该单位的两字母国家代码是什么 [Unknown]:ZH CN= gaofeng.nmc.hamcc, OU=上海神洲数港, O=网络优化, L=郑州, ST=河南, C=ZH 正确吗? [否]:y 输入的主密码 (如果和keystore 密码相同,按回车): 2、创建证书后,就导出证书: 命令: keytool -export -file c:/store/server.crt -alias sjc -keystore c:/store/mykey 说明: 从c:/store/mykey里取出证书入到c:/store/下,如果没有指定,就是存放在目录下C:\Documents and Settings\用户目录名\ 实战: C:\Documents and Settings\wangyoushi8>keytool -export -file c:/store/server.crt -alias sjc -keystore C:/store/mykey 输入keystore密码:sunjuncai 保存在文件中的认证 3、为客户端的JVM导入密钥: 命令: keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store/server.crt -alias sjc 说明: 注意:输入密码时密码为"changeit",这是默认密码. 特别说明:这个D:/jdk1.5.0_12/jre/lib/security/cacerts是指JDK的JRE路径下的lib目录. 至此,第一步完成。 实战: C:\Documents and Settings\wangyoushi8> keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store/server.crt -alias sjc 输入keystore密码:changeit

统一认证与单点登录系统-产品需求规格说明书

统一认证与单点登录系统产品需求规格说明书 北京邮电大学

版本历史

目录 0文档介绍 (5) 0.1 文档目的 (5) 0.2 文档范围 (5) 0.3 读者对象 (5) 0.4 参考文档 (5) 0.5 术语与缩写解释 (5) 1产品介绍 (7) 2产品面向的用户群体 (7) 3产品应当遵循的标准或规范 (7) 4产品范围 (7) 5产品中的角色 (7) 6产品的功能性需求 (8) 6.0 功能性需求分类 (8) 6.0.1产品形态 (8) 6.1 外部系统管理 (9) 6.1.1外部系统注册 (9) 6.1.2外部系统集成配置 (11) 6.2 用户管理 (11) 6.2.1用户管理控制台 (11) 6.2.2用户自助服务 (13) 6.2.3统一用户管理 (13) 6.3 组织结构管理 (14) 6.4 权限管理 (15) 6.4.1统一角色管理 (18) 6.5 单点登录 (18) 6.5.1基于Httpheader单点登录 (19) 6.5.2基于表单代填的方式单点登录 (20) 6.5.3基于CAS单点登录 (20) 6.5.4总结 (23) 7产品的非功能性需求 (24) 7.1.1性能需求 (24) 7.1.2接口需求 (24) 8附录B:需求确认 (25)

0文档介绍 0.1文档目的 此文档用于描述统一认证与单点登录系统的产品需求,用于指导设计与开发人员进行系统设计与实现。 0.2文档范围 本文档将对系统的所有功能性需求进行消息的描述,同时约定非功能性以及如何与第三方系统进行交互。 0.3读者对象 本文档主要面向一下读者: 1.系统设计人员 2.系统开发与测试人员 3.系统监管人员 4.产品甲方管理人员 0.4参考文档 《凯文斯信息技术有限公司单点登录及统一用户技术方案V1.0》 0.5术语与缩写解释

简单的单点登录实现过程及效果展示

一、实现过程 从用到的jar包文件夹的cas-server-3.3.1modules中找出cas.war放到tomcat/webapps下面(cas-server-webapp-3.3.1.war重命名即可)。 现在cas默认的server端已经有了,下面自己写2个客户端测试一下 MyEclipse里面新建web project:sso 新建类HelloWorldExample package servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public final class HelloWorldExample extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html");

PrintWriter writer = response.getWriter(); writer.println(""); writer.println(""); writer.println("Sample Application Servlet Page"); writer.println(""); writer.println(""); writer.println("

"); writer.println(""); writer.println(""); writer.println(""); writer.println(""); writer.println("
"); writer.println(""); writer.println(""); writer.println("

Sample Application Servlet

"); writer.println("This is the output of a servlet that is part of"); writer.println("the Hello, World application."); writer.println("
");

peoplesoft系统员工自助操作手册v.0

威高集团Peoplesoft系统用户操作手册 -- 自助服务 创建日期: 2016-8-5 控制编码: 当前版本: 2.0

目录 第一章用户手册惯例及系统通用操作 (3) 1.1系统连接与访问方式 (3) 1.1.1客户端和浏览器要求 (3) 1.1.2网络要求 (3) 1.1.3单点登录 (3) 1.2用户登录与更改密码 (4) 1.2.1用户登录 (4) 1.2.2更改密码 (5) 第二章员工自助 (6) 2.1功能概述 (6) 2.2操作说明 (6) 2.2.1查看信息 (6) 2.2.2修改信息 (8) 2.2.2.1修改手机号码 (8) 2.2.2.2修改邮箱信息 (10) 第三章用户手册惯例及系统通用操作 (13) 3.1系统概述 (13) 3.2手册术语 (13) 3.2.1操作约定 (13) 3.2.2页面常见按钮/图标解释 (14) 文档控制 (15)

第一章用户手册惯例及系统通用操作 1.1系统连接与访问方式 2.2.1 客户端和浏览器要求 威高集团安装的PeopleSoft系统是当前最新版本——PeopleSoft 9.2。新版本中除了增加和完善部分新功能之外,在视觉美观方面也大大增强。 如欲获得最佳视觉体验,请使用较高版本的浏览器,如Internet Explorer 7.0或以上版本、Chrome28或以上版本、Mozilla Firefox 3.5或以上版本。 2.2.2 网络要求 网络方面,根据威高集团人力资源部要求,PeopleSoft系统能够通过外网及内网访问。访问地址如下: 外网:http://221.2.165.51:8070/ 内网:http://172.16.7.72/ 2.2.3 单点登录 员工可通过云办公快捷路径登录Peoplesoft系统,访问方式如下图所示:

CAS单点登录配置全过程

CAS配置全过程 软件工具: 1.cas-server-3.3.5-release.zip(CAS服务端) 2.cas-client- 3.1.10-release.zip(CAS客户端) 3.apache-tomcat-7.0.40 https://www.360docs.net/doc/3211221351.html,mons-dbcp-all-1.3-r699049.jar 5.mysql-connector-java-5.1.18-bin.jar 6.cas-server-jdbc-3.0.5-rc2.jar 写在前面的话 此配置是根据当前系统,当前的版本,仅供参考,如果有什么其他的问题可以一起研究。 第一节:先走通技术障碍 第一步:环境部署 1.在Tomcat 根目录下创建一个cas目录。 2.下载CAS服务器并解压,打开cas-server- 3.3.5\modules,将cas-server-webapp-3.3.5.war复制到刚刚在Tomcat创建的cas目录下,并重命名为ROOT.war 3.修改host文件(C:\Windows\System32\drivers\etc)添加 127.0.0.1 https://www.360docs.net/doc/3211221351.html, 注意:如果想在一台PC机上模拟这个单点登录,就必须域名重定向,如果是多台PC机,

可以不配置此项,下文有用到https://www.360docs.net/doc/3211221351.html,,可以用相应PC机的IP代替 4.修改Tomcat文件下的server.xml(apache-tomcat-7.0.40\conf\server.xml) 添加内容: 5.启动Tomcat服务,查看信息,(如果有报错,可以根据信息查找错误),打开浏览器,输入https://www.360docs.net/doc/3211221351.html,:8080如果出现以下界面,则CAS服务端配置成功。 注:这个是最简单的CAS服务,只要输入的用户名跟密码一样,就可以正常登陆,在我们实际开发中,这个验证因为跟数据库作比较,接下来,我们就配置数据库校验。 第二步:配置数据库验证 1.打开deployerConfigContext.xml,在apache-tomcat-7.0.40\cas\ROOT\WEB-INF目录下,找到如下代码: 添加下面代码: 2.增加数据源dataSource, 在deployerConfigContext.xml,(跟上面同一个文件)找到 ,在下面添

单点登录系统(SSO)详细设计说明书

单点登录系统(SSO)详细设计说明书 1、引言 1.1编写目的 为了单点登录系统(SSO系统)的可行性,完整性,并能按照预期的设想实现该系统,特编写需求说明书。 同时,说明书也发挥与策划和设计人员更好地沟通的作用。 1.2背景 a.鉴于集团运营的多个独立网站(称为成员站点),每个网站都具有自己的身份验证机制,这样势必造成:生活中的一位用户,如果要以会员的身份访问网站,需要在每个网站上注册,并且通过身份验证后,才能以会员的身份访问网站;即使用户以同样的用户名与密码在每个网站上注册时,虽然可以在避免用户名与密码的忘记和混淆方面有一定的作用,但是用户在某一段时间访问多个成员站点或在成员站点间跳转时,还是需要用户登录后,才能以会员的身份访问网站。这样不仅给用户带来了不便,而且成员网站为登录付出了性能的代价; b.如果所有的成员网站,能够实现单点登录,不仅在用户体验方面有所提高,而且真正体现了集团多个网站的兄弟性。通过这种有机结合,能更好地体现公司大平台,大渠道的理念。同时,这样做也利于成员网站的相互促进与相互宣传。 正是出于上面的两点,单点登录系统的开发是必须的,是迫在眉睫的。1.3定义 单点登录系统提供所有成员网站的“单一登录”入口。本系统的实质是含有身份验证状态的变量, 在各个成员网站间共用。单点登录系统,包括认证服务器(称Passport服务器),成员网站服务器。 会员:用户通过Passport服务器注册成功后,就具有了会员身份。 单一登录:会员第一次访问某个成员网站时,需要提供用户名与密码,一旦通过Passport服务器的身份验证, 该会员在一定的时间内,访问任何成员网站都不需要再次登录。 Cookie验证票:含有身份验证状态的变量。由Passport服务器生成,票含有用户名,签发日期时间, 过期日期时间和用户其它数据。

CAS单点登录

CAS单点登录总结 一、服务端搭建 1.安装JDK。 2.安装Tomcat。安装版本Tomcat7.0. 3.在Tomcat上配置SSl (1)生成证书。在C盘根目录下建立子文件夹“Keys”,用于存放证书。在 JDK安装文件夹下的bin文件夹(C:\Program Files\Java\jre1.8.0_60\bin)下打开“命令窗口”。 (2)执行命令“keytool -genkey -alias tomcat -keyalg RSA -storepass changeit -keystore c:\keys\.keystore -validity 3600”创建证书。 (3)将证书导入的JDK的证书信任库中 第一步:导出证书。 执行命令“keytool -export -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore c:\keys\.keystore -storepass changeit”将证书导出到Keys文件夹。 第二步:将证书导入到JDK证书信任库。 执行命令“keytool -import -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore "C:\Program Files\Java\jre7\lib\security\cacerts" -storepass changeit”。系统询问 是否信任此证书,回答“y” 4、配置server.xml文件 用文本编辑器管理员身份运行,打开Tomcat7.0下的server.xml文件(C:\Program

中国联通合作方自服务门户系统操作手册-合作方人员操作V_1.0

中国联合网络通信有限公司合作方自服务门户系统 操作手册 文档作者: 创建日期: 确认日期: 当前版本: 审批人

文档控制 -创建- 增加- 修订

目录 1.概述 (4) 1.1.编写说明 (4) 1.2.术语解释 (4) 1.3.合作方注册与添加业务员的说明 (5) 1.1.合作方人员自助操作 (7) 2.1.1合作方自服务门户首页操作介绍 (7) 2.1.2合作方自助注册 (8) 【业务场景】 (8) 【功能概要】 (9) 【操作流程】 (9) 【操作说明】 (10) 【注意事项】 (15) 2.1.3合作方自助新增合作范围 (16) 【业务场景】 (16) 【功能概要】 (16) 【操作流程】 (17) 【操作说明】 (17) 【注意事项】 (21) 2.1.4合作方自助新增业务员 (22) 【业务场景】 (22) 【功能概要】 (22) 【操作流程】 (22) 【操作说明】 (23) 【注意事项】 (29) 2.1.5合作方管理员登录系统操作 (30) 【业务场景】 (30) 【功能概要】 (30) 【操作流程】 (30) 【操作说明】 (30) 【注意事项】 (42) 2.1.6合作方业务员登录系统操作 (42) 【业务场景】 (42) 【功能概要】 (42) 【操作流程】 (42) 【操作说明】 (42) 【注意事项】 (47)

1.概述 1.1.编写说明 本操作手册依据确认的合作方需求规格说明书—《中国联通合作方管理应用业务需求规格说明书V2.0》撰写。 手册介绍合作方登录合作方自服务门户的自助操作和联通合作方管理员通过联通云门户单点登录到合作方自服务门户对合作方管理的操作。 所有的联通员工,统一接入云门户,并通过云门户一点访问所有的业务应用系统;所有的合作方人员(供应商、合作伙伴、代理商等),统一接入合作方自服务门户,并通过合作方自服务门户一点访问相关的业务应用系统; 本用户操作手册的每一章按合作方业务中涉及的基本操作类型来展开,手册是合作方业务的操作说明,包括以下四个方面: 1.业务场景:描述功能实现的业务前提。 2.功能概要:此功能的概要描述; 3.操作流程:业务实现的系统流程。 4.操作说明:系统内的操作步骤。 5.注意事项:操作规范化内容。 本操作手册将尽量做到准确、详细、全面,报告中如有错误、不当、或遗漏的问题,请客户方予以纠正和补充。 此说明文档将作为解决方案及其以后实施工作的重要依据,需要用友和联通双方最终确认,如果需要更改或添加内容,则必须由双方共同协商同意后才可。 未经特别提示,本手册中不以图示中内容信息为准,仅供参考。 1.2.术语解释

CAS认证实现单点登录

CAS认证实现单点登录 一.背景 有几个相对独立的java的web应用系统,各自有自己的登陆验证功能,用户在使用不同的系统的时候,需要登陆不同的系统。现在需要提供一个 统一的登陆/登出界面,而不修改各个系统原来的登陆验证机制。于是采用单点登录系统开源单点登录产品CAS。 随着新的业务网站不断的增加,用户在每个应用系统中都有独立的账号,这样就造成在访问不同的应用系统时,需要记录对应的用户名和密码,多 个用户名密码极易记混,如果忘记或记错了某一个业务网站的用户名或密码就无法进行登录,耽误工作,影响工作效率 允许用户一次性进行认证之后,就访问系统中不同的应用 二.原理 CAS 是一个独立的web 应用, 当前使用Java Servlets 实现,通过HTTPS 协议保证其数据的传输安全性。它通过三个Url 地址进行访问:登录Url、验证URL、注销URL。

三. CAS认证集成 要使用单点登录,需要部署CAS系统,CAS服务端可以直接部署在tomcat下运行,对于CAS服务端来说,所有要集成单点登录的web应用都是它的一个客户端,CAS有客户端jar包,客户端web应用需要引入CAS客户端的jar包,这样CAS系统的服务端和客户端web应用程序端才能通信。 客户端web应用程序的通过配置web.xml,添加CAS需要的各种过滤器,来实现和CAS服务器通信,用户信息验证工作在CAS 服务端统一完成,验证通过后,客户端web应用程序只需要补全自己的Session信息即可。 3.1部署CAS系统服务端 步骤1:准备好以下运行环境 jdk1.6+

tomcat6+ jdk与tomcat的下载、安装、配置在此略过。 步骤2:安装部署cas-server 到官网(https://www.360docs.net/doc/3211221351.html,/cas/cas-server-3.5.0-release.zip)下载cas-server-3.5.0-release.zip。解压缩以后,在其路 径 cas-server-3.5.0\modules 下面找到 cas-server-webapp-3.5.0.war,将其拷贝到 tomcat 的webapps 下,改名为 cas.war, 并修改 war 包中配置文件 cas.properties 里的 cas server name=cas 并启动 tomcat,启动后可在浏览器访 问 http://localhost:8080/cas/login

CAS实现单点登录(SSO)经典完整教程

一、简介 1、cas是有耶鲁大学研发的单点登录服务器 2、本教材所用环境 ?Tomcat7.2 ?JDK6 ?CAS Service 版本 cas-server-3.4.8-release ?CAS Client版本 cas-client-3.2.1-release 二、生成证书 证书对于实现此单点登录非常之重要,证书是服务器端和客户端安全通信的凭证,本教程只是演示,所有用了 JDK自带的证书生成工具keytool。当然在实际项目中你可以到专门的证书认证中心购买证书。 中文官方网站:https://www.360docs.net/doc/3211221351.html,/cn/ 1、用JDK自带的keytool生成证书 view plain 1.命令:keytool -genkey -alias smalllove -keyalg RSA -keystore D:/keys/smallkey 此命令是生成一个证书,其中smalllove 是证书别名 此命令的执行如图所示:

其中名字与姓氏这一最好写你的域名,如果在单击测试你可以在C:\Windows\System32\drivers\etc\hosts文件中映射一个虚拟域名,注意不要写IP。 2、导出证书 view plain

1.命令:C:\>keytool -export -file d:/keys/small.crt -alias smalllove -keystore d:/keys/smallkey 如图: 密码为上步设置的密码。 3、把证书导入到客户端JDK中。 view plain 1.命令:keytool -import -keystore C:\Java\jdk1.6.0_21\lib\security\cacerts -file D:/keys/small.crt -alias smalllove 此命令是把证书导入到JDK中。 如图:

CAS单点登录配置全过程

CAS配置全过程 说明:这里只是简单的配置了CAS单点登录的过程,并没有加入复杂的验证,也没有做MD5的校验。输入数据库中存在的用户名跟密码就会登录成功 一. 首先需要下载cas-server-3.4.2-release.zip包,这个包里面包含CAS Server服务器的war包。解压之后放到找到cas-server-3.4.2\modules 下的 cas-server-webapp-3.4.2.war , 拷tomcat\webapps\下并改名为cas.war。 启动tomcat后会在webapps下看到cas文件,然后停止tomcat. 二. 配置tomcat以及修改cas server的配置 1.生成证书并导入到jdk的jre中 请直接运行附件中的.bat文件会自动把证书生成在D盘根目录下并导入到jre 中 这是bat脚本内容 keytool -genkey -alias tomcatgecko -keyalg RSA -keystore d:\mykeystore -dname "CN=gecko-4d4611f2e, OU=gecko-4d4611f2e, O=gecko-4d4611f2e, L=SH, ST=SH, C=CN" -keypass changeit -storepass changeit keytool -export -alias tomcatgecko -keystore d:\mykeystore -file d:\mycerts.crt -storepass changeit keytool -import -keystore "%JAVA_HOME%/JRE/LIB/SECURITY/CACERTS" -file d:\mycerts.crt -alias tomcatgecko 这里要注意:证书是要导入到tomcat使用的jdk。不然CAS在跳转时会找不到本地域名脚本中红色的部分是写自己的计算机名称

CAS单点登录系统实操指南

CAS单点登录系统实操指南 CAS单点登录系统实操指南 (1) 1. CAS单点登录介绍 (3) 1.1. 什么是单点登录 (3) 1.2. 什么是CAS (3) 2. CAS服务端部署及配置 (5) 2.1. 基础部署配置 (5) 2.2. 去除https认证 (7) 2.3. 登录数据源设置 (8) 2.3.1 密码未加密处理 (8) 2.3.2 密码MD5加密配置 (9) 2.4. 登录页面的极简改造 (10) 3. CAS客户端搭建 (11) 3.1. 搭建工程并添加依赖 (11) 3.2. 单点登录配置 (12) 3.3. 单点登出配置 (14) 3.3.1 未重定向登出 (14) 3.3.2 重定向地址登出 (15) 3.4. 获取登录用户信息配置 (15) 4. CAS客户端与SpringSecurity集成 (16) 4.1. 搭建工程并添加依赖 (16)

4.2. 修改和创建配置文件 (18) 4.3. 创建Spring-security认证脚本 (22) 4.4. 获取登录名 (22)

1. CAS单点登录介绍 1.1. 什么是单点登录 单点登录(Single Sign On),简称为SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统方式的session是无法解决的,我们需要使用相关的单点登录技术来解决。 1.2. 什么是CAS CAS 是Yale 大学发起的一个开源项目,旨在为Web 应用系统提供一种可靠的单点登录方法,CAS 在2004 年12 月正式成为JA-SIG 的一个项目。CAS 具有以下特点:

单点登录_尚学堂CAS讲义

一.SSO (Single Sign-on)原理 SSO 分为Web-SSO和桌面SSO。桌面SSO 体现在操作系统级别上。Web-SSO体现在客户端,主要特点是:SSO 应用之间使用Web 协议( 如HTTPS) ,并且只有一个登录入口。我们所讲的SSO,指Web SSO 。 SSO 的体系中,有下面三种角色: ?User(多个) ?Web应用(多个) ?SSO认证中心(一个) SSO 实现模式千奇百怪,但万变不离其宗,包含以下三个原则: ●所有的登录都在 SSO 认证中心进行。 ●SSO 认证中心通过一些方法来告诉 Web 应用当前访问用户究竟是不是通过认证的 用户。 ●SSO 认证中心和所有的 Web 应用建立一种信任关系。 二.CAS 的基本原理 CAS(Central Authentication Service) 是Yale 大学发起的构建Web SSO 的Java开源项目。 1.CAS 的结构体系 ◆CAS Server CAS Server 负责完成对用户信息的认证,需要单独部署,CAS Server 会处理用户名/ 密码等凭证(Credentials) 。 ◆CAS Client CAS Client部署在客户端,当有对本地Web 应用受保护资源的访问请求,并且需要对请求方进行身份认证,重定向到CAS Server 进行认证。 2.CAS 协议 基础协议

上图是一个基础的CAS 协议,CAS Client 以过滤器的方式保护Web 应用的受保护资源,过滤从客户端过来的每一个Web 请求,同时,CAS Client 会分析HTTP 请求中是否包请求Service Ticket( 上图中的Ticket) ,如果没有,则说明该用户是没有经过认证的,CAS Client 会重定向用户请求到CAS Server (Step 2 )。Step 3 是用户认证过程,如果用户提供了正确的认证信息,CAS Server 会产生一个随机的Service Ticket ,会向User 发送一个Ticket granting cookie (TGC) 给User 的浏览器,并且重定向用户到CAS Client (附带刚才产生的Service Ticket),Step 5 和Step6 是CAS Client 和CAS Server 之间完成了一个对用户的身份核实,用Ticket 查到Username ,认证通过。 3.CAS 如何实现SSO 当用户访问Helloservice2再次被重定向到CAS Server 的时候,CAS Server 会主动获到这个TGC cookie ,然后做下面的事情: 1)如果User 的持有TGC 且其还没失效,那么就走基础协议图的Step4 ,达到了 SSO 的效果。 2)如果TGC 失效,那么用户还是要重新认证( 走基础协议图的Step3) 。 三.实践配置 下面我们以tomcat 5.5 为例进行说明(这里,我将Server和Client同时放在了同一个Tomcat服务器下)。 软件环境:tomcat 5.5 ant-1.6.5, jdk1.5.0_06 下载cas-server-3.0.4.zip和cas-client和cas-server-jdbc-3.0.5-rc2.jar和mysql 5.0.16和tomcat 5.5.15 https://www.360docs.net/doc/3211221351.html,/downloads/cas/cas-server-3.0.4.zip

网上办税服务厅登录操作手册

单点登录系统 用户操作手册 大连市国家税务局 大连市地方税务局 2016年5月

目录前言 1.模块功能 1.1登录 1.2修改密码 1.3手机号维护 1.4用户切换 1.5国税网上申报 1.6国税网上办税 1.7财务报表 1.8出口退税综合服务平台

前言 为进一步全面推行“营改增”政策,贯彻落实《国家税务局地方税务局合作工作规范(2.0版)》,现推出“大连市国家税务局大连市地方税务局网上办税服务厅”,该系统集成了国税网上申报系统、网上办税系统、出口退税系统、财务报表系统和地税网上申报系统功能,充分整合国地税资源,发挥各自优势,实现信息高度聚合和服务共享、数据同步。该系统改变了原国地税各办税系统单兵作战的模式,升级为国地税联合办税统一登陆的新模式,系统用户可以通过使用“纳税识别号+密码+手机短信验证”方式或纳税人专用CA证书进行登陆,实现了国地税所有网上系统用户入口的统一。系统充分考虑用户的操作习惯,老用户无需太多的培训即可上手,同时界面清晰实用,更具人性化,便于新用户入门。单点登录系统功能稳定可靠,符合纳税人办税需求,通过统一登陆安全性得到很大提高,做到网上办税“简单、安全、实用”的统一,为纳税人尤其是“营改增”企业提供了更加优质高效的服务。

1.功能模块 1.1登录 目前,纳税人可以通过三种登录方式进行登录: 方式1.纳税人可通过登陆https://www.360docs.net/doc/3211221351.html,登陆网上办税服务厅; 方式2. 纳税人可通过点击大连市国税局网站主页链接登陆网上办税服务厅;

方式3. 纳税人可通过点击大连市地税局网站主页上的链接登陆网上办税服务厅。 1.1.1用户登录 纳税人登录网上办税服务厅后可以选择用户登录、证书登录、短信登录三种登录方式的其中一种方式进行登录。

CAS3.5.2单点登录详解

服务端cas: 从网上下载cas:https://www.360docs.net/doc/3211221351.html,/ 在cas下: 在cas-client下: 解压cas-server-3.5.2-release.zip\cas-server-3.5.2\module\cas-server-webapp-3.5.2.war部署到tomcat上, 设置 F:\apache-tomcat-6.0.30\webapps\cas\WEB-INF\cas-servlet.xml(大家取实际情况的路径) 默认为false,这个设置是为了让登出(logout)以后进入到指定页面. 设置deployerConfigContext.xml 配置数据源和加密: oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@127.0.0.1:1521:orcl require require 然后注释掉下面这行,这行是为了测试使用,只要账号密码相同就可以通过验证

CAS 单点登录操作文档

这人CAS 在 Tomcat 中实现单点登录 1证书生成及导入 1.1Server端证书配置 1.2 JAVA信任证书库 D:\Program Files\Java\jdk1.5.0\jre\lib\security\cacerts cacerts证书库默认密码-storepass changeit 查看证书 1.1.1.2 keytool -list -keystore cacerts -storepass changeit 如果存在则删除 1.1.1.1 keytool -delete -alias tomcatsso -keystore cacerts -storepass changeit 创建证书库 1.1.1.3 keytool -genkey -keyalg RSA -alias tomcatsso -dname "cn=https://www.360docs.net/doc/3211221351.html," -keystore server.keystore -storepass 12345678 导出证书 1.1.1.4 keytool -export -alias tomcatsso -file tomcatsso.crt -keystore server.keystore -storepass 12345678 加入JAVA信任证书库 1.1.1.5 keytool -import -alias tomcatsso -file tomcatsso.crt -keystore ../jre/lib/security/cacerts -storepass changeit 说明:在生成key的过程,"cn=https://www.360docs.net/doc/3211221351.html," 中的https://www.360docs.net/doc/3211221351.html,为Server端的域名(必填)。 1.2.1TOMCAT 配置SSL支持

软件工程-使用CAS实现SSO简洁教程

目录 0. 文档介绍 (2) 0.1文档目的 (2) 0.2文档范围 (2) 0.3读者对象 (2) 0.4参考文献 (2) 0.5术语与缩写解释 (2) 1.概述 (3) 1.1背景 (3) 1.2环境 (3) 1.3下载资源 (3) 2. 配置CAS SERVER (4) 2.1简单配置 (4) 2.2数据库验证配置 (5) 2.3参数配置 (8) 2.4HTTPS验证配置 (10) 2.5自定义页面 (13) 3. 配置JAVA CLIENT (16) 3.1HTTPS验证 (16) 3.2HTTP验证 (18) 4. 配置DOTNET CLIENT (19) 5. 配置PHP CLIENT (23) 6. 如何实现单点注销 (23)

0. 文档介绍 0.1 文档目的 记录使用CAS实现SSO的过程。 0.2 文档范围 使用CAS实现SSO的过程。 0.3 读者对象 任何有兴趣的家伙。 0.4 参考文献 提示:列出本文档的所有参考文献(可以是非正式出版物),格式如下:[标识符] 作者,文献名称,出版单位(或归属单位),日期 大部分都是网络上查询的资料,很多,不列举了。 0.5 术语与缩写解释

1.概述 1.1背景 单点登录是必须的,实现方式颇多,这里就说使用CAS的实现方式。使用CAS实现SSO,网络上说明很多,大部分都是从制作证书开始,而实际上是可以不使用HTTPS 验证,这样更方便。 单点登录的原理是通过拦截你设定的URL,并跳转到你指定的CAS SERVER登录页,当你登录成功后,带着TICKET,返回到你打开的URL。然后你就可以一票在手,畅通无阻。 网上有个家伙用旅游的套票来解释单点登录,非常形象。当你到达一个旅游区门口,你可以买一个套票,套票规定你可以游览N个景点,进入这些景点的时候,你不需要再买票,也就实现了单点登录。 同时,也可以借用这个比喻说明一下单点注销。当你打开一个应用A时,单击了注销按钮,跳转到http://hostname:port/cas/logout或者https://hostname:port/cas/logout,系统显示注销成功。此时,IE窗口没有关闭,你继续打开应用A,仍然没有注销成功,不需要登录。这就相当于你已经在旅游景点内,即使你把套票撕毁了,你仍然可以继续参观这个景点,不会把你驱逐出去。但是,你再也进不了其它的景点了。 那么怎么实现立即生效的注销呢?或者这种方式是否就满足我们的需求呢? 1.2环境 Windows XP、JDK1.6.03、Tomcat6.0.20 注意:配置好环境变量。 1.3下载资源 服务器端:https://www.360docs.net/doc/3211221351.html,/downloads/cas 当前最新版本是3.3.4,测试安装的版本为3.3.3 cas-server-3.3.3-release.zip 客户端:https://https://www.360docs.net/doc/3211221351.html,/svn/cas-clients/ cas-client-2.0.11.zip JAVA支持单点登录 cas-client-3.1.8-release.zip JAVA支持单点注销 dotnet-client DOTNET支持类 phpcas PHP支持

基于CAS模式的单点登录系统设计与分析

Computer Science and Application 计算机科学与应用, 2019, 9(7), 1434-1440 Published Online July 2019 in Hans. https://www.360docs.net/doc/3211221351.html,/journal/csa https://https://www.360docs.net/doc/3211221351.html,/10.12677/csa.2019.97161 Design and Analysis of Single Sign on System Based on CAS Mode Xiaowei Xu, Jinlei Wang, Wenfei Jiang, Fengjuan Cui North China Sea Data and Information Service, SOA, Qingdao Shandong Received: Jul. 9th, 2019; accepted: Jul. 22nd, 2019; published: Jul. 29th, 2019 Abstract In order to solve the problem of the integration of the existing business application system of NCS, this paper makes a deep research on the principle of CAS integrated authentication, and designs a single sign on system based on CAS mode. Based on the actual situation of various software systems of NCS, this paper analyzes the problems faced by various systems to achieve single sign-on, propos-es different solutions to these problems, and provides technical route for the integration of business application systems of NCS, so as to realize the construction of single sign-on system of NCS. Keywords CAS Authentication, SSO, System Integration 基于CAS模式的单点登录系统设计与分析 徐晓玮,王金磊,姜雯斐,崔凤娟 国家海洋局北海信息中心,山东青岛 收稿日期:2019年7月9日;录用日期:2019年7月22日;发布日期:2019年7月29日 摘要 针对自然资源部北海局现有业务应用系统整合问题,对CAS集成认证原理进行深入研究,设计搭建了基于CAS模式的单点登录系统。结合北海局各类软件系统的实际情况,分析各类系统实现单点登录所面临的问题,针对这些问题提出不同的解决方案,为北海局业务应用系统的整合集成提供技术路线,以实现北海局单点登录系统的建设。

相关文档
最新文档