`

CAS单点登录学习笔记三之HTTPS 单向认证方式 服务端和客户端配置

    博客分类:
  • CAS
sso 
阅读更多
CAS单点登录

概述

(1)CAS简介
(2)CAS官网

环境配置

  • 在同一个机器上配置三个虚拟机
  • windows7_32位
  • JDK 1.6.0_18
  • Tomcat 6.0.29
  • CAS-server-3.4.11
  • CAS-client-3.2.1


配置host

根据演示需求,用修改hosts 文件的方法添加域名
在文件 C:\Windows\System32\drivers\etc\hosts 文件中添加三条
127.0.0.1    demo.tch.com ##服务器,即名字与姓氏
127.0.0.1    app1.tch.com ##客户端,即本地服务工程名称
127.0.0.1    app2.tch.com ##客户端,即本地服务工程名称


说明:
(1)demo.tch.com:对应部署cas server的tomcat,这个虚拟域名还用于证书生成
(2)app1.tch.com:对应部署app1的tomcat
(3)app2.tch.com:对应部署app2的tomcat

配置JDK

JDK配置

安全证书配置

java keytool证书工具使用小结

(0)建立文件夹:D:\study\sso\tomcat-cas(将tomcat解压后改名)





(1)生成服务端密钥文件并生成证书

a.win+r ,打开 Tomcat的安装路径,复制并粘贴如下命令到控制台中,回车执行
keytool -genkey -alias casserver -keyalg RSA -keysize 1024 -keypass 123456 -keystore ssodemo.keystore -storepass 123456 -validity 365

实现:


说明:

  • -keypass 123456 和 -storepass 123456 两个密码要一致,否则下面tomcat 配置https 访问失败
  • -keystore ssodemo.keystore 生成证书的名称
  • 名字与姓氏:与要访问的域名保持一致,通过在HOST中配置该域名,可通过域名直接访问服务器
  • 最后一步,输入y(YES)


命令执行后,查看文件夹,多出了一个证书文件



问题解释:
再次配置时会出现 casserver 已存在的提示,解决方式删除配置过的证书

范式:keytool -delete -alias 指定需删除的别 -keystore 指定keystore – storepass 密码

执行命令:keytool -delete -alias casserver -keystore ssodemo.keystore -storepass 123456

(2)导出证书:
复制并执行如下命令:
keytool -export -alias casserver -storepass 123456 -file ssodemo.cer -keystore ssodemo.keystore


控制台:


文件夹:



注意:
  • -storepass 123456 为上面生成证书时设置的密码
  • -file ssodemo.cer 导出的证书名称
  • 保存文件路径中不能包含空格,否则命令不识别
  • 命令输入时,单词之间以空格间隔,否则命令不识别


(3)客户端导入证书

keytool -import -trustcacerts -alias casserver -storepass 123456  -file ssodemo.cer -keystore cacerts


控制台



文件夹:




以上tools工具的使用:
客户端服务器端配置

问题解释:若提示密码不正确,将密码改为changeit 再试

问题参考:keytool工具java.io.IOException: Keystore was tampered with, or password was incorrect 异常的解决办法

CAS Server端配置

(1)配置HTTPS

打开 Tomcat 安装目录 conf\server.xml
找到并修改如下代码
在制作完成密钥文件、证书文件、密钥库文件后即可进行服务端Tomcat的配置。打开$CATALINA_HOME/conf/server.xml文件,注释掉如下代码段:



<Connector port="80"protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>



并取消注释<Connectorport="8443" protocol="HTTP/1.1" SSLEnabled="true"…/>代码段

    <!--
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
  keystoreFile="D:/study/sso/tomcat-cas/ssodemo.keystore"  
  keystorePass="123456"  
  URIEncoding="UTF-8"  		   
			   
               clientAuth="false" sslProtocol="TLS" />
    -->


此处参考:CAS单点登录学习笔记四之HTTPS 单向认证方式 服务端和客户端配置

说明:
  • keystoreFile 是创建证书的路径
  • keystorePass 是创建证书的密码
  • port一般为8443或443,最常用的是443端口(https默认端口),这样https方式访问的时候可以不加端口号(如:https://sso.demo.com/cas/login);keystoreFile为tomcat目录下的密钥文件;keystorePass为私钥密码;truststoreFile为生成的信任文件,如果此处不指定则默认为$JAVA_HOME/jre/lib/security/cacerts文件;其它属性默认即可


注意:若设置为8443端口,要在域名后面添加上端口号
https://demo.tch.com:8443/cas/login

要配置truststoreFile为tomcat下的cacerts文件
另外浏览器使用谷歌浏览,否则登陆https://sso.demo.com/cas/login时无响应
提示是否访问,点击是



生成客户端密钥库文件
    单向认证的客户端配置只需生成客户端信任文件caserts即可。首先将服务端生成的证书文件(之前生成的casserver.cer文件)复制到$JAVA_HOME/jre/lib/security下,然后打开CMD窗口切换到$JAVA_HOME/jre/lib/security下并执行命令:

keytool -import -trustcacerts -alias casclient -storepass changeit -file ssodemo.cer -keystore cacerts


需要制定ssodemo.cer的具体路径 注意使用/而非\

控制台:



文件夹:


说明:
(1)JDK JRE security  storepass 默认密码 changeit
(2)ssodemo.cer 文件为之前配置的文件,若执行命令时出现找不到文件的错误,仔细检查文件存放路径

配置HOST后

访问:
http://localhost:8081/cas/login
或通过域名访问
http://demo.tch.com:8081/cas/login




博文参考:
CAS单点登录学习笔记四之HTTPS 单向认证方式 服务端和客户端配置
基于CAS实现单点登录(SSO):实例讲解
  • 大小: 20.2 KB
  • 大小: 46.5 KB
  • 大小: 51.5 KB
  • 大小: 11.6 KB
  • 大小: 58.1 KB
  • 大小: 39.4 KB
  • 大小: 60.4 KB
  • 大小: 51.1 KB
  • 大小: 46.2 KB
  • 大小: 45.9 KB
  • 大小: 66 KB
分享到:
评论

相关推荐

    CAS单点登录例子,包含服务端和客户端

    综上所述,这个压缩包提供了一个完整的CAS单点登录实例,包括服务端和客户端的实现,可以帮助开发者理解并部署自己的CAS系统。通过深入研究和实践,你可以掌握如何利用CAS实现Web应用的安全、便捷的单点登录功能。

    CAS单点登录(SSO)服务端自定义认证+CAS客户端配置+CAS完整使用文档+CAS4.2.7 cas-serv服务端源码 cas-client客户端源码

    CAS(Central Authentication Service)是Java开发的一个开源的单点登录...通过学习和实践,你可以掌握CAS的核心概念,实现自定义认证策略,以及优化客户端集成,从而为你的项目构建一个强大而安全的单点登录系统。

    cas单点登录服务端+客户端demo

    CAS(Central Authentication Service)是Java开发的一个开源的单点登录(Single Sign-On,简称SSO)框架,主要用于解决用户在多个应用系统间切换时需要多次认证的问题。它提供了一个集中式的登录入口,用户只需在一...

    cas实现单点登录服务端及客户端

    CAS(Central Authentication Service)是一种广泛使用的开放源代码的单点登录(Single Sign-On,SSO)框架,由耶鲁大学开发并维护。SSO允许用户通过一次登录验证就能访问多个应用系统,无需在每个系统之间单独进行...

    CAS服务端和客户端war包.rar

    总的来说,这个压缩包提供了完整的CAS SSO解决方案,包括服务器端和两个示例客户端应用,方便开发者或管理员快速搭建和测试单点登录环境。理解CAS的工作原理和配置方法对于构建安全、便捷的身份验证系统至关重要。

    cas单点登录代码例子 有文档 服务端客户端例子 亲测可用

    CAS(Central Authentication Service)是Java开发的一个开源单点登录(Single Sign-On,SSO)框架,主要用于实现用户在多个应用系统中的统一身份验证。在这个压缩包中,包含了一个CAS服务端和客户端的代码实例,...

    cas单点登录服务端

    CAS(Central Authentication ...总的来说,CAS单点登录服务端的部署涉及了Web应用的部署、应用服务器的管理、服务定义配置、用户认证集成以及安全性考量等多个方面,是构建安全、便捷的多应用系统环境的关键组件。

    sso/cas单点登录Java maven版 含服务端客服端

    4. 验证成功后,客户端会创建一个本地会话,存储用户的认证信息,从而实现单点登录的效果。 5. 客户端也需要配置CAS服务器的URL和其他相关信息,以便与服务端进行通信。 在实际部署中,需要注意以下几点: 1. 安全...

    cas 普通方式和SpringBoot方式客户端 普通方式服务端

    在本文中,我们将探讨如何在普通方式和Spring Boot方式下配置和使用CAS客户端和服务端。 首先,让我们了解一下`CMD生成证书命令.txt`。在CAS部署中,安全通信通常依赖于SSL/TLS证书,用于加密传输数据。这个文件...

    CAS4.1.4服务端和客户端实例

    CAS(Central Authentication Service)是...通过这个实例,你可以深入了解SSO的工作原理,学习如何配置和部署CAS服务,以及如何在自己的应用中实现CAS客户端,这对于提升企业级应用的安全性和用户体验有着重要的作用。

    cas服务端和客户端可用代码

    CAS(Central Authentication Service)是一种基于Web的单一登录(Single Sign-On, SSO)协议,它允许用户通过一个统一的身份验证入口点登录,然后在多个应用系统间自由切换,而无需再次进行身份验证。这个给定的...

    SSO之CAS单点登录客户端服务端jar包

    在"SSO之CAS单点登录客户端服务端jar包"中,包含的是实现CAS单点登录功能所需的客户端和服务端组件。这些jar包包含了以下关键知识点: 1. **CAS服务器**:这是整个SSO架构的核心,负责处理用户的登录请求,验证凭证...

    单点登录服务端项目cas-server

    单点登录服务端项目cas-server单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-...

    cas4.2.7服务端和客户端应用

    **CAS (Central Authentication Service) 知识点详解** CAS 是一个开源的身份验证框架,它允许用户通过单一登录(Single Sign-On, SSO)在多个应用系统间自由切换,无需重复登录。CAS4.2.7 版本是 CAS 的一个稳定...

    springmvc+spring+shiro+cas单点登录实例

    springmvc+spring+shiro+cas单点登录实例 加入了登录验证码认证,修改了下首页样式,不过样式没有弄好,很丑的,有空自己再弄下 说明:cas-server是单点登录服务端,用的是maven项目,但是WEB-INF里面的lib目录下面...

    CAS单点登录配置大全

    **CAS单点登录配置大全** CAS(Central Authentication Service,中央认证服务)是一种广泛使用的开源单点登录(Single Sign-On,SSO)协议。它允许用户通过一个统一的认证系统访问多个应用系统,而无需在每个系统...

    落雨博客基于CAS框架的单点登录技术讲解(ppt+code实例+doc)配套资料

    [置顶] SSO单点登录系列2:cas客户端和cas服务端交互原理动画图解,cas协议终极分析 http://blog.csdn.net/ae6623/article/details/8848107 目 录 1 引言 4 1.1 摘要 4 1.2 范围 4 1.3 读者对象 4 1.4 关键词 4 2 ...

    cas 单点登录 解决方案.

    cas 单点登录解决方案可以通过多种方式来实现,例如使用 cas 服务器、LDAP 服务器、Active Directory 等。 cas 服务器可以作为身份验证服务器,LDAP 服务器可以作为用户信息存储服务器,Active Directory 可以作为...

    cas sso单点登录已搭建好的源码-内含客户端和服务端

    本资源包含已搭建好的CAS SSO服务端和客户端的源码,方便开发者进行二次开发或学习研究。 在SSO系统中,CAS服务器作为中心认证服务,处理用户的登录请求,验证凭证并返回一个服务票(Service Ticket)。客户端应用...

    java-cas单点登录服务端

    CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,研究如何采用 CAS 实现轻量级单点登录解决方案。 CAS 是 Yale 大学发起的...

Global site tag (gtag.js) - Google Analytics