cas5.3服務端環境搭建

cas服務端的構建

  1. 依賴環境
    jdk1.8
    maven
# 查看java版本號
java -version
# a查看maven版本號
mvn -v
  1. 下載cas源碼

https://github.com/apereo/cas-overlay-template/tree/5.3

3. 解壓、編譯、打包

mvn clean package -DskipTests

耗時可能會很久

打吧完成後,在target目錄下生成war

  1. 將cas.war放在tomcat的webapps目錄下,啓動tomcat

在這裏插入圖片描述

  1. 瀏覽器訪問

http://server:8080/cas/login,默認用戶名和密碼爲casuser+Mellon,server是我的機器名稱

關閉https

  1. cas\WEB-INF\classes\application.properties,新增配置
cas.tgc.secure=false
cas.serviceRegistry.initFromJson=true
  1. cas\WEB-INF\classes\services\HTTPSandIMAPS-10000001.json,修改
"serviceId" : "^(https|http|imaps)://.*"

修改密碼
cas\WEB-INF\classes\application.properties,修改

cas.authn.accept.users=admin::admin

cas + mysql

  1. 創建mysql表並添加一條數據
DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(50) DEFAULT '' COMMENT '用戶名',
  `password` varchar(256) DEFAULT NULL COMMENT '登錄密碼',
  `name` varchar(256) DEFAULT NULL COMMENT '用戶真實姓名',
  `id_card_num` varchar(256) DEFAULT NULL COMMENT '用戶身份證號',
  `state` char(1) DEFAULT '0' COMMENT '用戶狀態:0:正常狀態,1:用戶被鎖定',
  PRIMARY KEY (`uid`),
  UNIQUE KEY `username` (`username`) USING BTREE,
  UNIQUE KEY `id_card_num` (`id_card_num`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

insert into user_info(`username`, `password`) values('admin', '123456')
  1. pom.xml添加依賴並重新打包

<dependency>
	<groupId>org.apereo.cas</groupId>
	<artifactId>cas-server-support-jdbc</artifactId>
	<version>${cas.version}</version>
</dependency>
<dependency>
	<groupId>org.apereo.cas</groupId>
	<artifactId>cas-server-support-jdbc-drivers</artifactId>
	<version>${cas.version}</version>
</dependency>
<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<version>5.1.36</version>
</dependency>
  1. cas\WEB-INF\classes\application.properties,註釋默認靜態賬戶
# cas.authn.accept.users=casuser::Mellon
  1. cas\WEB-INF\classes\application.properties,新增
#添加jdbc認證
cas.authn.jdbc.query[0].sql=select * from user_info where username = ?
#那一個字段作爲密碼字段
cas.authn.jdbc.query[0].fieldPassword=password
#配置數據庫連接
cas.authn.jdbc.query[0].url=jdbc:mysql://server:3306/cas?characterEncoding=utf8&useSSL=true
cas.authn.jdbc.query[0].dialect=org.hibernate.dialect.MySQLDialect
#數據庫用戶名
cas.authn.jdbc.query[0].user=root
#數據庫密碼
cas.authn.jdbc.query[0].password=123456
#mysql驅動
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver
  1. 使用admin + 123456登錄

Md5加密

cas\WEB-INF\classes\application.properties,新增

#配置加密策略
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

密碼修改爲:md5(123456) = e10adc3949ba59abbe56e057f20f883e,再次登錄。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章