- 编程式:
通过写if/else 授权代码块完成:
Subject subject = SecurityUtils.getSubject(); if(subject.hasRole("admin")) { //有权限 } else { //无权限 }
- 注解式:
通过在执行的Java方法上放置相应的注解完成:支持AspectJ
、Spring
、Google-Guice
等,可根据应用进行不同的配置
//@RequiresRoles("admin") @RequiresPermissions("views") public void hello() { //有权限 }
- JSP/GSP 标签:
在JSP/GSP 页面通过相应的标签完成:
<%@ taglib uri="http://shiro.apache.org/tags" prefix="shiro" %> <shiro:hasRole name="admin"> <!— 有权限—> </shiro:hasRole>