CAS+SSO配置单点登录完整案例

本文详述了CAS+SAM单点登录系统的部署过程,包括环境搭建、证书配置、CAS服务与Tomcat配置,以及多客户端单点登录的实现与测试。涵盖从JDK、Tomcat到CAS Server与Client的全面配置指南。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

CAS+SSO配置单点登录完整案例

目录

CAS+SSO配置单点登录完整案例

部署环境

环境说明

安全证书配置

1.打开cmd命令窗口(管理员身份打开)

2.生成证书,在cmd窗口输入以下命令:

3.命令输入完成,回车之后,会提示你输入一些资料

4.导出证书:

5.导入证书:   

部署CAS-Server以及配置Tomcat

1.配置HTTPS

2.验证HTTPS配置

3.部署CAS-Server

4.  需要将几个jar文件

5.  修改配置,支持mysql数据库交互验证

【部署CAS-client以及Tomcat的配置】

【测试验证SSO】

1.  基本的测试


看这篇文章之前可以先看一下整篇文章脉络

①:准备部署环境所需得jdk,tomcat,cas-server,cas-client

②:修改hosts文件

③:配置安全证书

④:部署CAS-Server并配置Tomcat

       4.1:配置HTTPS

       4.2:验证HTTPS配置

       4.3:部署CAS-Server

       4.4:把mysql-connector-java-5.0.8.jar和cas-server-support-jdbc-4.0.0.jar放到cas得lib包中

       4.5:修改配置,支持mysql数据库交互验证

⑤:部署CAS_Client并配置Tomcat

       5.1:cas-client-core-3.3.3.jarcommons-logging.jar放到客户端应用得lib包中

       5.2:准备两个tomcat作为客户端服务器

       5.3:配置两个客户端服务器得端口号

       5.4:让客户端应用和CAS服务连接:在两个客户端得web.xml里面加上要添加xml文件

⑥:测试验证SSO

github项目地址

cas 4.0.0地址

部署环境

1.jdk1.8.0_74-windows-x64.exe(最好只装一个版本的jdk,避免出现意外错误)

2.apache-tomcat-8.5.38.zip(非安装版)

3.cas-server-4.0.0-release.zip(cas服务端)

4.cas-client-3.2.0-release.zip(cas客户端)

环境说明

修改hosts文件添加域名,C:\Windows\System32\drivers\etc\hosts 在文件末端添加下面三条信息:

127.0.0.1 sso.server.com(对应部署casserver的tomcat)

127.0.0.1 sso.client1.com(对应部署cas client1的tomcat)

127.0.0.1 sso.client2.com(对应部署cas client2的tomcat)

       【注意】:这个非常重要,因为CAS单点登录系统是基于JAVA安全证书的https协议,要使用CAS单点登录必须要配置域名, cas server是不能通过ip访问的

   上面3个ip都是127.0.0.1,这是为什么呢?因为我的环境都是在同一台机器,所以ip都是一致的。一个域名对应一个应用,模拟多端!

安全证书配置

 

 本教程由于是演示所以用JDK自带的keytool工具生成证书;如果以后在产品环境中使用肯定要去证书提供商购买,证书认证一般都是由 VeriSign认证,中文官方网站:认证证书网址

1.打开cmd命令窗口(管理员身份打开)

2.生成证书,在cmd窗口输入以下命令:

keytool -genkey -alias ssodemo -keyalg RSA -keysize 1024 -keypass 123456 -validity 365 -keystore c:\wsriakey -storepass 123456

【说明】:-alias后面的别名可以自定义;-validity指定证书有效期-keypass指定证书密钥库的密码-keystore指定证书的位置,这里指定放在c盘根目录,密钥库名称可以自定义,这里是wsriakey-storepass和前面-keypass密码相同,否则下面tomcat 配置https 会访问失败。

3.命令输入完成,回车之后,会提示你输入一些资料

【注意】:第一个让你输入的“您的名字与姓氏是什么”,请必须输入在C:\Windows\System32\drivers\etc\hosts文件中加入的服务端的域名。

我这里也就是sso.server.com,为何这么做?

       首先cas只能通过域名来访问不能通过ip访问,同时上方是生成证书,所以要求比较严格,如果不这么做的话,既是最终按照教程配置完成,cas也可以正常访问,访问一个客户端应用也能进入cas验证首页,但是,当输入信息正确后,cas在回调转入你想访问的客户端应用的时候,会出现No subject alternative names present错误异常信息,这个错误也就是在上面输入的第一个问题答案不是域名导致、或者与hosts文件配置的不一致导致。

4.导出证书:

        在cmd窗口继续输入以下命令,导出证书:

keytool -export -alias ssodemo -keystore c:\wsriakey -file c:\wsria.crt -storepass 123456

  【说明】:-alias后面的名称要与生成证书的命令里面的alias的名称一致–keystore指定证书存放的位置,这里我放在C盘根目录,同时证书名称要与”生成证书”对应的命令里的keystore名称一致,这里是wsriakey;-file指定导出证书的路径,我也指定在c盘根目录;-storepass证书密码要与上面输入的密码一致。

我们再看看c盘下面是否生成crt文件:

5.导入证书:   

keytool -import -keystore %JAVA_HOME%\jre\lib\security\cacerts -file c:\wsria.crt -alias ssodemo

【说明】:命令中指定了JAVA_HOME,意思是将证书导入到客户端证书库,也就是jdk证书库中,因为客户端应用运行在本地,需要jdk的支持-file指定证书的位置,也就是上一步导出证书的位置,即c:\wsria.crt

回车之后,会让你输入密钥库口令,注意,这里的密码必须要输入changeit不能输入上面指定的密码123456,切记,否则导入客户端证书会有问题,如果是多台机器演示,需要在每一台客户端导入该证书,步骤都是一样的。当看到提示“是否信任此证书”,输入y回车即可,见下图:(说明,命令中的-alias后面的别名可以自定义,如果出现”证书未导入,别名<***>已经存在”的错误,该意思是说客户端的密钥库中已经存在该别名证书了,重新指定其他别名即可)

   至此,CAS所需的证书环境,已经配置好。

        下面,开始我们的CAS服务、Tomcat、以及多客户端的配置及测试访问。

部署CAS-Server以及配置Tomcat

1.配置HTTPS

 

由于CAS是基于HTTPS协议,所以需要配置服务端的tomcat

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值