GaussDB(DWS) 数据库安全设置之三权分立

举报
数据风清扬 发表于 2020/07/03 17:23:58 2020/07/03
【摘要】 为了保护集群数据的安全,GaussDB(DWS)支持对集群设置三权分立(系统管理员、安全管理员、审计管理员),使用不同类型的用户分别控制不同权限的模式。

GaussDB(DWS)创建集群时默认用户是SYSADMIN属性的系统管理员,具备系统最高权限。

在实际业务管理中,为了避免系统管理员拥有过度集中的权利带来高风险,可以设置三权分立,将系统管理员的权限分立给安全管理员和审计管理员。

三权分立后,系统管理员将不再具有CREATEROLE属性(安全管理员)和AUDITADMIN属性(审计管理员)能力。即不再拥有创建角色和用户的权限,并不再拥有查看和维护数据库审计日志的权限。关于CREATEROLE属性和AUDITADMIN属性的更多信息请参考 CREATE ROLE


默认的用户权限

对象名称 系统管理员 安全管理员 审计管理员 普通用户
表空间 对表空间有创建、修改、删除、访问、分配操作的权限。 不具有对表空间进行创建、修改、删除、分配的权限,访问需要被赋权。
对所有表有所有的权限。 仅对自己的表有所有的权限,对其他用户的表无权限。
索引 可以在所有的表上建立索引。 仅可以在自己的表上建立索引。
模式 对所有模式有所有的权限。 仅对自己的模式有所有的权限,对其他用户的模式无权限。
函数 对所有的函数有所有的权限。 仅对自己的函数有所有的权限,对其他用户放在public这个公共模式下的函数有调用的权限,对其他用户放在其他模式下的函数无权限。
自定义视图 对所有的视图有所有的权限。 仅对自己的视图有所有的权限,对其他用户的视图无权限。
系统表和系统视图 可以查看所有系统表和视图。 只可以查看部分系统表和视图。详细请参见系统表和系统视图


三权分立的权限最小化设置将数据库安全提升一个档次。


如何实现三权分立的设置,请看如下:

1、在数据仓库服务界面创建集群后,单击集群名称,进入集群详情,在详情页签中点击“安全设置”。

2、进入“安全设置”,呈现设置界面。

image.png

3、打开“三权分立”开关,可进行设置安全管理员及审计管理员用户名及密码(默认系统管理员在创建集群时已设定)。

image.png

4、设置完成后,对于审计配置建议进行设置,审计也是数据库运行过程的关键日志。

image.png

   审计保留策略建议“时间优先”,最长可保留730天,再根据实际需要将越权访问、DML、DDL等分别设置,数据仓库服务还提供的审计日志转储OBS的功能,设置转储的OBS桶及路径,在转储周期内将生成审计日志文件,直接放在您的OBS桶中,方便查看。

5、设置完后,点击应用,成功后即可连接数据库查看三权分立的效果。

审计查询命令是数据库提供的sql函数pg_query_audit,其原型为:

pg_query_audit(timestamptz startime,timestamptz endtime,audit_log)

参数startime和endtime分别表示审计记录的开始时间和结束时间,audit_log表示所查看的审计日志信息所在的物理文件路径,当不指定audit_log时,默认查看连接当前实例的审计日志信息。

通过sql函数pgxc_query_audit可以查询所有CN节点的审计日志,其原型为:

pgxc_query_audit(timestamptz startime,timestamptz endtime)


说明: 

startime和endtime的差值代表要查询的时间段,其有效值为从startime日期中的00:00:00开始到endtime日期中的23:59:59之间的任何值。请正确指定这两个参数,否则将查不到需要的审计信息。



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。