本文主要是介绍【Cas】(一)cas实现SSO简单介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
(一)什么是SSO
Single Sign On,SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。
解决了用户只需要登录一次就可以访问所有相互信任的应用系统,而不用重复登录。
用8个字形容SSO,就是“一处登陆,处处穿梭”。
(二)什么是cas
Central Authentication Service,中央认证服务。是Yale大学发起的一个开源项目,旨在为Web应用系统提供一种可靠的单点登录方法。
从结构上看,CAS包含两个部分:CAS Server 和CAS Client需要独立部署,主要负责对用户的认证工作;CAS
Client负责处理对客户端受保护资源的访问请求,需要登录时,重定向到CAS Server.图1是CAS最基本的协议过程:
CAS Client 与受保护的客户端应用部署在一起,以 Filter 方式保护受保护的资源。对于访问受保护资源的每个 Web 请求,CAS Client 会分析该请求的 Http 请求中是否包含 Service Ticket,如果没有,则说明当前用户尚未登录,于是将请求重定向到指定好的 CAS Server 登录地址,并传递 Service (也就是要访问的目的资源地址),以便登录成功过后转回该地址。用户在第 3 步中输入认证信息,如果登录成功,CAS Server 随机产生一个相当长度、唯一、不可伪造的 Service Ticket,并缓存以待将来验证,之后系统自动重定向到 Service 所在地址,并为客户端浏览器设置一个 Ticket Granted Cookie(TGC),CAS Client 在拿到 Service 和新产生的 Ticket 过后,在第 5,6 步中与 CAS Server 进行身份合适,以确保 Service Ticket 的合法性。
访问服务: SSO 客户端发送请求访问应用系统提供的服务资源。
定向认证: SSO 客户端会重定向用户请求到 SSO 服务器。
用户认证:用户身份认证。
发放票据: SSO 服务器会产生一个随机的 Service Ticket 。
验证票据: SSO 服务器验证票据 Service Ticket 的合法性,验证通过后,允许客户端访问服务。
传输用户信息: SSO 服务器验证票据通过后,传输用户认证结果信息给客户端。
这篇关于【Cas】(一)cas实现SSO简单介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!