Shiro

1.组成

1.Subject:应用代码直接交互的对象,代表当前用户
2.SecurityManager:用于管理所有的subjects(权限认证之类的)
3.Realm:用于和数据交互

2.ShiroConfig配置类

1.配置Realm,需要自定义类
2.配置DefaultWebsecurityManger,关联Realm(方法的参数中传入)
3.配置shiroFilterFactoryBean,配置拦截的请求及相关权限,需要配置DefaultWebsecurityMange,方法参数中传入

anno:开放权限,可以直接访问 authc:需要身份认证
logout:退出登录,后可定义退出后的页面(有些好的方法,或者自己重定向)
roles[admin]:可以有多个参数,表示某个或某些角色可以通过,多参数必须每个参数都通过才算通过
perms[admin]:可以有多个参数,表示拥有某个或某些权限才通过

3.自定义Realm

继承 AuthorizingRealm 类后,重写两个方法:
1.doGetAuthenticationInfo() 方法:用来验证当前登录的用户,获取认证信息(认证)。
info.addStringPermission(subject.getPerms());
2.doGetAuthorizationInfo() 方法:为当前登录成功的用户授予权限和分配角色(授权)。
UsernamePasswordToken token = (UsernamePasswordToken) authenticationToken;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值