若依角色与权限字符串


一、简介

基于权限字段串和基于角色的访问控制是两种不同的权限管理模型,它们各自有其优点和应用场景。下面是这两种模型的基本概念:

1.基于权限字段串

基于权限字段串(Permission String-Based Access Control)的模型中,用户的权限被编码成一个字符串或者一系列的标志位(通常是二进制)。这些字符串或标志位代表了用户可以执行的一系列操作。

例如,在一个简单的文件系统中,可能有以下几种权限:读取、写入和执行。对于每个文件,都可以分配这三个权限给用户,形成一个三位的二进制数,如"110"表示用户拥有读取和写入权限,但没有执行权限。

这种方式的优点是简单直观,可以直接通过比较权限字符串来判断用户是否有某个特定的权限。然而,缺点是在大型系统中,随着功能的增长和变化,权限字符串可能会变得非常复杂,难以管理和维护。

2.基于角色

基于角色的访问控制(Role-Based Access Control, RBAC)是一种更复杂的权限管理模式。在这种模型中,权限不是直接赋予用户的,而是通过角色间接赋予。首先定义一系列的角色,每个角色都有一组相关的权限。然后将角色分配给用户,从而实现了对用户权限的管理。

在RBAC中,通常存在三种类型的实体:

用户(User):实际使用系统的主体。
角色(Role):一组权限的集合,它可以被赋予用户。
权限(Permission):允许进行的具体操作,比如查看、编辑、删除等。

RBAC的优势在于它的灵活性和可扩展性。新的角色可以很容易地创建并分配给用户,而不需要修改现有的用户权限。此外,由于权限是与角色关联的,而不是直接与用户关联,因此当需要更改权限时,只需要更改相关角色的权限设置,而不需要逐一调整每个用户的权限。

总的来说,基于权限字段串的方法适用于较小且相对稳定的系统,而在大型、复杂且不断发展的系统中,基于角色的访问控制模型更为适用。

二、若依的权限控制

1.介绍

若依框架采用了基于角色(Role-Based Access Control, RBAC)的权限控制模型。这种模型将权限与角色相关联,而不是直接与用户关联,从而提高了灵活性和可扩展性。

在若依框架中,用户通过被赋予不同的角色来获得相应的权限。开发者可以创建多个角色,并为每个角色分配不同的权限。然后将这些角色分配给用户,以实现对用户权限的管理。

此外,若依框架还提供了数据权限控制、按钮级权限控制等功能,以适应复杂的业务需求。这些都是基于角色的权限控制模型的一部分,而不是基于权限字段串的方法。

2.实践

  • 自定义接口
    下面定义了一个get接口,并且设置了该接口的权限字符串为system:student:permTest
    在这里插入图片描述

  • 前端新建和配置菜单权限
    在这里插入图片描述分配权限
    在这里插入图片描述

  • 前端添加按钮和定义接口
    在这里插入图片描述
    绑定触发事件
    在这里插入图片描述
    设置api接口
    在这里插入图片描述

  • 切换用户测试
    在这里插入图片描述点击按钮后
    在这里插入图片描述验证成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值