opengauss权限需求

创建角色 "u_rts" 并授予对数据库 "rts_opsdb" 的只读权限:

CREATE ROLE u_rts LOGIN PASSWORD 'Cloud@1234';
GRANT CONNECT ON DATABASE rts_opsdb TO u_rts;
GRANT USAGE ON SCHEMA public TO u_rts;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO u_rts;

创建四个用户并使其继承角色 "u_rts" 的权限,并设置密码:

CREATE USER rts_ops PASSWORD 'ops@1234';
CREATE USER rts_eod PASSWORD 'eod@1234';
CREATE USER rts_rctp PASSWORD 'rctp@1234';

GRANT u_rts TO rts_ops;
GRANT u_rts TO rts_eod;
GRANT u_rts TO rts_rctp;

 在opengauss上不需要执行这一步骤,但是在pg上需要执行。

opengauss特性,在哪个数据库下创建用户名,默认会生成和用户名一样的schema,所以这里opengauss不需要再重复创建同样的schema。

需要去掉该步骤创建对应的模式(schema)并分配相应的权限:
CREATE SCHEMA rts_rms;
CREATE SCHEMA rts_rtp;
CREATE SCHEMA rts_ris;
CREATE SCHEMA rts_des;

需求是这样的,rts_all用户拥有rts_des,rts_ris,rts_rtp,rts_rms所有用户下rts_des,rts_ris,rts_rtp,rts_rms模式的create权限,整理需要注意的是,rts_des用户必须给schema rts_des 可读可写的权限,并且rts_all必须是超级用户,不然rts_all也无法拥有对schema rts_des的可读可写的权限。

总结如下:

1、不是超级用户rts_all, 同时授予rts_ris和rts_all用户create权限,rts_all也无法在schema rts_ris创建对象 。
2、超级用户rts_all,必须授予rts_ris用户create权限(但是可以不用授予rts_all用户create权限),rts_all才能在schema rts_ris创建对象 。

如下所示截图,对于超级用户rts_all,不给create权限,也能在schema rts_ris创建对象

如下图所示,在schema rts_ris创建对象。

需求如下:

-- rts_rms 只能访问 rts_des 模式的对象,并拥有只读权限

切换到rts_des用户下为rts_rms授予访问权限
rtsdb=> \c - rts_des

GRANT USAGE on SCHEMA rts_des to rts_rms;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_rms to rts_rms;
alter default privileges for role rts_des in schema rts_des grant select on tables to rts_rms;

-- rts_rtp 只能访问 rts_des 模式的对象,并拥有只读权限

切换到rts_des用户下为rts_rtp授予访问权限
rtsdb=> \c - rts_des

GRANT USAGE on SCHEMA rts_des to rts_rtp;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_des to rts_rtp;
alter default privileges for role rts_des in schema rts_des grant select on tables to rts_rtp;

-- rts_ris 只能访问 rts_des 和 rts_rtp 模式的对象,并拥有只读权限

切换到rts_des用户下为rts_ris授予访问权限
rtsdb=> \c - rts_des

GRANT USAGE on SCHEMA rts_des to rts_ris;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_des to rts_ris;
alter default privileges for role rts_des in schema rts_des grant select on tables to rts_ris;

切换到rts_des用户下为rts_rtp授予访问权限
rtsdb=> \c - rts_des

GRANT USAGE on SCHEMA rts_des to rts_rtp;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_des to rts_rtp;
alter default privileges for role rts_des in schema rts_des grant select on tables to rts_rtp;

-- rts_des 只能访问 rts_ris、rts_rtp 和 rts_rms 模式的对象,并拥有只读权限

切换到rts_ris用户下为rts_des授予访问权限
rtsdb=> \c - rts_ris

GRANT USAGE on SCHEMA rts_ris to rts_des;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_ris to rts_des;
alter default privileges for role rts_ris in schema rts_ris grant select on tables to rts_des;

切换到rts_rtp用户下为rts_des授予访问权限
rtsdb=> \c - rts_rtp

GRANT USAGE on SCHEMA rts_rtp to rts_des;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_rtp to rts_des;
alter default privileges for role rts_rtp in schema rts_rtp grant select on tables to rts_des;

切换到rts_rms用户下为rts_des授予访问权限
rtsdb=> \c - rts_rms

GRANT USAGE on SCHEMA rts_rms to rts_des;
GRANT SELECT ON ALL TABLES IN SCHEMA rts_rms to rts_des;
alter default privileges for role rts_rms in schema rts_rms grant select on tables to rts_des;

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

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

相关文章

STM32MPU6050角度的读取(STM32驱动MPU6050)

注:文末附STM32驱动MPU6050代码工程链接,需要的读者请自取。 一、MPU6050介绍 MPU6050是一款集成了三轴陀螺仪和三轴加速度计的传感器芯片,由英国飞利浦半导体(现为恩智浦半导体)公司生产。它通过电子接口&#xff08…

【JS】Chapter10-Bom 操作

站在巨人的肩膀上 黑马程序员前端JavaScript入门到精通全套视频教程,javascript核心进阶ES6语法、API、js高级等基础知识和实战教程 (十)Bom 操作 1. Window对象 1.1 BOM(浏览器对象模型) BOM(Browser Object Model) 是浏览器对象模型wind…

力扣labuladong一刷day2共7题

力扣labuladong一刷day2共8题 | 26. 删除有序数组中的重复项 83. 删除排序链表中的重复元素 文章目录 力扣labuladong一刷day2共8题 | 26. 删除有序数组中的重复项 83. 删除排序链表中的重复元素一、26. 删除有序数组中的重复项二、83. 删除排序链表中的重复元素三、27. 移除元…

C++实战学习:输出类的抽象和实现详解

最近写了一些博客复习C的知识,但理论终究是理论,那多态、继承等C特性到底该在什么情况下使用?如何模块化地完成一个程序呢?还有没有什么C语法方面值得学习的知识呢?本节就来分析一个实际项目中的例子,来理解…

多测师肖sir_高级金牌讲师_jenkins搭建

jenkins操作手册 一、jenkins介绍 1、持续集成(CI) Continuous integration 持续集成 团队开发成员每天都有集成他们的工作,通过每个成员每天至少集成一次,也就意味着一天有可 能多次集成。在工作中我们引入持续集成,通…

大模型时代,开发者成长指南 | 新程序员

【编者按】GPT 系列的面世影响了全世界、各个行业,对于开发者们的感受则最为深切。以 ChatGPT、Github Copilot 为首,各类 AI 编程助手层出不穷。编程范式正在发生前所未有的变化,从汇编到 Java 等高级语言,再到今天以自然语言为特…

Python高级语法----Python多线程与多进程

文章目录 多线程多进程注意事项多线程与多进程是提高程序性能的两种常见方法。在深入代码之前,让我们先用一个简单的比喻来理解它们。 想象你在一家餐厅里工作。如果你是一个服务员,同时负责多个桌子的顾客,这就类似于“多线程”——同一个人(程序)同时进行多项任务(线程…

HttpUtils工具类

作为Java开发程序员,需要我们经常写一些工具类来简化开发过程,我们自己肯定写过或者用过HttpUtils用来发送http请求,但是每次手写太繁琐了,于是就按照标准写了一个Http工具类,现在分享出来。 1.HTTP请求简介 HTTP(Hy…

SSM 线上知识竞赛系统-计算机毕设 附源码 27170

SSM线上知识竞赛系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中&#…

虚幻引擎:如何使用 独立进程模式进行模拟

第一步:先更改配置 第二步,在启动的两个玩家里面,一个设为服务器,一个链接进去地图就可以了 1.设置服务器 2.另一个玩家链接

企业级低代码开发,科技赋能让企业具备“驾驭软件的能力”

科技作为第一生产力,其强大的影响力在各个领域中都有所体现。数字技术,作为科技领域中的一股重要力量,正在对传统的商业模式进行深度的变革,为各行业注入新的生命力。随着数字技术的不断发展和应用,企业数字化转型的趋…

远程运维用什么软件?可以保障更安全?

远程运维顾名思义就是通过远程的方式IT设备等运行、维护。远程运维适用场景包含因疫情居家办公,包含放假期间出现运维故障远程解决,包含项目太远需要远程操作等等。但远程运维过程存在一定风险,安全性无法保障,所以一定要选择靠谱…

RocketMQ如何安全的批量发送消息❓

优点: 批量发送消息可以提高rocketmq的生产者性能和吞吐量。 使用场景: 发送大量小型消息时;需要降低消息发送延迟时;需要提高生产者性能时; 注意事项: 消息列表的大小不能超过broker设置的最大消息大小;消息列表…

如何快速教你看自己电脑cpu是几核几线程

目录 一、我们日常中说的电脑多少核多少线程,很多人具体不知道什么意思,下面举例4核和4线程什么意思。二、那么4线程又是怎么回事呢?三、那么知道了上面的介绍后怎么看一台电脑是几核,几线程呢? 一、我们日常中说的电脑…

JSONP 跨域访问(2), JSONP劫持

JSONP 跨域访问(2), JSONP劫持 一, 利用 XSS 漏洞执行jsonp 1. 利用过程 发现有jsonp的请求: <script type"text/javascript" src"http://192.168.112.200/security/jsonp.php?callbackjsonpCallback"></script>向xss漏洞的位置注入代码…

​软考-高级-信息系统项目管理师教程 第四版【第24章-法律法规与标准规范-思维导图】​

软考-高级-信息系统项目管理师教程 第四版【第24章-法律法规与标准规范-思维导图】 课本里章节里所有蓝色字体的思维导图

springboot 项目升级 2.7.16 踩坑

记录一下项目更新版本依赖踩坑 这个是项目最早的版本依赖 这里最初是最初是升级到 2.5.7 偷了个懒 这个版本的兼容性比较强 就选了这版本 也不用去修改就手动的去换了一下RabbitMQ的依赖 因为这边项目有AMQP 风险预警 1.spring-amqp版本低于2.4.17的用户应升级到2.4.17 2.spri…

时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测(SE注意力机制)

时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测&#xff08;SE注意力机制&#xff09; 目录 时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测&#xff08;SE注意力机制&#xff09;预测效果基本描述模型描述程序设计参考资料 预测效果 基本描述 1.MAT…

蓝桥杯官网练习题(移动距离)

题目描述 X 星球居民小区的楼房全是一样的&#xff0c;并且按矩阵样式排列。其楼房的编号为 1,2,3, 当排满一行时&#xff0c;从下一行相邻的楼往反方向排号。 比如&#xff1a;当小区排号宽度为 6 时&#xff0c;开始情形如下&#xff1a; 1 2 3 4 5 6 12 …

python模块之redisbloom redis布隆过滤器

一、简介 RedisBloom 是一个 Redis 模块&#xff0c;提供了布隆过滤器&#xff08;Bloom Filter&#xff09;、计数器&#xff08;Count-Min Sketch&#xff09;、Top-K&#xff08;Top-K&#xff09;、Top-K with expiry&#xff08;Top-K with Expiration&#xff09;和多样…