您的位置:首页 > 编程语言 > Java开发

[精华][推荐]CAS SSO 实现单点登录框架学习源码

2018-03-02 10:40 447 查看
1.了解单点登录 
SSO 主要特点是: SSO 应用之间使用 Web 协议(如 HTTPS) ,并且只有一个登录入口.
SSO 的体系中有下面三种角色:
1) User(多个)
2) Web 应用(多个)
3) SSO 认证中心(一个) 
 
2.SSO 实现包含以下三个原则
1) 所有的登录都在 SSO 认证中心进行。  
2) SSO 认证中心通过一些方法来告诉 Web 应用当前访问用户究竟是不是通过认证的用户.  
3) SSO 认证中心和所有的 Web 应用建立一种信任关系.  
 
3.了解单点登录体系结构
1) CAS Server 负责完成对用户信息的认证,需要单独部署,CAS Server 会处理用户名/密码 等凭证(Credentials).      
2)  CAS Client 部署在客户端,当有对本地 Web 应用受保护资源的访问请求,并且需要对请 求方进行身份认证,重定向到 CAS Server 进行认证. 
 
4.CAS  SSO单点登录可以不依赖于cookie跨域的解决方案
不依赖于cookie跨域是比较有优势的,假如我们在京东商城上登录一次,在京东商城上其实还有很多的站点,点击其他站点以后是直接可以使用而无需重新登录,我们可以很清楚的看到,里面的域名都是不一样的,如果用传统的方案可能会出现cookie跨域的问题,解决起来比较麻烦。
 
5.CAS SSO单点登录官网: https://www.apereo.org/projects/cas  
6.CAS 源代码下载地址



 
进入源码下载地址,当前的git库是正在维护的CAS,也是最新的CAS



 
 CAS最新版本可能存在不稳定的情况,所以这种下载方式我们也不建议使用,可以点击releases查看不同的版本,下载使用比较稳定的版本。



 



 

7.通过下载稳定版本的方式下载cas的相关源码包,如下:



 
直接选择4.2.1的稳定代码即可
 
8.我们项目中的版本版本使用maven apereo远程库去下载
 
通过远程maven库下载cas-server-webapp的war包,步骤如下:
 
(一)访问Maven地址: http://mvnrepository.com/,并搜索cas-server-webapp


 
(二)点击cas-server-webapp链接地址,下载最新的版本



 



 
9.下载cas-client-core的jar包,如下:



 
10.CAS document文档,cas使用spring mvc开发,支持的协议,支持的开发语言等




 



 

CAS的架构图:



 



 
Cas的安装要求(我们项目实例使用server版本4.2.7,clent版本是3.3):



 



这是通过sso cas做的详细教程,里面有很多的文档和源码,源码可以直接运行查看效果。



资料和源码来源
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息