栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

shiro

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

shiro

1、shiro简介

shiro是apche下的一个开源框架,是一个权限管理的框架,可以用来实现、用户授权、用户认证。spring中有spring security (原名Acegi),是一个权限框架,它和spring依赖过于紧密,没有shiro使用简单。 shiro不依赖于spring,shiro不仅可以实现 web应用的权限管理,还可以实现c/s系统,分布式系统权限管理,shiro属于轻量框架,越来越多企业项目开始使用shiro。

1、2 什么时候该用shiro

在独立应用中使用

在web中使用

在spring框架中集成使用

1、3 shiro解决应用安全的四要素

认证 - 用户身份识别,判断使用户还是管理员,还是其他

授权 - 访问控制

密码加密 - 保护或隐藏数据防止被偷窥

会话管理 - 与用户相关的时间敏感的数据

2、shiro优势

简单、使用广范、灵活、有web支持、而且还是Apache软件基金会成员

3、核心

Subject (主题)

SecurityManager (安全管理器)

Realms (领域)

3、1 Subject

subject 被Shiro 描述为一个主体、被需要认证的主体、可以是人或系统

登录,退出,执行授权检查登一系列操作都是基于在subject之后才能进行操作

Shiro 的api非常直观,它反映了开发者以“每个用户” 思考安全控制的自然趋势

subject给开开发人员使用的

3、2 SecurityManager

管理所有用户的安全操作,是 Shiro 框架的核心,充当“保护伞”引用了多个内部嵌套安全组件,它们形成了对象图。SecurityManager用来检查数据是否安全

使用之前先配置安全管理器(SecurityManager),可以使用普通的Java代码、spring xml、YAML、ini文件。

3、3 Realm

Realm 充当了 Shiro 与应用安全数据间的“桥梁”或者“连接器",还向SecurityManager提供数据帮助SecurityManager更好的做安全检查。

假设我们现在是的在登录的场景:

我们先获取subject(),然后subject发送一个登录请求给安全管理器 让安全管理器去检测这个登录请求是否安全 安全管理器在发送一个请求给Realm 让Realm提供安全管理器需要的数据 安全管理器验证完了之后再把请求发送给subject 告诉subject这个登录请求是不是合法的。通过对象与对象之间的协作顺序来完成整个流程。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/987921.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号