单点登陆CAS使用Mysql数据库中用户和密码进行验证

1.首先准备两台服务器进行测试

服务器 IP 功能
Tomcat CAS Server 192.168.73.146 运行Tomcat和CAS服务器
Mysql Server 192.168.73.147 运行Mysql数据库

2.启动Mysql数据
在这里插入图片描述
3.创建数据库以及数据表

创建数据库以及数据表

DROP DATABASE IF EXISTS shirodb ;
CREATE DATABASE shirodb CHARACTER SET UTF-8 ;
USE shirodb ;
CREATE TABLE member (
   mid VARCHAR(50),
   password VARCHAR(50),
   name INT,
   locaked INT ,
   CONSTRAINT pk_mid PRIMARY KEY (mid)
) ENGINE = INNODB ;

添加数据

USE shirodb ;
INSERT INTO member (mid,password,name,locked) VALUES ('admin','hello','管理员',0);
INSERT INTO member (mid,password,name,locked) VALUES ('mermaid','hello','老盛',0);
INSERT INTO member (mid,password,name,locked) VALUES ('sheng','hello','小伟',0);

4.cas服务器连接mysql
(1)准备jar包

序号 jar包
1 c3p0-0.9.5.2.jar
2 mchange-commons-java-0.2.11.jar
3 cas-server-support-jdbc-4.1.5.jar
4 mysql-connector-java-5.0.8-bin.jar

将如上jar下载在tomcat目录中cas的WEB-INF的lib目录下
在这里插入图片描述

5.修改cas服务器的配置文件

配置文件 deployerConfigContext.xml 位置如下
在这里插入图片描述
配置数据源,加入以下内容


<bean id="dateSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!--${}是引入properties文件内容的-->
        <property name="driverClass" value="org.gjt.mm.mysql.Driver"/>
        <property name="jdbcUrl" value="jdbc:mysql://192.168.73.146:3306/shirodb"/>
        <property name="user" value="root"/>
        <property name="password" value="123"/>
        <property name="maxPoolSize" value="1"/>
        <property name="minPoolSize" value="1"/>
        <property name="initialPoolSize" value="1"/>
        <property name="maxIdleTime" value="20"/>
    </bean>

增加数据检测验证器,加入如下内容

<bean id="dbAuthHandler" class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
	    <property name="dateSource" ref="dataSource"/>
		<property name="sql" value="select password from member where mid=? AND locked=0"/>
</bean>

修改权限处理类,下面需要做一个配置项的替换将

<entry key-ref="primaryPrincipalResolver" value-ref="primaryPrincipalResolver" />

替换为

<entry key-ref="dbAuthHandler" value-ref="primaryPrincipalResolver" />

6.启动tomcat

如果启动有问题可以进入tomcat中的logs目录中查询
在这里插入图片描述
登陆入服务器地址
在这里插入图片描述
出现CAS验证窗口,输入数据库保存的用户名和密码
在这里插入图片描述
成功!!!

发布了30 篇原创文章 · 获赞 4 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_42549122/article/details/90294458
今日推荐