1.創建數據庫cas
新增一張用戶表sys_user 說明:
- expired字段表示過期,1表示已過期,需要修改密碼
- disabled表示賬號是否禁用,1表示禁用
sys_user表數據
id username password expired disabled ----------------------------------------------------------------------------------------------------------------------------------------------- 1 admin 21232f297a57a5a743894a0e4a801fc3 0 1 2 wolfcode 71120db8bf616bcf5b913557587435ad 1 0 3 lanxw fae0b27c451c728867a567e8c1bb4e53 0 0
說明:
- 如果採用MD5加密,那password就是MD5加密後的密文,sha同樣如此
- admin、wolfcode、lanxw明文密碼分別是admin、wolfcode、666
2.在POM文件中添加如下依賴:
<!--新增支持jdbc驗證-->
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-jdbc</artifactId>
<version>${cas.version}</version>
</dependency>
<!--使用mysql驅動-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
3.在application.properties新增如下配置
#jdbc驗證配置
#Query Database Authentication 數據庫查詢校驗用戶名開始
#查詢賬號密碼sql,必須包含密碼字段
cas.authn.jdbc.query[0].sql=select * from sys_user where username=?
#指定上面的sql查詢字段名(必須)
cas.authn.jdbc.query[0].fieldPassword=password
#指定過期字段,1爲過期,若過期需要修改密碼
cas.authn.jdbc.query[0].fieldExpired=expired
#爲不可用字段段,1爲不可用,
cas.authn.jdbc.query[0].fieldDisabled=disabled
#數據庫方言hibernate的知識
cas.authn.jdbc.query[0].dialect=org.hibernate.dialect.MySQLDialect
#數據庫驅動
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver
#數據庫連接
cas.authn.jdbc.query[0].url=jdbc:mysql://localhost:3306/cas?useUnicode=true&characterEncoding=UTF-8
#數據庫用戶名
cas.authn.jdbc.query[0].user=root
#數據庫密碼
cas.authn.jdbc.query[0].password=admin
#默認加密策略,通過encodingAlgorithm來指定算法,默認NONE不加密
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
#Query Database Authentication 數據庫查詢校驗用戶名結束 #jdbc驗證配置
以上配置,如驅動,查詢數據庫等等需要根據不同的場景進行調整
- 若密碼無加密,調整passwordEncoder.type=NONE
- 若密碼加密策略爲SHA,調整passwordEncoder.encodingAlgorithm=SHA
- 若算法爲自定義,實現org.springframework.security.crypto.password.PasswordEncoder接口,並且把類名配置在passwordEncoder.type
配置完後運行程序,或者配置系統。
4.輸入admin/admin
5.輸入wolfcode/wolfcode
6.輸入lanxw/666