微服务与Nacos概述-6

news2024/12/25 13:23:39

RBAC 模型

RBAC 基于角色的访问控制是实施面向企业安全策略的一种有效的访问控制方式。

基本思想是,对系统操作的各种权限不是直接授予具体的用户,而是在用户集合与权限集合之间建立一个角色集合。每一种角色对应一组相应的权限。一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。这样做的好处是,不必在每次创建用户时都进行分配权限的操作,只要分配用户相应的角色即可,而且角色的权限变更比用户的权限变更要少得多,这样将简化用户的权限管理,减少系统的开销。

在这里插入图片描述

权限可分为三类:数据权限、操作权限和页面权限。

1、数据权限:控制账号可看到的数据范围。例如负责不同区域的人员,只能看到自己负责区域的标的,不能看到和修改其他区域的。

2、页面权限:控制账号可以看到的页面,通常系统都会有这一层权限控制。这种控制相对操作权限来说比较粗放,难以对权限进行精细管理。

3、操作权限:控制账号在页面上可以操作的按钮,通常指的是页面中的新增、删除、编辑、查询功能。没有操作权限,就只能看到页面中的数据,但是不能对数据进行操作。操作权限是比页面权限更精细一层的权限控制。

基础概念

RBAC 模型根据设计需要可分为 RBAC0、RBAC1、RBAC2、RBAC3 四种类型。其中 RBAC0 是基础,另外三种是 RBAC0 的升级。产品经理在进行权限系统设计时,可以结合实际情况来选择使用的 RBAC 模型的类型。

RBAC0 是 RBAC 模型的核心基础思想,即用户通过被赋予角色和权限进行关联。用户、角色和权限之间的两两关系均是多对多关系,即一个用户可以被赋予多个角色,一个角色可以被赋予多个用户。一个角色可以拥有多项权限,一项权限可以赋予多个角色。

RBAC1 是引入继承关系的 RBAC 模型,一个角色可以从另一个角色继承许可权,即角色具有上下级的关系。角色间的继承关系可分为一般继承关系和受限继承关系。一般继承关系允许角色间的多继承,受限继承关系则进一步要求角色继承关系是一个树结构

RBAC-2 模型在用户与角色间和角色与角色之间加入了一些规则限制。互斥角色是指各自权限可以互相制约的两个角色。且不能同时获得两个角色的使用权。规定了权限被赋予角色时或角色被赋予用户时所应遵循的强制性规则。角色互斥、基数约束、先决条件角色等

互斥角色:同一用户在两个互斥角色中只能选择一个。例如不能同时被指派给会计角色和审计员角色

先决条件角色 :指要想获得较高的权限要首先拥有低一级的权限。例如要想为用户分配角色 A,则必须先分配角色 B

基数约束:一个角色被分配的用户数量受限;一个用户可拥有的角色数目受限

运行时互斥:允许一个用户具有两个角色,但在运行中不可同时激活这两个角色。

RBAC3 统一模型:同时包含 RBAC1 和 RBAC2 的特性,既有角色层级划分,也有各种限制

表定义

在这里插入图片描述

系统的 RBAC 相关表的定义

create table if not exists tbl_users(
    id bigint primary key,
    foreign key(id) references tbl_account on delect cascade,
    username varchar(32) not null unique,
    password varchar(32) not null,
    salt varchar(32) comment '盐值',
    iter int default 6 comment '加密次数'
)engine = innodb default charset utf8 comment '登录账户信息';

create table if not exists tbl_roles(
    id bigint primary key auto_increment comment '代理主键',
    name varchar(32) not null,
    descn varchar(255) comment '备注说明,一般在具体表中会创建一些看起来似乎没有什么用的列' 
)egine = innodb default charset utf8 comment '角色信息';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/882435.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 BERT 进行文本分类 (02/3)

​ 一、说明 在使用BERT(1)进行文本分类中,我向您展示了一个BERT如何标记文本的示例。在下面的文章中,让我们更深入地研究是否可以使用 BERT 来预测文本是使用 PyTorch 传达积极还是消极的情绪。首先,我们需要准备数据…

利用POM完成脚本分离实现企业级自动化(POM设计模式+页面的框架封装+测试报告截图)

利用POM完成脚本分离实现企业级自动化(POM设计模式页面的框架封装测试报告截图) 项目-测试-手工测试 项目-测试-手工测试 1.了解需求; 2.编写测试用例(开始)——功能测试组会去做的事情 3.执行测试用例——发送测试报…

vue中router路由的原理?两种路由模式如何实现?(vue2) -(下)

上一期我们说到了如果想要实现一个路由嵌套,那么就需要判断传递实例化路由时的那个路由信息是否存在children属性,如果有children说明它是二级路由,我们还需要去递归判断,因为它不一定只有一个子路由,接下来实现一下路…

【第三阶段】kotlin语言的substring

const val INFO"kotlin java" fun main() {val indexOfINFO.indexOf(j)//左包右不包//0,indexOf等价于0 until indexOf ktolin常用0 until indexOf 方式println(INFO.substring(0,indexOf))println(INFO.substring(0 until indexOf))}执行结果

Android Framework 动态更新插拔设备节点执行权限

TF卡设备节点是插上之后动态添加,所以不能通过初始化设备节点权限来解决,需要监听TF插入事件,在init.rc 监听插入后动态更新设备节点执行权限 添加插拔TF卡监听 frameworks/base/services/core/java/com/android/server/StorageManagerServic…

YOLOv5基础知识入门(6)— 激活函数(Mish、Sigmoid、Tanh、ReLU、Softmax、SiLU等)

前言:Hello大家好,我是小哥谈。激活函数(Activation functions)对于人工神经网络模型去学习、理解非常复杂和非线性的函数具有十分重要的作用。YOLOv5模型训练过程中即使用了激活函数,可以改善模型的训练速度和准确性。…

SpringCloud实用篇7——深入elasticsearch

目录 1 数据聚合1.1 聚合的种类1.2 DSL实现聚合1.2.1 Bucket聚合语法1.2.2 聚合结果排序1.2.3 限定聚合范围1.2.4 Metric聚合语法1.2.5.小结 1.3 RestAPI实现聚合1.3.1 API语法1.3.2 业务需求1.3.3 业务实现 2 自动补全2.1 拼音分词器2.2 自定义分词器2.3 自动补全查询2.4 实现…

vue3-router

一、路由 (1)通过 URL 区分路由的机制上,有两种实现方式: hash 模式:通过 URL 中 # 后面的内容做区分,我们称之为 hash-router; history 模式:在这种方式下,路由看起来和…

C++_模板进阶_非类型模板参数_模板特化_分离编译

一、非类型模板参数 模板参数,分为类型形参和非类型形参。 类型形参就是在模板中跟在typename和class之后的参数类型名称,非类型形参就是用一个常量作为类模板或者函数模板的一个参数,在类模板和函数模板中,可以将该参数当作常量…

第三方软件安全测评如何收费,安全测试包括哪些测试项?

近年来,随着全球范围内网络安全事件的频发,第三方软件安全测评的需求也日益增长。软件安全对于企业的重要性不言而喻,那么如何收费和可做测试项就成了企业最为关注的问题,小编将就以上问题作出以下简析。 一、第三方软件安全测评…

Smartbi 修改用户密码漏洞

漏洞简介 通过查看 Smartbi 的补丁包信息,发现存在漏洞在某种特定情况下修改用户的密码,进行简单的复现和分析 ​ 漏洞复现 在页面上修改密码时,需要知道原本的用户对应的密码 ​ ​ 直接构造这样的数据包,就不需要知道原本…

Excelize Go语言操作 Office Excel文档基础库

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式&#xf…

硬件-10-浏览器发展史和开源操作系统FydeOS

吊打 IE、Firefox,谷歌 Chrome 十年发展史 fydeos官方网站 全面了解浏览器内核发展史 1 浏览器内核 浏览器内核英文叫做:Rendering Engine,中文翻译很多,排版引擎、解释引擎、渲染引擎,现在流行称为浏览器内核。内核…

42、可靠传输——连续ARQ

上回内容我们学习到,一种保证可靠传输的机制——ARQ协议,ARQ协议通过设置超时定时器,当在规定时间内没有收到来自对方发来的“确认”报文,就自动报文重传。这其中,ARQ协议和停止等待机制的结合,我们把它称作…

USB PD快充保护方案有哪些?用集成式TVS还是分立式TVS?

USB Power Delivery ,简称USB PD,是由USB-IF组织制定的一种快速充电规范,目前主流的快充协议之一。该规范可实现更高的电压和电流,输送的功率最高可达100瓦,并可以自由的改变电力的输送方向。在日常使用USB PD快充充电…

CNN卷积详解(三)

一、卷积层的计算 4 ∗ * ∗ 4的输入矩阵 I I I 和 3 ∗ * ∗ 3 的卷积核 K K K: 在步长(stride)为 1 时,输出的大小为 ( 4 − 3 1 ) ( 4 − 3 1) 计算公式: ● 输入图片矩阵 I I I 大小: w w w w ww ●…

【八大排序】-- 基数排序(动图演示)

基数排序(桶排序)介绍 (1)基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是通…

【环境配置】Windows10-YOLOv8运行报错

问题如下: Windows10 运行 YOLOv8 出现如下错误: Traceback (most recent call last): File “”, line 1, in File “D:\anaconda3\envs\yolov8\Lib\multiprocessing\spawn.py”, line 116, in spawn_main exitcode _main(fd, parent_sentinel) ^^^^^…

【ROS】话题通信--从理论介绍到模型实现

1.简单介绍 话题通信是ROS中使用频率最高的一种通信模式,话题通信是基于发布订阅模式的,也即:一个节点发布消息,另一个节点订阅该消息。像雷达、摄像头、GPS… 等等一些传感器数据的采集,也都是使用了话题通信,换言之…

帆软大屏2.0企业制作

 数字化观点中心 / 当前页 如何从0-1制作数据大屏,我用大白话给你解释清楚了 文 | 商业智能BI相关文章 阅读次数:18,192 次浏览 2023-06-08 11:51:49 好莱坞大片《摩天营救》中有这么一个场景:  你可以看见反派大b…