Shiro---比springSecurity短小精悍

Shiro,Apache Shiro

Apache Shiro™,是一款强大易用的Java安全框架,用于身份验证,授权,加密和会话管理,总值就是强!

比如Shiro能做什么呢

  • 验证用户身份
  • 用户访问权限控制
  • 在非web或EJB容器的环境下,随意使用session API
  • 支持单点登陆
  • 提供RememberMe功能
  • 其他略

为什么选择Shiro

  • 易于使用
  • 全面 一条龙服务
  • 灵活 任何应用环境中使用
  • web支持 也提供JSP输出
  • 低耦合无缝集成Spring
  • 被广泛支持

Shiro四大特性

  • Authentication 认证
  • Authorization 授权
  • Session Management 会话管理
  • Cryptography 加密
  • web支持,缓存,并发性,测试,运行方式,记住我

Shiro架构三理念

  • Subject 当前用户,也可以是其他服务
  • SecurityManager 管理所有subject
  • Realms 权限验证的DAO

Shiro大致流程是怎么样的

1.先创建一个Subject.login(admin,admin),subject由SubjectUtils.getSubject()获得,在这之前设置manager,SubjectUtils.setSecurityManager(SecurityManager manager),manager的基类是RealmSecurityManager.

2.manager是校验入口,由Authenticator身份验证,可能由AuthenticationStrategy进行多Realm验证

3.Authenticator把相应token传入Realms,按照策略顺序验证身份信息

4.subject.logout(),这里subject其实是个接口,实际用的是DelegatingSubject实现类的方法
复制代码

自定义Realm shiro内部实现权限数据获取两种方式: ini文件和JdbcRealm 继承基类是AuthorizingRealm

代码写一半,SpringBoot启动gg了,晾着先
复制代码

转载于:https://juejin.im/post/5d555a13e51d453b1f37eb01

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值