当前位置:网站首页 > 数据科学与大数据 > 正文

springboot 数据库连接密码加密(springboot对数据库密码加密)



关于shiro介绍以及shiro整合spring,我在另一篇文章中已详细介绍,此处不作说明,请参考spring整合shiro。下载源码。

注:数据库三张表和spring整合shiro中的一模一样,在那边已经详细说明,这里直接大家看下三张表的ER图。

springboot 增加本地锁_springboot 增加本地锁

图片发自简书App

1、用idea新建Spring Initializr项目,项目结构如下:

springboot 增加本地锁_javascript_02

图片发自简书App

2、添加依赖:

3、application.properties

注:spring整合shiro中是只有User实体类,在UserDao中定义了三个方法,通过表的关键关系查询Role和Permission;这里将采用另一种方式,三个实体类,设置实体类的关联关系。
1、entity层
User.java




Role.java

Permission.java

2、dao层
UserDao.java

UserDao.xml

3、service层

4、junit测试

运行结果:

springboot 增加本地锁_springboot 增加本地锁_03

图片发自简书App

5、controller层
TestController.java

说明:这里用户登录方法用到了shiro,但是这里还没配置shiro,所以暂时不能使用,先搭起整个骨架,然后再加入shiro。

6、jsp页面
login.jsp
(登录页面)




现在说一下要求:
admin路由要求只有具有admin角色的用户才能访问,edit路由需要有delete权限的用户才能访问,test路由要guest角色才能访问,login、loginUser都不做拦截,本文讲解两种拦截方式,对test的拦截是在controller对应的方法上加注解,其他是拦截是写在shiro的配置类中。
预期分析:
tom是有admin角色和所有权限,所以用tom登录后,可以访问edit和admin,但是不能访问guest;而cat是guest角色,只有create和query权限,所以不能访问admin和edit,但是可以访问guest。







由于springboot还没有集成shiro,所以不能直接在application.properties中配置,需要通过类的方式配置。

核心配置类:

ShiroConfiguration.java

注:这个类每个bean的作用都已在代码中注释说明,这个类就相当于spring整合shiro的spring-shiro.xml中对shiro的配置。

自定义realm:

AutuRealm.java

注:这个类也有详细的注释说明。
这样就完成了springboot对shiro的整合,接下来就可以进行测试了!

tom登录

springboot 增加本地锁_前端_04

图片发自简书App

springboot 增加本地锁_前端_05

图片发自简书App

tom访问admin

springboot 增加本地锁_ViewUI_06

图片发自简书App

tom访问test

springboot 增加本地锁_springboot 增加本地锁_07

图片发自简书App

cat登录

springboot 增加本地锁_ViewUI_08

图片发自简书App

cat访问admin

springboot 增加本地锁_springboot 增加本地锁_09

图片发自简书App

cat访问test

springboot 增加本地锁_springboot 增加本地锁_10

图片发自简书App

测试结果与预期相符,测试通过,springboot整合shiro成功!

特别说明:

若不使用MD5加密

1、添加一个

2、将ShiroConfiguration.java中名为"hashedCredentialsMatcher"的bean替换成:

将名为"authRealm"的bean替换成:

3、AuthRealm.java中的doGetAuthenticationInfo方法里面的内容替换成:

完成以上3步就去掉了MD5加密。

以上内容属于个人学习笔记整理,如有错误,欢迎批评指正!

到此这篇springboot 数据库连接密码加密(springboot对数据库密码加密)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 3dtile数据里面有哪些(3dtiles数据下载)2025-06-03 11:09:08
  • 自动驾驶数据安全白皮书(自动驾驶网络白皮书)2025-06-03 11:09:08
  • cmip6数据使用方法(cmip6数据怎么在官网下载)2025-06-03 11:09:08
  • 大数据开发培训(大数据开发培训学费2万值得去吗)2025-06-03 11:09:08
  • 数据库入门教程(数据库快速入门)2025-06-03 11:09:08
  • 自动驾驶数据库(自动驾驶数据库摡念股)2025-06-03 11:09:08
  • druid数据库连接池中断重连(druid连接池maxactive)2025-06-03 11:09:08
  • ad9913中文手册(ad9958中文数据手册)2025-06-03 11:09:08
  • 数据库语句增删改查实验总结(数据库增删改查语句基础例题)2025-06-03 11:09:08
  • pointnet训练自己的数据(pointnet+)2025-06-03 11:09:08
  • 全屏图片