CAS单点登录原理与部署配置详解
需积分: 9 184 浏览量
更新于2024-09-13
收藏 510KB DOCX 举报
"CAS(Central Authentication Service)是一种广泛使用的开源单点登录(Single Sign-On, SSO)协议。本文档将详细介绍如何部署CAS服务器以及相关的验证流程。"
在单点登录系统中,CAS扮演着核心角色,它允许用户通过一次认证就可以访问多个应用,而无需反复输入凭证。这里我们探讨的是在不同Web应用中集成CAS客户端的部署规则。
首先,有两个Web应用test1和test2,它们都在同一个域名下运行,分别是www.zhuowei.com的8081和8082端口。同时,有一个专门的CAS服务器(Cas-server)在80端口上运行,用于处理所有认证请求。
**主要组件和流程:**
1. **Ticket Granting Ticket (TGT)**:这是CAS服务器生成的一种授权令牌,代表用户的认证信息。当用户首次访问应用时,如果没有TGT,会被引导至CAS服务器进行登录。
2. **Ticket Granting Cookie (TGC)**:成功登录后,CAS服务器将TGT存储在一个安全的cookie(TGC)中,发送给用户浏览器。这个cookie用于后续的认证过程。
3. **Service Ticket (ST)**:基于TGT,CAS服务器会生成一个ST,这是一个随机加密的字符串,用于特定服务的临时授权。ST在每个服务请求时使用,且只能使用一次。
**认证流程:**
1. 用户尝试访问test1,由于没有TGC,被重定向到CAS服务器的登录页面。
2. 用户输入凭证,服务器验证通过后,生成TGT,用TGT生成ST,并将TGT存储在TGC中,然后将TGC和ST返回给浏览器,同时重定向回test1。
3. test1收到ST后,将其与本地session中的TGT进行对比。若无匹配的TGT,就向CAS服务器发送ST以验证。服务器验证ST有效后,销毁ST,返回认证通过的标识,test1接收后将TGT存入自身session,允许访问。
4. 用户再次访问test1时,TGC携带在请求中,test1验证TGT与session中的匹配,通过后允许访问。
5. 如果用户访问test2,虽然有TGC但无ST,test2同样会向CAS服务器请求ST,服务器验证TGT后,生成新的ST,返回给test2。test2验证后将TGT存入其session,完成认证。
通过这种方式,CAS确保了用户只需一次登录,就能在所有集成的应用之间无缝切换,提高了用户体验并增强了安全性。对于大型企业或组织来说,CAS部署是实现高效、统一的认证管理的关键步骤。
2018-06-05 上传
2019-03-18 上传
2017-06-20 上传
2019-03-15 上传
1163 浏览量
2021-09-19 上传
2017-10-31 上传
102 浏览量
wsbg54
- 粉丝: 2
- 资源: 13
最新资源
- 深入理解23种设计模式
- 制作与调试:声控开关电路详解
- 腾讯2008年软件开发笔试题解析
- WebService开发指南:从入门到精通
- 栈数据结构实现的密码设置算法
- 提升逻辑与英语能力:揭秘IBM笔试核心词汇及题型
- SOPC技术探索:理论与实践
- 计算图中节点介数中心性的函数
- 电子元器件详解:电阻、电容、电感与传感器
- MIT经典:统计自然语言处理基础
- CMD命令大全详解与实用指南
- 数据结构复习重点:逻辑结构与存储结构
- ACM算法必读书籍推荐:权威指南与实战解析
- Ubuntu命令行与终端:从Shell到rxvt-unicode
- 深入理解VC_MFC编程:窗口、类、消息处理与绘图
- AT89S52单片机实现的温湿度智能检测与控制系统