CAS 5.3. x SSO 단일 로그 인 구축
CAS 버 전
overlay - template 구축 방식
자바 버 전
5.x
Maven
1.8+
6.x
Gradle
1.9+
Tip: 이 문 서 는 5.3.14 버 전 을 사용 합 니 다.
2. 설치 준비
1. 자바 설치
2. Maven 설치
1. 下载Maven,地址:https://maven.apache.org/
2. 解压下载的文件
3. 配置Maven,配置文件在Maven解压目录下:conf/settings.xml
* 指定本地 Jar 存放目录路径,如果不指定,默认在 "[用户家目录]/.m2" 目录下。(非必须):
D:\\maven\\repository
* 配置远程仓库地址,推荐使用阿里的仓库,如果不配置有些包会下载的很慢。(视你的网络情况而定,非必须)
alimaven
central
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public/
* 将 Maven 目录的bin路径添加到 系统环境变量 Path 中,CAS 构建命令会使用到Maven命令,如果没有配置环境变量,会无法执行。(**必须**)
5. 从github下载稳定版分支 cas-overlay-template-5.3,地址:https://github.com/apereo/cas-overlay-template/branches/stale
3. CAS 구축 시작
1. 构建项目比较简单,只需要到下载的 cas-overlay-template 目录执行:
build.cmd clean # 清除生成的内容,第一次会下载一堆包
build.cmd package # 编译打包,第一次会下载一堆包,如果下载慢可以换个 maven 的仓库源
build.cmd run # 直接启动 cas,启动后可以通过 http://localhost:8443/cas 访问,默认用户名密码“casuser/Mellon”,这个可以用于快速验证 cas
2. 如何取消 https,测试时取消 https 比较方便,取消方法:
* 修改 target/cas/WEB-INF/classes/application.properties 文件,增加配置:
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
* 修改 target/cas\WEB-INF\classes\services/HTTPSandIMAPS-10000001.json 文件为:
{
"@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
}
3. 配置 MySQL 数据库认证:
* 修改 overlay-template 的 pom.xml 文件,增加对数据库的支持:
org.apereo.cas
cas-server-support-jdbc
${cas.version}
org.apereo.cas
cas-server-support-jdbc-drivers
${cas.version}
* 配置 appalication.properties 文件,指定数据库信息(追加):
##
# CAS Authentication Credentials
#
# 使用数据库,默认演示用的登陆账号 关闭掉(注释掉)
# cas.authn.accept.users=casuser::Mellon
# 关闭 https
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
# 连接 MySQL 数据库认证
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver
cas.authn.jdbc.query[0].url=jdbc:mysql://127.0.0.1:3306/kmc_cscrm?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8
cas.authn.jdbc.query[0].user=root
cas.authn.jdbc.query[0].password=root
# cas.authn.jdbc.query[0].dialect=org.hibernate.dialect.MySQLDialect
# 查询用户信息SQL
cas.authn.jdbc.query[0].sql=select * from tb_account where name=?
cas.authn.jdbc.query[0].fieldPassword=password
# cas.authn.jdbc.query[0].fieldExpired=expired
# cas.authn.jdbc.query[0].fieldDisabled=disabled
# 密码加密策略,默认不加密,这里使用 MD5 加密
cas.authn.jdbc.query[0].passwordEncoder.type=DEFAULT
cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8
cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=MD5
# cas.authn.jdbc.query[0].passwordEncoder.secret=
# cas.authn.jdbc.query[0].passwordEncoder.strength=32
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
압력 테스트 후 NGINX + CAS 쌍 기 부하 문제 해결네 이 티 브 CAS 는 로드 러 너 500 병발 로 호 조 를 보 였 으 나 NGINX 이후 나타 난 병목 을 통합 했다. 다음은 NGINX 에 대한 설정 입 니 다. 문 제 를 해결 합 니 다....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.