CAS是成熟的单点登录框架之一,官网地址https://www.apereo.org/projects/cas/。github地址https://github.com/apereo/cas。CAS是Central Authentication Service的缩写,中央认证服务,一种独立开放指令协议。耶鲁大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法。
一:下载
cas推荐下载使用WAR Overlay Installation 方式部署使用,什么是overlay,官网说明https://apereo.github.io/cas/development/installation/WAR-Overlay-Installation.html,overlay是一种整合重复代码或资源的策略,overlays不需要下载CAS源代码,从源代码构建,而是可以下载由项目本身提供的预先构建的 CAS web应用程序,并覆盖或插入新的功能。
overlay下载地址:https://github.com/apereo/cas-overlay-template/tree/5.3
下载完成之后用Intellji Idea打开项目,进行编译,下载依赖时间较长,需耐心等待,建议使用国内的镜像.
<repository>
<id>central</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
构建完成后目录如图:
然后在src 中新建目录如下图
点击java,右键,点击Mark Directory as 选中Sources Root,同理点击resources,右键,点击Mark Directory as选中Resources Root
在项目结构中有一个overlays文件夹,我们将需要的资源拷贝到新建的文件夹内,修改同名文件进行CAS资源覆盖,来修改成我们想要的效果。首先复制图中选中的文件夹和文件,拷贝到步骤2中新建的resources文件夹下。如下图(目前先使用这两个,后期需要其他的在进行复制,不然文件太多。会比较乱
默认是支持https的,我们先不考虑https,修改一下让它支持http,如下,在刚拷贝的HTTPSandIMAPS-10000001.json文件中,如下修改,xservereid 加上http
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^(https|http|imaps)://.*",
"name" : "HTTPS and IMAPS",
"id" : 10000001,
"description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.",
"evaluationOrder" : 10000
}
然后再application.properties加上
server.port=8080
server.ssl.enabled=false
运行方式有两种,一种是使用它提供的脚本,build.cmd run ,另外一种是使用maven 打包,部署到自己的tomcat中,注意jdk要使用1.8以上,tomcat 使用8.5以上
使用maven 编译完成以后会在target目录下生成cas.war
然后运行,等待几分钟,运行成功以后使用浏览器打开,http://localhost:8080/cas 就会打开登陆界面,然后输入
默认用户名密码:casuser:Mellon
再application.properties文件中可以配置
第一篇结束