
Shiro
深入理解轻量级安全框架Shiro
Thecoastlines
努力是为了让自己不再平庸
展开
-
在微服务项目中,Spring Security 比 Shiro 强在哪?
Spring Security 和Shiro的区别转载 2020-12-27 17:08:15 · 219 阅读 · 0 评论 -
Shiro之权限管理的概念
文章目录前言:什么是shiro一、什么是权限管理?举例二、权限管理的具体分类1.身份认证2.授权总结前言:什么是shiroApache Shiro 是一个开源安全框架,提供身份验证、授权、密码学和会话管理。Shiro框架直观、易用,同时也能提供健壮的安全性。一、什么是权限管理?权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源举例企业IT管理员一般都能为系统定义角色,给用户分配角色。这就是最常见的基于角色访问控制。场景举例:1、给张三赋予“人力资源经.原创 2020-12-27 17:41:47 · 276 阅读 · 0 评论 -
shiro之第一个程序认证
有关shiro的介绍请访问https://blog.youkuaiyun.com/Kevinnsm/article/details/111823268三个核心组件:Subject, SecurityManager 和 Realms.Subject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。SecurityManager:它是Shiro框架的核心,典型的Facade原创 2020-12-27 20:16:49 · 198 阅读 · 0 评论 -
shiro之自定义realm
前言:首先我们先分析怎么实现自定义某些realm,按照以往的方法肯定是实现接口或者继承某类查看继承树结构通过debug模式下分析源码可以得知AuthenticatingRealm类中的 doGetAuthenticationInfo()方法是实现用户认证的AuthorizingRealml类中的doGetAuthorizationInfo()方法是完成用户授权的然后在这两个类中只是声明了该方法,没有去实现,接着我们看继承树中最根部的SimpleAccountRealm类我们可以发原创 2020-12-28 10:30:43 · 613 阅读 · 0 评论 -
shiro认证+授权(使用MD5+salt+散列加密)
通过上文自定义realm分析源码可得https://blog.youkuaiyun.com/Kevinnsm/article/details/11183124用户认证在doGetAuthenticationInfo()方法中进行操作,授权在doGetAuthorizationInfo()方法中进行,如果想要自定义则必须实现AuthorizingRealm类,该类中继承了AuthenticatingRealm;AuthenticatingRealm类中的doGetAuthenticationInfo()方法实现了用户原创 2020-12-28 22:14:48 · 304 阅读 · 0 评论 -
shiro+springboot分析思路
文章目录前言一、为什么要使用shiro二、使用步骤1.如何认证和授权2.如何获取数据总结前言shiro和spring security等安全框架可以用户管理和权限认证一、为什么要使用shiro我们以前在不适用shiro框架之前,比如一个web项目,我们是怎么实现权限判断的呢?首先访问login.jsp或者login.html登录页面我们只是通过用户登录的用户名和密码进行判断,看是否和数据库中保存的数据一致,如果一致就能看到主页面,这最多是实现了用户的认证,对于授权无法进行实现 而如果我们.原创 2020-12-28 23:34:38 · 390 阅读 · 0 评论 -
Shiro+springboot+mybatis+EhCache(md5+salt+散列)认证与授权-03
从上文:Shiro+springboot+mybatis(md5+salt+散列)认证与授权-02当每次进行刷新时,都会从数据库重新查询数据进行授权操作,这样无疑给数据库造成很大的压力,所以需要引入缓存机制,解决频繁访问数据库的压力使用Shiro默认的EhCache缓存进行优化1.导入依赖 <dependency> <groupId>org.apache.shiro</groupId> <artifact原创 2020-12-30 17:00:12 · 206 阅读 · 0 评论 -
Shiro+springboot+mybatis(md5+salt+散列)认证与授权-02
代码延续地址:Shiro+springboot+mybatis(md5+salt+散列)认证与授权-day21.创建t_role角色表(比如管理员admin,普通用户user等),创建t_pers权限表(比如add,update,delete等),t_user_role与t_role_pers作为三个表的中间表(因为这三个表之间是多对多的关系)2.UserMapper.xml新增sql查询 <select id="findByRolesUserName" parameterType=原创 2020-12-30 16:06:13 · 300 阅读 · 2 评论 -
Shiro+springboot+mybatis(md5+salt+散列)认证与授权-01
这个小项目包含了注册与登录,使用了springboot+mybatis+shiro的技术栈;当用户在浏览器登录时发起请求时,首先这一系列的请求会被拦截器进行拦截(ShiroFilter),然后拦截器根据用户名去数据库寻找是否有相对应的user实体;如果有则返回封装到User类中(没有就用户名错误),然后比对密码是否一致;如果都通过了则认证成功;登录到主页面;然后主页面有不同的功能,不同的用户拥有不同的权限,有的能看到,有的则无法看到;然后如果不登陆直接访问主页面,会被强制跳转到登录页面;另外登录之后也可以退原创 2020-12-29 20:05:55 · 475 阅读 · 4 评论