cas服务器源码,单点登录CAS系列第01节之服务端搭建及源码导入IDE

简介

谈到单点登录(SSO:Single Sign On),最出名的框架,莫过于CAS(Central Authentication Service)

服务端:本系列文章全部基于目前最新的CAS-4.0.3

客户端:目前CAS的Java客户端官方最新版本是3.4.0,出于安全考虑应立即升级到该版本(它是在2015-07-21发布的)

注意:自从3.1.11开始,maven2的groupId已经变为org.jasig.cas.clien,如下所示

org.jasig.cas.client

cas-client-core

3.4.0

部署Tomcat

这里使用的环境为:jdk-7u80-windows-x64、apache-tomcat-8.0.21、cas-client-core-3.4.0、cas-server-webapp-4.0.3

首先,我们去下载CAS源码,手工构建cas.war,操作步骤如下

2、执行命令:C:\Users\Jadyer\Desktop\cas-4.0.3>mvn install -DskipTests

在构建最后,会报告下面的错误

Could not transfer artifact net.jradius:jradius-core:pom:1.0.0 from/to coova (http://coova-dev.s3.amazonaws.com/mvn): Software caused connection abort: recv failed

不过没关系,此时我们想要的war已经生成了,它就是\cas-4.0.3\cas-server-webapp\target\cas.war

接下来,将cas.war部署到Tomcat,启动后访问http://127.0.0.1:8080/cas/

关于登录密码,CAS-4.0之前的默认验证规则是:只要用户名和密码相同就认证通过

4.0之后有所改变:其默认用户名密码为casuser/Mellon,它配置在\WEB-INF\deployerConfigContext.xml

933faf17c731a19c46b178f687cf75b8.png

ba4c78a732067568389c3e9d0c607d3d.png

导入MyEclipse

1、MyEclipse中新建一个WebProject,名字随意,比方说cas(新建时JavaEE版本选5.0就行)

2、解压之前得到的cas.war,将其内容拷贝到新建的WebProject中即可(classes目录中的properties文件和log4j.xml拷到src即可)

验证一下:把这个WebProject发布到Tomcat,看到的应该是一样的效果

0c4731526c4abfd917db4997dec43a19.png

注意:导入时,这两个jar也是CAS的:person-directory-api-1.5.1.jar、person-directory-impl-1.5.1.jar

另外:cas.war中的\WEB-INF\classes\里面并没有class文件,实际上它是在\WEB-INF\lib\cas-server-*.jar四个jar里面的

如果也想导入它们的源码,可通过以下方式找到(如果你需要的话)

cas-server-security-filter-2.0.3.jar

cas-server-core-4.0.3.jar、cas-server-support-generic-4.0.3.jar、cas-server-webapp-support-4.0.3.jar

这三个jar的源码就在cas-4.0.3.zip里面,直接拷过来就行了

启用HTTP协议支持

我们都知道,Tomcat默认是没有开启HTTPS协议的

Non-secure Connection

You are currently accessing CAS over a non-secure connection. Single Sign On WILL NOT WORK. In order to have single sign on work, you MUST log in over HTTPS.

这段提示是硬编码在\WEB-INF\view\jsp\default\ui\casLoginView.jsp中的

我们可以注释掉它,也可以让CAS支持HTTP协议,即令其不开启HTTPS验证,这时需要修改三个文件

1、\WEB-INF\deployerConfigContext.xml

添加p:requireSecure="false"

2、\WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator.xml

p:cookieSecure="true"改为p:cookieSecure="false"

3、\WEB-INF\spring-configuration\warnCookieGenerator.xml

p:cookieSecure="true"改为p:cookieSecure="false"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值