当前位置: 首页 > 网络应用技术

实际战斗!Shiro安全框架(详细代码)

时间:2023-03-06 15:34:14 网络应用技术

  关于Java安全框架,一个是弹簧安全性,另一个是Shiro.这些框架的两个都很好。没有绝对好的人是不好的。查看业务场景选择框架,最合适的是最好的。

  今天,我们主要谈论Shiro的安全框架。我相信您经常使用它。因为许多人选择使用Shiro,我认为在许多权限框架中,Shiro由于其简单而有力的特征而引起了许多开发人员的注意。

  Apache Shiro是一种功能强大且容易 - 使用Java安全框架,可执行身份验证,授权,密码和会话管理。使用Shiro的简单 - 欣赏API.您可以快速,轻松地从最小的移动应用程序中获取任何应用程序网络和企业应用程序。

  总结是因为Shiro简单,灵活且易于启动。对于这些基本概念,我认为它也非常简单,在代码中逐步进行。

  Shiro实施登录,认证和授权的过程如下:

  Springboot集成了按钮级别的权限。在权限中涉及两个相关表:三张用户表,角色,权限和用户角色以及角色权限。我使用Common MySQL。在这里,我只是设计了表的结构,如下所示。

  设计数据库后,以下是代码。业务逻辑非常简单。用户登录后,用户将根据用户自己的角色显示权限

  目录结构如下:

  要创建一个项目,您需要添加依赖项。我将Mybatis框架用作耐用层和逆向工程来生成代码。

  添加基本代码生成后,编写了业务代码。

  application.properties创建文件创建文件创建文件创建文件创建文件以继承Shirot Framework的“授权”类,并实现两个默认方法:

  创建文件以在资源目录中创建模板文件夹,并在文件夹下创建以下文件。

  创建文件创建文件创建文件创建文件创建文件

  我们保存在数据库中的密码都是文本明亮的。一旦数据库数据泄漏,它将导致不可估量的损失,因此我们通常使用不对称的加密。简单理解是一种不可逆的加密,MD5加密算法与Thisa Algorithm.s符合此算法,以使其更安全,我们使用盐 +多个加密方法。

  电源在我们的项目中广泛使用,涉及可以包括:登录权限,菜单权限,数据权限(按钮权限)的权限。我们的计划。角色与角色之间的关系也更多地与关系。

  完整的代码一直托管代码云:https://gitee.com/jiangwang001/springboot/tree/master/master/springboot-shiro