cas

概念html

角色:java

c35b0232-ea55-47f2-8937-ad56b67f7251

原则:git

a196e109-d1f9-4e2f-a21f-9452d1924da9

原理github

两个部分组成:web

b15f491c-22b6-445f-9bcc-4fe6586d0f2b

协议流程:数据库

62de2ab6-f38d-4be2-9d7f-dda5960a11d2

最重要的部分为ticke安全

两种实现方式:服务器

(1)cookie

(2)基于代理的实现:session

bb7ff744-ae6a-42c4-addb-53115c713f6f

重点1:着重须要考虑的安全性问题:

重点2:怎样在cas server中设置和数据库链接

本身的理解:

cas v2的实现方式:cas流程中最重要是依靠ticket和session&cookie来实现的,第一阶段,brower访问集成了cas client的app1,跳转到cas server,认证完毕后,生成一张ticket,并把这张ticket id发给brower,并跳转至app1;第二阶段,brower把ticket id发给app1,app1把ticket id发给cas server进行确认,确认ok就能够登陆,并创建局部的session通讯;第三阶段,登陆以后,如同普通brower和app进行校订登陆;

cas v3的实现方式,就是经过proxy来访问其余app,就是在app1中直接登陆app2;

归根结底是通讯双方有一个能肯定身份的“信物”。

代码实现流程

一、下载cas:https://github.com/apereo/cas

git下载有点慢,选择下载release版本会快点,版本号为4.1.0

二、导入idea

经过import maven方式导入会出错,选择open方式打开,忽略错误

三、部署cas-server-webapp,能够看到服务器端登陆页面,这一步是部署cas server的步骤;

四、子系统中集成cas-client,须要导入相关jar包,其中主要是配置web.xml

五、部署成功标志:登陆cas client应用,可以自动跳转到client server登陆,认证完毕后跳转回cas client原页面;

Demo

36010241

36010350

配置说明

问题总结

一、未认证受权的服务 CAS的服务记录是空的,没有定义服务。 但愿经过CAS进行认证的应用程序必须在服务记录中明肯定义。

"serviceId" : "^http.*",
https://blog.csdn.net/leftfist/article/details/79426328

二、cas client web.xml中主要配置

23939211

参考

https://www.ibm.com/developerworks/cn/opensource/os-cn-cas/index.html

http://www.blogjava.net/security/archive/2006/10/02/sso_in_action.html

这是一个系列,配置过程讲的不错https://www.imooc.com/article/15417#

https://apereo.github.io/cas/4.2.x/protocol/CAS-Protocol.html

cas系列文章都不错,配置和原理都讲的很明白:http://www.cnblogs.com/richaaaard/p/5047112.html

相关文章
相关标签/搜索