Shiro权限框架-权限系统的整体概念(1)

本文详细阐述了权限管理的概念,包括访问权限和数据权限,举例说明了如何为用户分配和限制操作。同时,介绍了身份认证的过程,以及认证中的关键对象Subject、Principal和Credential。接着,解释了授权的定义,描述了用户、资源、角色和权限之间的关系,并概述了授权流程。文章深入探讨了系统中主体对资源的访问控制,为理解和实施权限管理和认证授权提供了清晰的框架。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、什么是权限

​ 权限管理,一般指根据系统设置的安全策略或者安全规则,用户可以访问而且只能访问自己被授权的资源,不多不少。权限管理几乎出现在任何系统里面,只要有用户和密码的系统。

权限管理在系统中一般分为:

  • 访问权限

    一般表示你能做什么样的操作,或者能够访问那些资源。
    例如:
    给张三赋予“店铺主管”角色,
    “店铺主管”具有“查询员工”、
    “添加员工”、“修改员工”和“删除员工”权限。
    
    此时张三能够进入系统,则可以进行这些操作
    
  • 数据权限

    一般表示某些数据你是否属于你,或者属于你可以操作范围。
    例如:
    张三是"店铺主管"角色,
    他可以看他手下客服人员所有的服务的买家订单信息,
    他的手下只能看自己负责的订单信息
    

2、认证概念

【1】什么是认证

​ 身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和密码,看其是否与系统中存储的该用户的用户名和密码一致,来判断用户身份是否正确。例如:密码登录,手机短信验证、三方授权等

【2】认证流程

【3】关键对象

​ 上边的流程图中需要理解以下关键对象:

​  Subject:主体:访问系统的用户,主体可以是用户、程序等,进行认证的都称为主体;

​  Principal:身份信息是主体(subject)进行身份认证的标识,标识必须具有唯一性,如用户名、手机号、邮箱地址等,一个主体可以有多个身份,但是必须有一个主身份(Primary Principal)。

​  credential:凭证信息:是只有主体自己知道的安全信息,如密码、证书等。

3、授权概念

【1】什么是授权

​ 授权,即访问控制,控制谁能访问哪些资源。主体进行身份认证后,系统会为其分配对应的权限,当访问资

源时,会校验其是否有访问此资源的权限。

这里首先理解4个对象。

​ 用户对象user:当前操作的用户、程序。

​ 资源对象resource:当前被访问的对象

​ 角色对象role :一组 "权限操作许可权" 的集合。

​ 权限对象permission:权限操作许可权

【2】授权流程

 

【3】关键对象

授权可简单理解为who对what进行How操作

**Who:**主体(Subject),可以是一个用户、也可以是一个程序

**What:**资源(Resource),如系统菜单、页面、按钮、方法、系统商品信息等。

​ 访问类型:商品菜单,订单菜单、分销商菜单

​ 数据类型:我的商品,我的订单,我的评价

**How:**权限/许可(Permission)

​ 我的商品(资源)===>访问我的商品(权限许可)

​ 分销商菜单(资源)===》访问分销商列表(权限许可)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值