CAS安装使用手册V12Word文档下载推荐.docx
- 文档编号:16304608
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:22
- 大小:2.28MB
CAS安装使用手册V12Word文档下载推荐.docx
《CAS安装使用手册V12Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《CAS安装使用手册V12Word文档下载推荐.docx(22页珍藏版)》请在冰豆网上搜索。
目录3
1.前言4
1.1.本文目的4
1.2.阅读建议4
2.基本概念4
2.1.YaleCAS简介4
2.2.CAS原理和协议4
3.CAS服务端安装5
3.1.准备工作6
3.2.数据库配置6
3.2.1.创建数据库6
3.2.2.初始化数据6
3.2.3.配置数据库连接6
3.2.4.配置加密方式6
3.3.HTTPS验证配置7
3.3.1.服务器端证书制作7
3.3.2.将证书导入的JDK的证书信任库中8
3.4.CASServer部署8
3.4.1.应用服务器配置8
3.4.2.应用部署9
4.CAS客户端安装11
4.1.添加Jar包11
4.2.导入服务端生成证书11
4.3.配置客户web.xml文件11
4.4.IE安装证书13
4.4.1.IE6安装证书向导13
4.4.2.IE7及以上版本安装证书向导18
4.5.CASClient端的获取用户信息23
4.6.系统登录23
4.7.系统签退24
4.7.1.当sessionid的Cookie不进行设置时24
4.7.2.当sessionid的Cookie进行设置时24
前言
本文目的
本文是开发CAS应用的入门手册,主要学习在CAS框架下的CAS服务器配置部署和CAS客户端应用的配置方法。
阅读建议
本文假定读者是一个J2EE的开发人员,有一定的应用编程经验,熟悉RDBMS下的应用开发。
如果您掌握Spring,可以自己继续深入学习CAS服务器内容。
基本概念
YaleCAS简介
CAS是Yale(耶鲁)大学发起的一个开源项目,旨在为Web应用系统提供一种可靠的单点登录方法,CAS在2004年12月正式成为JA-SIG的一个项目。
CAS具有以下特点:
•开源的企业级单点登录解决方案。
•CASServer为需要独立部署的Web应用。
•CASClient支持非常多的客户端(这里指单点登录系统中的各个Web应用),包括Java,.Net,PHP,Perl,Apache,uPortal,Ruby等。
CAS原理和协议
从结构上看,CAS包含两个部分:
CASServer和CASClient。
CASServer需要独立部署,主要负责对用户的认证工作;
CASClient负责处理对客户端受保护资源的访问请求,需要登录时,重定向到CASServer。
图1是CAS最基本的协议过程:
图1.CAS基础协议
CASClient与受保护的客户端应用部署在一起,以Filter方式保护受保护的资源。
对于访问受保护资源的每个Web请求,CASClient会分析该请求的Http请求中是否包含ServiceTicket,如果没有,则说明当前用户尚未登录,于是将请求重定向到指定好的CASServer登录地址,并传递Service(也就是要访问的目的资源地址),以便登录成功过后转回该地址。
用户在第3步中输入认证信息,如果登录成功,CASServer随机产生一个相当长度、唯一、不可伪造的ServiceTicket,并缓存以待将来验证,之后系统自动重定向到Service所在地址,并为客户端浏览器设置一个TicketGrantedCookie(TGC),CASClient在拿到Service和新产生的Ticket过后,在第5,6步中与CASServer进行身份合适,以确保ServiceTicket的合法性。
在该协议中,所有与CAS的交互均采用SSL协议,确保,ST和TGC的安全性。
协议工作过程中会有2次重定向的过程,但是CASClient与CASServer之间进行Ticket验证的过程对于用户是透明的。
CAS服务端安装
以Tomcat为例。
准备工作
安装JDK1.6。
安装apache-tomcat-6.0.29。
安装mysql-5.0。
数据库配置
创建数据库
createdatabasecas;
createtablet_user
(
idintnotnullauto_increment,
usernamevarchar(50)notnull,
passwordvarchar(50)notnull,
primarykeyPK_position(id)
);
初始化数据
insertintot_user(username,password)values(‘111111’,‘111111’);
配置数据库连接
WebRoot/WEB-INF/cas.properties文件
配置加密方式
WebRoot/WEB-INF/deployerConfigContext.xml文件
HTTPS验证配置
服务器端证书制作
生成serverkey,进入cmd(Win7用系统管理员身份进入),转到C:
\store下输入:
keytool-genkey-aliascasserver-keyalgRSA-keypasschangeit-storepasschangeit-keystoreserver.keystore-validity3600
注:
参数-validity指证书的有效期(天),缺省有效期很短,只有90天。
生成证书时,您的名字与姓氏是什么,必须添域名或casserver机器名,否则SSL将不能取得TGC信息。
(证书至关重要,直接影响CAS是否能正常工作)
生成server.keystore文件成功.
将证书导入的JDK的证书信任库中
第一步是导出证书,命令如下:
keytool-export-trustcacerts-aliascasserver-fileserver.cer-keystoreserver.keystore-storepasschangeit
第二步是导入到证书信任库,命令如下:
keytool-import-trustcacerts-aliascasserver-fileserver.cer-keystoreD:
\ProgramFiles\Java\jdk1.6.0_22\jre\lib\security\cacerts-storepasschangeit
根据不同的JDK版本证书需要导入jdk/jre中。
列出所导入证书
keytool-list-v-keystoreD:
\Java\jre1.6.0_02\lib\security\cacerts
删除存在的证书
Keytool-delete-trustcacerts-aliascasserver
-keystore
D:
\Java\jre1.6.0_02\lib\security\cacerts-storepasschangeit
CASServer部署
应用服务器配置
修改%TOMCAT_HOME%\conf\server.xml,添加如下配置
<
Connectorprotocol="
org.apache.coyote.http11.Http11NioProtocol"
port="
8443"
minSpareThreads="
5"
maxSpareThreads="
75"
enableLookups="
true"
disableUploadTimeout="
acceptCount="
100"
maxThreads="
200"
scheme="
https"
secure="
SSLEnabled="
clientAuth="
false"
sslProtocol="
TLS"
keystoreFile="
C:
/store/server.keystore"
keystorePass="
changeit"
/>
keystoreFile为已经生成的服务器证书的地址
keystorePass为自定义的服务器证书的密码
应用部署
把CAS软件包拷贝到%TOMCAT_HOME%\webapps目录下。
启动Tomcat,检查CAS应用是否正常启动。
在地址栏输入:
https:
//127.0.0.1:
8443/cas/login如浏览器显示:
柜员号、密码依次输入111111,点击‘登录’出现如下界面:
表明CAS服务器安装成功。
CAS客户端安装
添加Jar包
将cas-client-3.2.1\modules\cas-client-core-3.2.1.jar拷贝到项目的lib目录下。
导入服务端生成证书
复制cas服务端生成证书server.cer到客户端,将证书导入JDK中
配置客户web.xml文件
在客户端web.xml文件中加载如下代码
!
--loginout-->
listener>
<
listener-class>
org.jasig.cas.client.session.SingleSignOutHttpSessionListener
/listener-class>
/listener>
filter>
filter-name>
CASSingleSignOutFilter<
/filter-name>
filter-class>
org.jasig.cas.client.session.SingleSignOutFilter
/filter-class>
/filter>
filter-mapping>
url-pattern>
/*<
/url-pattern>
/filter-mapping>
--foruserauth-->
CASFilter<
org.jasig.cas.client.authentication.AuthenticationFilter
init-param>
<
param-name>
casServerLoginUrl<
/param-name>
param-value>
//Henry:
8443/cas/login<
/param-value>
/init-param>
serverName<
localhost:
8180<
--forTicketcheck-->
CASValidationFilter<
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
casServerUrlPrefix<
8443/cas<
CASHttpServletRequestWrapperFilter<
org.jasig.cas.client.util.HttpServletRequestWrapperFilter
CASAssertionThreadLocalFilter<
org.jasig.cas.client.util.AssertionThreadLocalFilter
IE安装证书
由于客户端IE没有安装CAS服务器端证书,首次访问CAS服务器时浏览器会提示安全警告。
下面是IE6及IE7以上(含IE7)两个版本的安装向导:
IE6安装证书向导
首次访问CAS服务器端,会出现安全警告,如图1-1。
1-1
点击‘查看证书’按钮,如图1-2。
1-2
点击‘安装证书’按钮,如图1-3。
1-3
按照证书导入向导,点击‘下一步’,如图1-4。
1-4
选择‘将所有的证书放入下列存储区’,点击‘浏览’,如图1-5。
选择‘受信任的根证书颁发机构’,点击‘确定’,如图1-6。
1-6
点击‘完成’按钮,如图1-7。
1-7
点击‘是’,提示证书导入成功,如图1-8。
1-8
至此,IE安装证书完毕。
另外,我们可以去IE证书库上查看CAS证书是否安装成功。
步骤如下:
点击IE的‘工具’菜单-》Internet选项-》内容,如图1-9。
1-9
点击‘证书’-》受信任的根证书颁发机构,如图1-10。
1-10
如图1-10所示,CAS证书已成功安装。
重启IE,重新请求访问CAS服务器。
不再出现安全警告。
IE7及以上版本安装证书向导
IE7及以上版本安装证书步骤跟IE6类似,如下列图所示:
2-1
2-2
2-3
2-4
2-5
2-6
2-7
2-8
2-9
2-10
CASClient端的获取用户信息
在Java中通过Session获取登录用户信息:
AttributePrincipalprincipal=(AttributePrincipal)getRequest().getUserPrincipal();
在JSTL中获取用户名的方法:
1、方法一
%=request.getRemoteUser()%>
2、方法二?
?
c:
out
value="
${sessionScope[CAS:
'
edu.yale.its.tp.cas.client.filter.user'
]}"
系统登录
登录时要注意不同浏览器的差异,IE6打开时一般情况下是不保持上一个窗口的sessionid,除非客户端页面的sessionid的Cookie进行了时效设置;
而IE8、IE9在上一个浏览器窗口没有退出时,缺省保持上一个session。
反映到统一认证时的表现会有差异。
系统签退
当sessionid的Cookie不进行设置时
注销统一登录:
//casserver:
8443/cas/logout
注销本系统session:
session.invalidate()
在同一浏览器窗口下,或者sessionid相同的多个窗口下:
注销server端session
统一登录
系统一
系统二
系统一:
注销
不注销
仍可使用
不用再认证
已进入,仍可使用
未进入,不需认证
客户端页面的sessionid的Cookie不进行设置时的情况:
1、退出某一系统,如果调用了https:
并系统注销了session,那么本系统下次需要统一认证。
已进入的其他具有相同session浏览器的系统仍可使用。
其它不同session的系统没有影响。
2、退出某一系统,如果调用了https:
8443/cas/logout,
并关闭了所有浏览器,下次登录任何一个系统都需重新认证。
3、退出某一系统,没有调用https:
浏览器没关闭,不需认证。
当sessionid的Cookie进行设置时
客户端页面的sessionid的Cookie进行设置时的情况下,各个系统独立进行认证,各不相同。
不建议使用此种方式:
1、在Cookie有效期内,不用重复认证;
2、在Cookie失效后,需要重新认证;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CAS 安装 使用手册 V12