本例使用的cas源码是 7.3.0-SNAPSHOT
环境:jdk 21
源码编译运行
参考:https://apereo.github.io/cas/developer/Build-Process.html
1、克隆项目
命令:git clone --recursive git@github.com:apereo/cas.git cas-server
2、构建源码
命令:./gradlew build --parallel -x test -x javadoc -x check --build-cache --configure-on-demand
3、运行war包
命令:java -jar E:\git-repository\cas-server\webapp\cas-server-webapp-tomcat\build\libs\cas-server-webapp-tomcat-7.3.0-SNAPSHOT.war
____ ____ ___ ____ ___ ___ __ ____ _____
/ T| \ / _]| \ / _] / \ / ] / T/ ___/
Y o || o )/ [_ | D ) / [_ Y Y / / Y o ( \_
| || _/Y _]| / Y _]| O | / / | |\__ T
| _ || | | [_ | \ | [_ | | / \_ | _ |/ \ |
| | || | | T| . Y| Tl ! \ || | |\ |
l__j__jl__j l_____jl__j\_jl_____j \___/ \____jl__j__j \___j
CAS Version: 7.3.0-SNAPSHOT
CAS Branch: master
CAS Build Date/Time: 2025-07-06T03:19:40.854580800Z
Spring Boot Version: 3.5.3
Spring Version: 6.2.8
Java Home: D:\Program Files\Java\jdk-21
Java Vendor: Oracle Corporation
Java Version: 21.0.2
Servlet Version: 6.1.0
JVM Free Memory: 221 MB
JVM Maximum Memory: 7 GB
JVM Total Memory: 336 MB
OS Architecture: amd64
OS Name: Windows 11
OS Version: 10.0
OS Date/Time: 2025-07-06T11:19:40.864551800
OS Timezone: SystemClock[Asia/Shanghai]
OS Temp Directory: C:\Users\H__D\AppData\Local\Temp\
------------------------------------------------------------
Active Profiles: standalone
Apache Tomcat Version: Apache Tomcat/11.0.9
------------------------------------------------------------
4、访问
地址:https://localhost:8443/cas/login 账号/密码:casuser/Mellon
idea运行
1、运行main方法
找到 E:\git-repository\cas-server\webapp\cas-server-webapp-native\src\main\java\org\apereo\cas\nativex\CasNativeWebApplication.java 类 ,运行main方法
2、访问
地址:https://localhost:8443/cas/login 账号/密码:casuser/Mellon
3、相关配置
相关配置可以在 E:\git-repository\cas-server\webapp\cas-server-webapp-resources中的 application.properties 找到
数据库身份验证
参考:https://apereo.github.io/cas/7.2.x/authentication/Database-Authentication.html
1、增加依赖
在 E:\git-repository\cas-server\webapp\cas-server-webapp-native\build.gradle 文件中增加依赖 implementation project(":support:cas-server-support-jdbc")
2、增加jdbc连接信息
# 认证配置
cas:
authn:
jdbc:
query:
- dialect: org.hibernate.dialect.MySQLDialect
driverClass: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.170:3306/cas?allowPublicKeyRetrieval=true&useSSL=false&characterEncoding=UTF-8
user: root
password: 123456
sql: "select * from user where username=?"
fieldPassword: password
fieldExpired: expired_flag
fieldDisabled: disabled_flag
attributeRepository:
jdbc:
- dialect: org.hibernate.dialect.MySQLDialect
driverClass: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.170:3306/cas?allowPublicKeyRetrieval=true&useSSL=false&characterEncoding=UTF-8
user: root
password: 123456
sql: "select * from user where {0}"
username: username
singleRow: true
order: 0
requireAllAttributes: true
attributes:
id: id
username: username
first_name: first_name
last_name: last_name
email: email

浙公网安备 33010602011771号