cas-v5.3.6JDBC认证

创建数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_ids` /*!40100 DEFAULT CHARACTER SET utf8 */;

USE `db_ids`;

/*Table structure for table `sys_user` */

DROP TABLE IF EXISTS `sys_user`;

CREATE TABLE `sys_user` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`group_id` int(2) NOT NULL COMMENT '用户组别',
`user_id` varchar(20) NOT NULL COMMENT '用户id',
`school_id` varchar(20) DEFAULT NULL COMMENT '学校id',
`department_id` int(10) DEFAULT NULL COMMENT '部门id',
`user_name` varchar(40) DEFAULT NULL COMMENT '用户名',
`sex` int(2) DEFAULT NULL COMMENT '1:男;2:女',
`phone` varchar(20) DEFAULT NULL COMMENT '手机号',
`qq` varchar(15) DEFAULT NULL COMMENT 'QQ号',
`weChat` varchar(20) DEFAULT NULL COMMENT '微信号',
`password` varchar(100) DEFAULT NULL COMMENT '密码',
`MD5Password` varchar(100) DEFAULT NULL COMMENT 'MD5(16位小写)',
`email` varchar(20) DEFAULT NULL COMMENT '邮箱',
`address` varchar(200) DEFAULT NULL COMMENT '地址',
`qq_openId` varchar(40) DEFAULT NULL COMMENT 'qq标识码',
`wechat_openId` varchar(40) DEFAULT NULL COMMENT '微信标识码',
`ticket` varchar(100) DEFAULT NULL,
`expired_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'ticket失效时间',
`user_expired_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '登录失效时间',
`state` int(2) DEFAULT NULL COMMENT '1:有效;0无效',
`userState` int(2) DEFAULT NULL COMMENT '人员状态',
`stu_id` varchar(20) DEFAULT NULL COMMENT '家长账号绑定的学生id',
`update_time` timestamp NULL DEFAULT NULL,
`firstname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `user_id` (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=11426 DEFAULT CHARSET=utf8;

/*Data for the table `sys_user` */

insert into `sys_user`(`id`,`group_id`,`user_id`,`school_id`,`department_id`,`user_name`,`sex`,`phone`,`qq`,`weChat`,`password`,`MD5Password`,`email`,`address`,`qq_openId`,`wechat_openId`,`ticket`,`expired_time`,`user_expired_time`,`state`,`userState`,`stu_id`,`update_time`,`firstname`) values (11425,1,'1','1002',NULL,'admin',NULL,NULL,NULL,NULL,'7c4a8d09ca3762af61e59520943dc26494f8941b',NULL,NULL,NULL,NULL,NULL,NULL,'2018-11-28 14:39:17','2018-11-28 14:39:17',NULL,NULL,NULL,NULL,NULL);

添加pom依赖

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<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.authn.accept.users=casuser::Mellon

新增JDBC认证

​ 在application.perperties文件中新增如下属性

1
2
3
4
5
6
7
8
9
10
11
12
13
#添加jdbc认证
cas.authn.jdbc.query[0].sql=SELECT * FROM sys_user WHERE user_name=?
#那一个字段作为密码字段
cas.authn.jdbc.query[0].fieldPassword=password
#配置数据库连接
cas.authn.jdbc.query[0].url=jdbc:mysql://localhost:3306/db_ids?useUnicode=true&amp;characterEncoding=utf8
cas.authn.jdbc.query[0].dialect=org.hibernate.dialect.MySQL5Dialect
#数据库用户名
cas.authn.jdbc.query[0].user=root
#数据库密码
cas.authn.jdbc.query[0].password=
#mysql驱动
cas.authn.jdbc.query[0].driverClass=com.mysql.jdbc.Driver

新增加密方式

​ 在application.properties文件新增SHA-1加密方式

1
2
3
4
5
6

#配置加密策略
cas.authn.jdbc.query[0].passwordEncoder.type=DEFAULT
cas.authn.jdbc.query[0].passwordEncoder.characterEncoding=UTF-8
cas.authn.jdbc.query[0].passwordEncoder.encodingAlgorithm=SHA-1
#Query Database Authentication 数据库查询校验用户名结束

​ 到这里就可以进行测试了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值