开发者社区> bitree1> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

cas单点登录1-源码导入eclipse

简介: 谈到单点登录(SSO:Single Sign On),最出名的框架,莫过于CAS(Central Authentication Service) 官方网站:https://www.
+关注继续查看

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

官方网站:https://www.apereo.org/projects/cas

源码地址:https://github.com/Jasig/cashttps://github.com/Jasig/java-cas-client

帮助文档:https://wiki.jasig.org/display/CASC/CAS+Client+for+Java+3.1

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

客户端:目前CAS的Java客户端官方最新版本是3.4.1

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

<dependency>
    <groupId>org.jasig.cas.client</groupId>
    <artifactId>cas-client-core</artifactId>
    <version>3.4.1</version>
</dependency>

 

部署Tomcat

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

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

1、https://github.com/Jasig/cas/releases中下载4.2.7版得到cas-4.2.7zip,并解压到桌面

2、执行命令:C:\Users\Jadyer\Desktop\cas-4.2.7>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.2.7\cas-server-webapp\target\cas.war

除了上面手工构建的方式,还可以直接下载现成的war包,地址如下(下面两个地址都可以)
http://central.maven.org/maven2/org/jasig/cas/cas-server-webapp/4.2.7
http://mvnrepository.com/artifact/org.jasig.cas/cas-server-webapp/4.2.7
下载到的文件为cas-server-webapp-4.2.7.war,它的内容与上面手工构建得到的cas.war是相同的

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

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

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

导入Eclipse

一 、简单实用导入方法:

1.Eclipse中新建一个WebProject,比方说cas(新建时JavaEE版本选5.0就行)

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

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

注意:导入时,这两个jar也是CAS的:person-directory-api-1.5.1.jarperson-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

   源码地址为https://github.com/Jasig/cas-server-security-filter(实际上只有一个java文件)

   这里也可以查到源码http://mvnrepository.com/artifact/org.jasig.cas/cas-server-security-filter/2.0.3

  • 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里面,直接拷过来就行了

二、源码全部导入方法:

下载好源码包后并且在eclipse里面安装好gradle插件后,以gradle的形式导入,安装方法不做介绍,导入过程及结果如下:

 

如果需要导入源码文件,下载或者导入慢时, 请查看一下链接来解决问题   http://blog.csdn.net/bitree1/article/details/54950192http://blog.csdn.net/bitree1/article/details/54950192

启用HTTP协议支持

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

这个时候访问http://127.0.0.1:8080/cas/会在页面看到下面的提示

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
<bean class="org.jasig...support.HttpBasedServiceCredentialsAuthenticationHandler">添加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"

将不定期更新资源,欢迎持续关注

想获得更多的学习知识请关注微信公众号:西北码农或扫下方二维码

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
解决eclipse为什么不能查看源码
  Java eclipse中查看源代码ctrl+左键单击 一、你是第一次使用该功能,没有导入项目源码,故无法查看源码     解决方法: ​1.点 “window“-> “Preferences”-> “Java” -> “Installed JRES”;           2.
1715 0
eclipse下载支持compiler compliance level 1.8的插件
eclipse下载支持compiler compliance level 1.8的插件
0 0
Eclipse中 Spring Tool 插件 Spring IDE-STS
Eclipse中 Spring Tool 插件 Spring IDE-STS
0 0
Eclipse 插件用法:Eclipse 利用 Amateras UML 生成 Java 类图、时序图和 UML 类图
Eclipse 插件用法:Eclipse 利用 Amateras UML 生成 Java 类图、时序图和 UML 类图
0 0
STS3|Eclipse离线(利用Jar包)安装SparkBuilderGenerator插件
STS3|Eclipse离线(利用Jar包)安装SparkBuilderGenerator插件
0 0
Eclipse 里一个 SAP Hybris Commerce 的开发插件
Eclipse 里一个 SAP Hybris Commerce 的开发插件
0 0
使用 Eclipse 可视化插件 windowbuilder 进行Java GUI开发(插件安装的两种方法)
使用 Eclipse 可视化插件 windowbuilder 进行Java GUI开发(插件安装的两种方法)
0 0
eclipse安装完对应的sts插件后按alt+/却不能提示属性值
eclipse安装完对应的sts插件后按alt+/却不能提示属性值
0 0
eclipse的配置、快捷键、项目导入导出、常见的插件或代码生成器工具
eclipse的配置、快捷键、项目导入导出、常见的插件或代码生成器工具
0 0
利用Eclipse自带的插件连接GIT的详解
利用Eclipse自带的插件连接GIT的详解
0 0
+关注
bitree1
沉迷于JAVA软件开发不可自拔
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载