本章内容介绍cas项目搭建
我用到的cas版本为5.3.1,代码存放在github,欢迎下载
开发环境
- Jdk1.8
- Maven3.x
- IDEA
1.下载Overlay
通过官方文档(https://apereo.github.io/cas/5.3.x/)介绍,我们可以通过使用一个名叫Overlay的项目来生成一个可以直接用的war包,来部署服务端,先下载这个项目(https://github.com/apereo/cas-overlay-template)
下载之后,通过idea打开此项目,看到以下这个结构:
我们只是需要根据此项目的依赖环境创建我们的项目,所以。此项目仅为参考。
2.创建cas项目,基础搭建
项目结构如下:
我们只需将overlay的pom文件内容稍作修改后,拷到我们的sso_server下的pom中即可
以下是我修改后的pom文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>cas_easyec</artifactId>
<groupId>com.googlecode.ec</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>sso_server</artifactId>
<packaging>war</packaging>
<name>sso-server</name>
<dependencies>
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-webapp-tomcat</artifactId>
<version>${cas.version}</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-bom</artifactId>
<version>${cas.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>com.rimerosolutions.maven.plugins</groupId>
<artifactId>wrapper-maven-plugin</artifactId>
<version>0.0.5</version>
<configuration>
<verifyDownload>true</verifyDownload>
<checksumAlgorithm>MD5</checksumAlgorithm>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${springboot.version}</version>
<configuration>
<mainClass>org.springframework.boot.loader.WarLauncher</mainClass>
<addResources>true</addResources>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<warName>cas</warName>
<failOnMissingWebXml>false</failOnMissingWebXml>
<recompressZippedFiles>false</recompressZippedFiles>
<archive>
<compress>false</compress>
<manifestFile>
${project.build.directory}/war/work/org.apereo.cas/cas-server-webapp-tomcat/META-INF/MANIFEST.MF
</manifestFile>
</archive>
<overlays>
<overlay>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-webapp-tomcat</artifactId>
</overlay>
</overlays>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
</plugin>
</plugins>
<finalName>cas</finalName>
</build>
</project>
<properties>
<cas.version>5.3.1</cas.version>
<springboot.version>1.5.14.RELEASE</springboot.version>
<!-- app.server could be -jetty, -undertow, -tomcat, or blank if you plan to provide appserver -->
<app.server>-tomcat</app.server>
<mainClassName>org.springframework.boot.loader.WarLauncher</mainClassName>
<isExecutable>false</isExecutable>
<manifestFileToUse>
${project.build.directory}/war/work/org.apereo.cas/cas-server-webapp${app.server}/META-INF/MANIFEST.MF
</manifestFileToUse>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
将etc及maven 拷到sso_server下,刷新maven,maven会自动帮你下载cas-server-webapp-tomcat的插件所以overylays的目录不需要你拷贝进来
现在的项目结构如下:
我们下一步要在sso_server下创建src目录,构建我们自己的sso工程,覆盖overlays中的文件
然后将overlays下面的WEB-INF/classes/application.properties拷到src下的资源目录下
修改application.properties文件:
cas默认端口号为8443,改为8080
下一步配置tomcat,端口为8080
启动tomcat,启动成功后跳转以下页面,至此cas 基础搭建成功
使用application.properties中的静态用户登录
cas.authn.accept.users=casuser::Mellon
账号casuser,密码Mellon
跳转登录成功页面
联系方式
如果对文章内容有疑惑或者开发过程中有什么问题可以邮件交流。
邮箱:jefferychen95@icloud.com