暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss的数据库安全——访问控制模型

MTL 2022-11-21
464

管理用户访问权限,为用户分配完成任务所需要的最小权限。

客户价值

客户依据自身需求创建对应的数据库用户并赋予相应的权限给操作人员,将数据库使用风险降到最低。

特性描述

数据库提供了基于角色的访问控制模型和基于三权分立的访问控制模型。在基于角色的访问控制模型下,数据库用户可分为系统管理员用户、监控管理员用户、运维管理员用户、安全策略管理员用户以及普通用户。系统管理员创建角色或者用户组,并为角色分配对应的权限;监控管理员查看dbe_perf模式下的监控视图或函数;运维管理员使用Roach工具执行数据库备份恢复操作;安全策略管理员创建资源标签、脱敏策略、统一审计策略。用户通过绑定不同的角色获得角色所拥有的对应的操作权限。

在基于三权分立的访问控制模型下,数据库用户可分为系统管理员、安全管理员、审计管理员、监控管理员用户、运维管理员用户、安全策略管理员用户以及普通用户。安全管理员负责创建用户,系统管理员负责为用户赋权,审计管理员负责审计所有用户的行为。

默认情况下,使用基于角色的访问控制模型。客户可通过设置GUC参数enableSeparationOfDuty为on来切换。

特性增强

无。

特性约束

  • 系统管理员的具体权限受GUC参数enableSeparationOfDuty控制。

  • 三权分立开关和关闭切换时需要重启数据库,且无法对新模型下不合理的用户权限进行自主识别,需要DBA识别并修正。



访问控制 

⚫ 管理用户对数据库的访问控制权限,涵盖数据库系统权限和对象权限。 

⚫ 支持基于角色的访问控制机制,将角色和权限关联起来,通过将权限赋予给对应的角色,再将角色授予给用 户,可实现用户访问控制权限管理。其中登录访问控制通过用户标识和认证技术来共同实现,而对象访问控 制则基于用户在对象上的权限,通过对象权限检查实现对象访问控制。用户在为相关的数据库用户分配完成 任务所需要的最小权限从而将数据库使用风险降到最低。 

⚫ 支持三权分立权限访问控制模型,数据库角色可分为系统管理员、安全管理员和审计管理员。其中安全管理 员负责创建和管理用户,系统管理员负责授予和撤销用户权限,审计管理员负责审计所有用户的行为。 

⚫ 默认情况下,使用基于角色的访问控制模型。客户可通过设置参数来选择是否开启三权分立控制模型。


基于角色的访问控制 


⚫ 什么是基于角色的用户管理? 

 基于角色的用户管理(Role-Based Access Control,简称RBAC)是通过为角色赋予权限,用 户通过成为适当的角色而得到这些角色的权限。 

 使用RBAC可以极大简化对权限的管理。 

⚫ 什么是RBAC模型? 

 为角色赋予适当的权限。 

 指定用户为相应的角色。

⚫ RBAC授权实际上是Who、What、How三元组的关系。 

 Who:权限的拥有者或主体(如用户);

 What:权限针对的对象(如表、函数); 

 How:具体的权限(正向授权、负向授权)。 

⚫ RBAC模型中用户、角色、权限的关系。 

 一个用户可对应多个角色; 

 一个角色可对应多个用户;

 一个角色可以拥有多个权限; 

 一种权限可以被分配给许多个角色。

⚫ 其他访问控制模型 

 Access control lists(ACL)  Attribute-Based access control(ABAC) 

 Policy-Based access control(PBAC) 

⚫ RBAC的特点与优势 

 间接关系 

 职责分离 

 便于授权管理 

 可以支持最小特权原则、责任分离原则、数据抽象原则

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论