Shiro学习笔记之(五)Apache Shiro 授权

Shiro学习笔记之(四)Apache Shiro 认证(登陆)

一、概念

授权即权限管理,即访问控制。三个核心元素:权限、角色和用户

1.1权限 :Shiro是安全机制中最核心得元素,定义用户被允许做什么。

1.2 角色  代表一组行为或职责,角色通常是分配给用户的。Shiro支持两种类型角色:

    a.隐式角色 传统方式,一个角色代表着一系列的操作,当需要对某一操作进行授权验证时,只需判断是否是该角色即可。

    b.显示角色 一个显示角色本质上是一个授权声明的命名集合。授权验证时,需要判断当前角色是否拥有该权限。

1.3用户 subject 应用程序执行某些操作,是通过让他们与角色相关联或时直接授予权限。

二、授权的实现

    Shiro有三种授权方式:编程方式授权,注解方式授权,标签方式授权。

2.1编程方式授权(简单常见的方式)

a.基于角色授权

Role checks(角色检查)


Role Assertions(角色断言) 成功不返回任何值,程序继续执行,失败时抛出AuthorizationException异常


可以直接捕捉AuthorizationException异常来处理。

b.基于权限授权

基于权限授权不会因为角色的改变而对代码进行修改。

Object-based Permission Checks(基于对象的权限检查)


String-Based permission checks(基于字符串的权限检查)


2.2 注解方式



这一部分需要结合实际业务理解,后续补充。。。

2.3 JSP标签方式

使用之前需要引入

  <%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>















猜你喜欢

转载自blog.csdn.net/qq_39527230/article/details/80772649