shiro进行权限控制的四种方式

转载:https://blog.csdn.net/ff128652/article/details/79420555
1.url拦截权限控制:shriofilter过滤器实现
在spring配置文件中过滤器


/css/ = anon
/js/ = anon
/images/ = anon
/validatecode.jsp = anon
/login.jsp = anon
/userActionlogin.action = anon
/pagebasestaff.action = perms[“staff-list”]
/ = authc


2.注解控制权限,方法注解,基于代理技术的实现,我们在代码方法上注解需要具有什么权限才能使用该方法
首先要在spring配置文件中进行声明开启shiro注解:

*



然后在方法上声明:
@RequiresPermissions(“staff-delete”)
//执行这个方法,需要当前用户具有staff-delete这个权限
public String deleteBatch(){
staffService.deleteBatch(ids);
return LIST;
}
3.页面@shrio标签控制权限
首先要在jsp页面进入表签:
<%@ taglib uri=“http://shiro.apache.org/tags” prefix=“shiro” %>
然后包裹权限控制的内容
<shiro:hasPermission name=“Permission”>
xxxxxxxxxxxxxxxx
</shiro:hasPermission>

4.代码级别的控制
public String edit(){

Subject subject = SecurityUtils.getSubject();
subject.checkPermission(“staff-edit”);

Staff staff = staffService.findById(model.getId());
staff.setName(model.getName());
staff.setTelephone(model.getTelephone());
staff.setHaspda(model.getHaspda());
staff.setStandard(model.getStandard());
staff.setStation(model.getStation());
staffService.update(staff);
return LIST;
总结:
使用shiro进行权限控制时 这四种方法并不是进行单一的使用,是相互结合的使用从而完整的进行权限控制。}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值