CAS框架单点登录,自定义验证登录方式(添加系统标识)
来源:互联网 发布:菩提老祖就是如来知乎 编辑:程序博客网 时间:2024/05/17 21:59
应需求的变化,在登录cas的时候,默认根据用户名和密码进行验证,如果加上用户名,密码和一个系统标识进行验证呢?该如何做呢?
我们知道cas默认的登录界面中,输入的用户名和密码,再配置一下deployerConfigContext.xml 这个文件中的bean org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler 的这个标签,写上对应的sql,以及在<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">中配置数据库驱动,数据库名称,以及登陆密码等。
如果再加上一个其他的验证该怎么做呢?
1 根据xml中bean标签的提示,很容器找到这个类QueryDatabaseAuthenticationHandler.java类,首先先修改login-webflow.xml,修改代码如下所示:
其中<bingding property="systemId" />与界面中传递过来的隐含域一致。
2 casLoginView.jsp中增加的js代码如下所示,从登陆地址的url传递参数。
参登陆页面地址为https://xxx.xxx.com:8443/cas/login?systemId=xxx2.0 ,在第一次登陆界面的时候会携带这两个参数https://xxx.xxx.com:8443/cas/login?service=http%3A%2F%2F172.xx.3.101%3A8080%2Fxxx2.0%2Fuser%2FtoMain%2F 其中的一个为我们的自定义的系统标识,第二个为cas验证数据库成功后转到的主界面。
3 在登录界面中加上了hidden,以此来传递给CAS。
<input type="hidden" name="systemId" id="systemId">
4 修改CAS源代码,UsernamePasswordCredentials.java,代码如下所示。
除了cas自己的用户名和密码,添加自己的systemId标识。
5 修改QueryDatabaseAuthenticationHandler.java类 , 代码如下所示。
在这过程中学习:
部署的项目如何调试:当我无法在自己的本地上附上cas源代码,进行断点调试,就只能根据CAS的日志文件来看到底是哪里出的错误,cas的日志文件一大堆,到底是哪个我需要的日志文件,删了刷新看到底哪个文件变化,这都是我需要学习的。
面对你认为的庞然大物时:第一次接触CAS陌生,根着文档一步一步的做,中间出现一些错误,再不断的改正错误,从CAS一些基本的样式和功能不符合需求的时候,就需要改动CAS源代码了,总是把他捧的高高在上,总是感觉自己触不可及这都是错误的心态;其实当你打开他的源代码,静下心来研究,也会感觉没有什么,和自己的项目又有什么不同呢?换做是自己要开发一个CAS的项目,是怎样的一个思路?
对CAS的认识:第一次能弄出登录界面,十分兴奋,到后来不断的发现CAS的缺点,不断的需要改动CAS源代码,不断的要替换他的文件,只能说CAS虽然是开源的,有很多我们学习的地方,但我认为对于最好不使用CAS还是不要使用,他的可配置性,灵活性,可扩展性能不是十分的友好,还是慎重选择吧。
原文网址:http://blog.csdn.net/lovesummerforever/article/details/38023385
但是存在一个问题:
用户成功功能A系统后,即使B系统不准许登陆,但是还是直接登陆。需要按照CasServer添加子系统登陆权限验证进行补充。
- CAS框架单点登录,自定义验证登录方式(添加系统标识)
- (四)SSO之CAS框架单点登录,自定义验证登录方式
- cas 单点登录框架
- 单点登录框架Cas
- cas单点登录系统
- cas单点登录系统
- Jeesite单点登录集成Cas另加自定义登录验证
- Jeesite单点登录集成Cas另加自定义登录验证
- CAS单点登录(三)--服务端改造(登录页及登录方式的自定义)
- 基于CAS实现单点登录(SSO):自定义登录验证方法
- 基于CAS实现单点登录(SSO):自定义登录验证方法
- 单点登录CAS使用记(三):实现自定义验证用户登录
- CAS自定义登录验证
- 多系统单点登录(CAS整合)
- Cas单点登录系统自定义Credentials/拓展UsernamePasswordCredentials
- 基于CAS搭建JavaEE单点登录框架(服务端)(取消https证书验证)
- 基于CAS搭建JavaEE单点登录框架(客户端)(取消https证书验证)
- (系统框架之单点登录)使用 CAS 在 Tomcat 中实现单点登录
- SSH框架搭建
- TableView cell section TextField ALert
- PHP的高效率写法
- node.js 学习<一>
- hdu 2682
- CAS框架单点登录,自定义验证登录方式(添加系统标识)
- 使用宏的代码
- 1957-挂盐水的故事
- ANSYS 错误收集
- 数据库相关整理
- linux下的文件权限以及用户权限
- 51nod 1596搬货物 解题报告
- Android在代码中开启OpenGL 4xMSAA 抗锯齿
- ThinkPHP5 表单请求和验证