上一章介绍了在使用华丹智能WEB报表快速开发平台开发项目过程中,需要进行单点登录,如何搭建cas5.3 的单点登录环境。
存在一个问题就是账号密码是固定的,不能新增,只能有一个,所以这里介绍一下如何进行cas与mysql的链接
(一)删除旧的cas.war包
cas在ubuntu中连接数据库需要修改配置后重新打包,所以首先需要把之前的target文件删除,命令如下:
root@ubuntu:~# cd /usr/local/cas-overlay-template-master
root@ubuntu:/usr/local/cas-overlay-template-master# mvn clean //清除旧的target文件夹
(二)修改pom.xml文件
root@ubuntu:~# vi /usr/local/cas-overlay-template-master/pom.xml
找到下图所示这一段
在注释和之间加入下面的内容
<!--数据库认证相关 start-->
<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>${mysql.driver.version}</version>
</dependency>
<!--数据库认证相关 end-->
继续找到下图这一段
在和中加入下面这一行
<mysql.driver.version>5.1.46</mysql.driver.version>
代表mysql-connector-java的版本(建议设置时在https://mvnrepository.com/artifact/mysql/mysql-connector-java查看一下可用的版本,如果设置了这里查不到的版本会导致打包失败,其他jar包也可以在这个网站搜索版本和下载)。
(三)编译cas.war包
加完后保存,然后在cas-overlay-template-master文件夹中输入以下命令打包
root@ubuntu:/usr/local/cas-overlay-template-master# mvn install
如果没有意外会显示打包成功,但是人生总是充满了意外,尤其是在中国这个墙内,maven的镜像仓库统统连不上,连据说很好用的阿里云也不行,后来尝试用nexus搭建maven的本地库,自己上传jar包,但是工序繁琐最后也没成功。最后没办法在一台可以连外网的Windows上布置了maven进行打包,3分钟搞定,由此可见有一台可以上外网的机器是多么的重要!
Windows上打包成功如下图所示
然后把新生成的target传到ubuntu的cas-overlay-template-master文件夹下,并把target的cas.war放在/usr/local/apache-tomcat-8.5.31/webapps中,之后会自动生成cas文件夹。
(四)配置mysql数据库连接
首先需要在数据库中创建表和帐号数据
我的数据库名是sso,表名是cas,下图是cas表中的数据
打开配置文件application.properties:
vi /usr/local/apache-tomcat-8.5.31/webapps/cas/WEB-INF/classes/application.properties
将最后一行cas.authn.accept.users=casuser::Mellon加井号注释掉,再加入以下内容
cas.authn.jdbc.query[0].url=jdbc:mysql://localhost:3306/sso?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
cas.authn.jdbc.query[0].user=root //此处填mysql数据库用户名
cas.authn.jdbc.query[0].password=123456 //此处填mysql数据库密码
cas.authn.jdbc.query[0].sql=select * from cas where username=? //表名和用户名标签
cas.authn.jdbc.query[0].fieldPassword=password //密码标签
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver
保存后退出,重启tomcat,访问https://localhost:8443/cas/login,测试了数据库中设定的两条用户名密码,均可登录
上述就是cas链接mysql的过程,华丹智能WEB报表快速开发平台的确很好用,有兴趣也可以看一下,网址https://www.huadaninfo.com/
转载自https://blog.csdn.net/zzy730913/article/details/80825800