SSO统一单独登录框架CAS

SSO单点登录是用户通过统一的认证后,访问其他应用不需要再次登录认证。

JA-SIG(CAS)
CAS(Central Authentication Service 中心认证服务)是使分布的各个异构系统的认证功能集中在一起,通过公共的认证系统统一管理和验证用户的身份,在CAS系统认证后的用户获得一个凭证,使用此凭证可以访问与CAS集成的其他所有系统。

CAS认证流程
在这里插入图片描述
CAS协议提供的接口,CAS-Server提供三个验证服务接口
一、用户登录URL,形如:https://sso.server.com/cas/servlet/login
用户登录时的页面
二、用户凭证校验URL,形如:http://sso.server.com/cas/servlet/validate
验证凭证token的链接
三、用户登出URL,形如:https://sso.server.com/cas/servlet/logout
用户退出时的链接

CAS集成步骤:

资源下载:https://pan.baidu.com/s/18WY3_mZXCE23DkNpn38HqQ

一、配置Window域名解析
在这里插入图片描述
编辑hosts文件,添加

127.0.0.1 sso.server.com
127.0.0.1 sso.client1.com
127.0.0.1 sso.client2.com

一、配置安全证书

用JDK自带的keytool工具生成证书

以管理员身份开启CMD窗口

keytool -genkey -alias ssodemo -keyalg RSA -keysize 1024 -keypass 123456 -validity 365 -keystore d:\test\ssokey -storepass 123456
在这里插入图片描述
使用Keytool导出证书文件
keytool -export -alias ssodemo -keystore d:\test\ssokey -file d:\test\ssokey.crt -storepass 123456

在这里插入图片描述

导入证书d:/test/ssokey.crt到JDK的受信任证书库中

keytool -import -keystore “%JAVA_HOME%”\jre\lib\security\cacerts -file d:\test\ssokey.crt -alias sso

在这里插入图片描述

JDK的证书库密码是changeit

二、配置Tomcat支持HTTPS协议

修改%TOMCAT_HOME%/conf/server.xml


三、部署CAS认证服务器

解压下载的软件,存在一个cas.war文件,将其复制到webapps目录下。启动Tomcat访问https://sso.server.com:8443/cas
在这里插入图片描述
服务器端系统部署完成,缺少对数据库用户认证的支持,后面补充如何配置数据库用户认证。

四、配置客户端

另行解压一个Tomcat,修改其端口为18080,18009,18005。





五、配置CAS认证集成

将解压的二个Jar包,复制到Web应用的WEB-INF/lib目录下
在这里插入图片描述
修改Web.xml,添加CAS过滤器

	org.jasig.cas.client.session.SingleSignOutHttpSessionListenerCAS Single Sign Out Filterorg.jasig.cas.client.session.SingleSignOutFilterCAS Single Sign Out Filter/*CAS Filterorg.jasig.cas.client.authentication.AuthenticationFiltercasServerLoginUrlhttps://sso.server.com:8443/cas/loginserverNamehttp://sso.client1.com:18080CAS Filter/*CAS Validation Filterorg.jasig.cas.client.validation.Cas10TicketValidationFiltercasServerUrlPrefixhttps://sso.server.com:8443/casserverNamehttp://sso.client1.com:18080CAS Validation Filter/*CAS HttpServletRequest Wrapper Filterorg.jasig.cas.client.util.HttpServletRequestWrapperFilterCAS HttpServletRequest Wrapper Filter/*CAS Assertion Thread Local Filterorg.jasig.cas.client.util.AssertionThreadLocalFilterCAS Assertion Thread Local Filter/*

启动Tomcat,测试单点登录
当访问 http://sso.client1.com:18080时自动跳转到CAS认证服务
在这里插入图片描述
输入用户名/密码 casuser/Mellon后自动跳转到http://sso.client1.com:18080
在这里插入图片描述

六、集成数据库用户认证
复制下载的三个Jar包到cas.war部署后的WEB-INF/lib目录下
在这里插入图片描述
修改WEB-INF/deployerConfigContext.xml
在这里插入图片描述

修改:
在这里插入图片描述
在这里插入图片描述



   


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部