本文主要介绍CAS统一身份认证服务器的JDBC数据库认证功能,并以FreeBSD环境下的MySQL数据库为例实现CAS 6.6版的数据库用户身份验证。主要包括以下几个方面:
- 数据库身份认证
- MySQL数据库准备
- 集成数据库驱动
- 用户验证属性配置文件
- 去除静态用户验证
- 配置数据库身份验证
- 构建和测试CAS服务
本文使用的软件版本:
- FreeBSD 13.0-RELEASE
- OpenJDK 11.0.2
- Gradle 7.3.3
- MySQL 8.0.27
1 数据库身份认证
CAS统一认证的用户名密码可存储于的数据库中,通过JDBC访问数据库,获取用户名和密码。同时还可以设置或者自定义密码的加密方法,以满足多标准化的密码加密需求。
通过CAS Overlay模板增加数据库支持非常简单,只需要准备好数据库,然后能过配置gradle任务就可以生成新的支持数据库密码存储的cas.war。
CAS统一身份认证(二):Overlay配置管理中介绍了使用Overlay模板进行配置管理过程,并对配置文件的覆盖策略作了说明。由于集成数据库支持需求导入数据库的JDBC驱动等库文件及相关属性配置,使用外部独立配置文件时需要自己去下载一系列相关的jar包,且不能自动应对CAS服务版本的升级,所以选用Overlay模板方式来集成JDBC数据库,通过gradle任务自动完成最终Web应用包的构建。
当然,在cas.war包构建完成后,在生产环境中依然可以使用