多模型构建的多层级权限管控体系

2023-11-13

在阐述 CloudQuery 权限体系之前,想先跟大家分享下我们团队在客户侧收集到了的一些真实场景与诉求:

- 对特定对象进行操作管控(SQL 命令)
- 对某个字段实现精确动态脱敏
- 对某一条 SQL 语句进行精确提权
- 对高危命令进行拦截
- 实现用户登录时的数据精准过滤
- 实现动态脱敏
- 实现数据导出的管控
- 实现结果集复制的管控
- 实现数据修订的管控
- 希望能对数据库的访问时间做限制
- 希望能对用户查询的行数,次数做限制

这些诉求涵盖了对数据库操作的权限管理、数据保护、访问安全控制等,看上去这些需求好像比较离散,但总结下来我们可以将它们归纳为 「不同维度的管控需求」

那让我们来回顾下 CloudQuery 社区版 1.x 系列是如何来满足这些需求的。在产品形态上,CloudQuery 1.x 系列将用户的管控需求统一称为“权限”。在「数据库连接管理」模块之下,通过数据操作权限、时间权限、受限资源权限、动态脱敏管理以满足用户不同的“管控”诉求。

然而,“权限”这个词包含了太多的需求,基于此前提, 2.x 系列中,我们希望以更加具体、明确的方式来引用它。在 CloudQuery 权限概念上,通过采用不同的“术语”来区分这些权限需求,所以我们设计了全新「多模型、多层级」的权限体系。

程序员眼中的"权限"有多种模型,包括 ACL、DAC、MAC、RBAC、ABAC,针对主体(人)与资源(数据库资源)不同模型对应着不同的交互表现。在进行权限改造之前,我们围绕着管控需求、系统菜单、功能菜单进行分类,拆分系统与业务,并对20多种数据库的 SQL 语法和数据类型重新进行了整理。

功能介绍

在 2.x 系列的产品中,我们对业务进行拆分,将以往的权限管理分为两个不同的模块:数据库管理和数据保护,其中数据库管理又拆分成连接管理与授权管理两部分,这样的拆分旨在实现更精确的管控目的。

在这里插入图片描述

连接管理

连接管理,是针对访问数据库时创建的连接进行管理。在连接管理中,我们增加了连接管控与资源纳管。

  • 连接管控: 通过对连接的管理和控制,可以确定当前数据库是否允许建立连接。这个维度确保只有经过授权的主体能够访问数据库,从而保障数据的安全性。

  • 资源纳管: 对数据库中的资源进行纳管,将承载数据库对象的最小容易单位(schema)定义为纳管操作的最小单位资源。这样的定义有助于我们以更精细的方式管理和控制数据库中的资源,并满足不同数据库类型和概念的管控诉求。

在这里插入图片描述

授权管理

授权管理,则是针对我们纳管的资源进行授权管控。值得注意的是,授权管理又分为针对纳管资源的最大单位(schema)管控、针对最小单位(数据库对象)的细粒度授权。

  • schema的基础设置: 我们为每个连接和资源分配唯一的标识符,以便在权限控制中准确定位和识别这些资源。这些标识符可以包括测试环境标识、复核方式标识以及无权对象隐藏标识,以满足客户对不同管控方式的需求。

  • 安全设置: 对每个资源和数据库对象,我们提供了丰富的访问策略设置。客户可以根据具体需求,为每个资源定义访问策略,如限制查询、进行二次复核等。这样的安全设置使得客户能够实现对资源的精细化管理。

  • 操作权限等级: 我们定义了不同的操作权限等级,以定义每个主体对资源的具体操作级别。大家可以发现 2.x 系列提供了默认的五个权限等级,包括无权限、仅访问、仅查询、可编辑和可管理。默认的权限等级可以帮助客户更方便地授权给不同的主体,也可以为我们下一步授权改造提供基础的权限标准。

  • 细粒度授权: 在数据库对象层级,我们可以针对用户分配不同的细粒度权限,包括查询、修改、添加、删除、导入和导出等操作权限。同时,也支持对单个用户或批量用户进行权限管理。

在这里插入图片描述
在这里插入图片描述

通过功能上的细分,我们可以更加精确地管理和控制人员对数据库资源的访问行为,确保数据的安全性和可控性。

值得一提的是,在 2.x 系列中,我们对权限一词进行了简化,它仅代表数据库 SQL 操作的聚合以构建权限体系。目前,我们发布了资源授权视图,并计划在后续版本中推出主体授权和项目封装授权,以满足更多的授权需求。我们致力于提升权限体系的完备性和灵活性,以满足用户在数据安全管控方面的多样需求。

数据保护

在 2.x 系列产品中,提供了数据保护功能,旨在增强数据的安全性和隐私保护。

数据保护经常会涉及两个关键词:数据脱敏和数据过滤。通常,数据查询结果以二维表的形式展示,其中相似类型的数据以列的方式存储。然而,数据保护的需求并不仅限于特定数据类型,而是适用于所有相关数据的展示和保护。因此,我们将对相似类型数据进行安全处理称为脱敏,而对相关展示数据进行安全处理称为过滤。

简而言之,脱敏关注的是表的列,而过滤涉及表的行。我们的数据保护功能正是基于这两个概念而设计的。

关于脱敏和过滤的实现,我们采用了两种技术方式,分别是前置规则和后置规则。前置规则使用 SQL 改写方式对数据进行处理,而后置规则则通过结果集命中方式进行改写。虽然后置规则相对简单,但容易被绕过。因此,我们建议在使用时主要采用前置规则,辅以后置规则来实现数据展示的保护。通过这种组合方式,能更有效地确保数据的安全性。

在这里插入图片描述

在 2.x 系列产品中,具体实现了以下数据保护功能:

脱敏

  • 数据脱敏设置: 数据脱敏设置是一种后置规则,用于对结果集中的敏感数据进行脱敏处理,以保护数据的隐私。同时可以在数据脱敏设置页面中配置自定义的正则表达式,以命中并改写相关数据。
  • 字段脱敏设置: 字段脱敏设置是一种前置规则,用于在数据查询之前对特定字段进行脱敏处理,以保护敏感数据的隐私。用户可以选择需要保护的表、字段以及适用的脱敏算法进行配置。

过滤

  • 行过滤规则设置: 行过滤规则设置是一种前置规则,用于在数据查询之前定义规则以过滤掉结果集中的部分行数据,以保护敏感信息和隐私。用户可以根据特定条件设置规则,如条数限制、模糊搜索、单条件过滤、多条件过滤等,实现对结果集中行的筛选和过滤。

总结

CloudQuery 2.x 系列通过多维度的权限体系,满足用户对数据安全管理和访问控制的需求。连接管理和授权管理的拆分,实现对连接和资源的管控与纳管,以及对资源的授权管理。数据保护功能包括数据脱敏和数据过滤,通过前置规则和后置规则对敏感数据进行处理和结果集的筛选。

这种多维度权限体系可满足各种离散的管控需求,实现数据的安全管理和访问控制。

另外,我们将在 7月19日(周三)晚 19:00 开展第一期 CQ 用户说栏目直播,邀请到大型保险公司 DBA 王珂进行 CloudQuery 使用分享!直播将在 bilibili(CloudQuery 询盾)视频号(BinTools 图尔兹) 进行,欢迎大家预约观看~

点击图片进入活动页详情

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多模型构建的多层级权限管控体系 的相关文章

  • 内网穿透的应用-使用Net2FTP轻松部署本地Web网站并公网访问管理内网资源

    文章目录 1 前言 2 Net2FTP网站搭建 2 1 Net2FTP下载和安装 2 2 Net2FTP网页测试 3 cpolar内网穿透 3 1 Cpolar云端设置 3 2 Cpolar本地设置
  • 【镜像压缩】linux 上 SD/TF 卡镜像文件压缩到实际大小的简单方法(树莓派、nvidia jetson)

    文章目录 1 备份 SD TF 卡为镜像文件 2 压缩镜像文件 2 1 多分区镜像文件的压缩 树莓派 普通 linux 系统等 2 2 单分区镜像文件的压缩 Nvidia Jetson Nano 等 3 还原镜像文件到 SD TF 卡
  • 服务器集群是如何提高计算性能的?

    服务器集群是一种将多台服务器连接起来协同工作的技术 通过集群配置 可以提高计算性能 可靠性和可扩展性 以下是服务器集群如何提高计算性能的详细解释 一 并行处理能力 服务器集群的核心优势在于其并行处理能力 通过将多个服务器组成一个集群 可以将
  • 【计算机毕业设计】个人日常事务管理系统

    进入21世纪网络和计算机得到了飞速发展 并和生活进行了紧密的结合 目前 网络的运行速度以达到了千兆 覆盖范围更是深入到生活中的角角落落 这就促使 管理系统的发展 管理系统可以实现远程处理事务 远程工作信息和随时追踪工作的状态 网上管理系统给
  • 【计算机毕业设计】学生就业管理系统

    如今社会上各行各业 都喜欢用自己行业的专属软件工作 互联网发展到这个时候 人们已经发现离不开了互联网 新技术的产生 往往能解决一些老技术的弊端问题 因为传统学生就业信息管理难度大 容错率低 管理人员处理数据费工费时 所以专门为解决这个难题开
  • 【计算机毕业设计】北关村基本办公管理系统

    在如今社会上 关于信息上面的处理 没有任何一个企业或者个人会忽视 如何让信息急速传递 并且归档储存查询 采用之前的纸张记录模式已经不符合当前使用要求了 所以 对北关村基本办公信息管理的提升 也为了对北关村基本办公信息进行更好的维护 北关村基
  • SRC漏洞挖掘经验+技巧篇

    一 漏洞挖掘的前期 信息收集 虽然是前期 但是却是我认为最重要的一部分 很多人挖洞的时候说不知道如何入手 其实挖洞就是信息收集 常规owasp top 10 逻辑漏洞 重要的可能就是思路猥琐一点 这些漏洞的测试方法本身不是特别复杂 一般混迹
  • messages,CentOS 7不收集日志或不存在 /var/log/messages

    var log message var log secure等都不记录了 并且都是空文件 重启机器 reboot 无效 重启日志 systemctl start rsyslog 无效 怀疑空间不足 删除 var log messages 重
  • 软件测试|SQLAlchemy环境安装与基础使用

    简介 SQLAlchemy 是一个强大的 Python 库 用于与关系型数据库进行交互 它提供了高度抽象的对象关系映射 ORM 工具 允许使用 Python 对象来操作数据库 而不必编写原生SQL查询 本文将介绍如何安装 SQLAlchem
  • 电商数据api接口商品评论接口接入代码演示案例

    电商数据API接口商品评论 接口接入入口 提高用户体验 通过获取用户对商品的评论 商家可以了解用户对商品的满意度和需求 从而优化商品和服务 提高用户体验 提升销售业绩 用户在购买商品前通常会查看其他用户的评论 以了解商品的实际效果和质量 商
  • 深入了解 Python MongoDB 操作:排序、删除、更新、结果限制全面解析

    Python MongoDB 排序 对结果进行排序 使用 sort 方法对结果进行升序或降序排序 sort 方法接受一个参数用于 字段名 一个参数用于 方向 升序是默认方向 示例 按名称按字母顺序对结果进行排序 import pymongo
  • 【计算机毕业设计】电商个性化推荐系统

    伴随着我国社会的发展 人民生活质量日益提高 于是对电商个性化推荐进行规范而严格是十分有必要的 所以许许多多的信息管理系统应运而生 此时单靠人力应对这些事务就显得有些力不从心了 所以本论文将设计一套电商个性化推荐系统 帮助商家进行商品信息 在
  • 【计算机毕业设计】电影播放平台

    电影播放平台采用B S架构 数据库是MySQL 网站的搭建与开发采用了先进的java进行编写 使用了springboot框架 该系统从两个对象 由管理员和用户来对系统进行设计构建 主要功能包括 个人信息修改 对用户 电影分类 电影信息等功能
  • 【计算机毕业设计】springbootstone音乐播放器的设计与实现

    随着我国经济的高速发展与人们生活水平的日益提高 人们对生活质量的追求也多种多样 尤其在人们生活节奏不断加快的当下 人们更趋向于足不出户解决生活上的问题 stone音乐播放器展现了其蓬勃生命力和广阔的前景 与此同时 为解决用户需求 stone
  • 【计算机毕业设计】OA公文发文管理系统_xtv98

    近年来 人们的生活方式以网络为主题不断进化 OA公文发文管理就是其中的一部分 现在 无论是大型的还是小型的网站 都随处可见 不知不觉中已经成为我们生活中不可或缺的存在 随着社会的发展 除了对系统的需求外 我们还要促进经济发展 提高工作效率
  • Kubernetes (十一) 存储——Secret配置管理

    一 简介 从文件创建 echo n admin gt username txt echo n westos gt password txt kubectl create secret generic db user pass from fi
  • Mysql中设置只允许指定ip能连接访问(可视化工具的方式)

    场景 Mysql中怎样设置指定ip远程访问连接 Mysql中怎样设置指定ip远程访问连接 navicat for mysql 设置只有某个ip可以远程链接 CSDN博客 前面设置root账户指定ip能连接访问是通过命令行的方式 如果通过可视
  • MongoDB - 库、集合、文档(操作 + 演示 + 注意事项)

    目录 一 MongoDB 1 1 简介 a MongoDB 是什么 为什么要使用 MongoDB b 应用场景 c MongoDB 这么强大 是不是可以直接代替 MySQL d MongoDB 中的一些概念 e Docker 下载 1 2
  • SAP ERP系统是什么?SAP好用吗?

    A公司是一家传统制造企业 公司曾先后使用过数个管理软件系统 但各部门使用的软件都是单独功能 导致企业日常管理中数据流与信息流相对独立 形成了 信息孤岛 随着公司近年业务规模的快速发展以及客户数量的迅速增加 企业原有的信息系统在销售预测及生产
  • 网工内推 | 上市公司同程、科达,五险一金,年终奖,最高12k*15薪

    01 同程旅行 招聘岗位 网络工程师 职责描述 1 负责职场 门店网络规划 建设 维护 2 负责网络安全及访问控制 上网行为管理和VPN设备的日常运维 3 负责内部相关网络自动化和系统化建设 4 优化与提升网络运行质量 制定应急预案 人员培

随机推荐