当前位置: 首页 > article >正文

pgsql


-- 创建用户 saidi01 并设置密码
CREATE ROLE saidi01 WITH LOGIN PASSWORD '123456';

-- 授予 saidi01 对 tb_data 数据库的 CONNECT 权限
GRANT CONNECT ON DATABASE tb_data TO saidi01;

-- 创建 my_view01 视图
CREATE VIEW my_view01 AS
SELECT * FROM tb_production WHERE device_type='雾炮';

-- 授予 saidi01 对 my_view01 视图的 SELECT 权限
GRANT SELECT ON my_view01 TO saidi01;

-- 禁止 saidi01 查看 tb_data 数据库中除 my_view01 外的其他表
REVOKE ALL ON DATABASE tb_data FROM public;
REVOKE ALL ON SCHEMA public FROM public;
GRANT USAGE ON SCHEMA public TO saidi01;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO saidi01;

-- 禁止 saidi01 查看 tb_base 数据库
REVOKE CONNECT ON DATABASE tb_base FROM saidi01;


-- 禁止 saidi01 查看 tb_data 数据库中除 my_view01 外的其他表
REVOKE ALL ON DATABASE tb_data FROM public;
REVOKE ALL ON SCHEMA public FROM public;
GRANT USAGE ON SCHEMA public TO saidi01;
ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON TABLES FROM public;
GRANT SELECT ON my_view01 TO saidi01;

-- 禁止 saidi01 查看 tb_base 数据库
REVOKE CONNECT ON DATABASE tb_base FROM saidi01;


http://www.kler.cn/a/323111.html

相关文章:

  • 第二十二章 TCP 客户端 服务器通信 - TCP设备的OPEN和USE命令关键字
  • 丑数动态规划
  • thinkphp6配置多应用项目及多域名访问路由app配置
  • C++- 基于多设计模式下的同步异步日志系统
  • 【Redis】Redis的一些应用场景及使用策略
  • More effective C++:杂项
  • uniapp view增加删除线
  • 二维数组的创建和初始化
  • 插入排序(insertion sort)
  • self-supervised, weakly supervised, and supervised respectively区别
  • Django中媒体文件的配置
  • UnityHub下载任意版本的Unity包
  • C++ STL初阶(14): map和set
  • C#:动态为Object对象添加新属性的方法
  • Linux 命令 | 每日一学,文本处理三剑客之grep命令实践
  • ssh连接GitHub自定义密钥文件名
  • 【C++前缀和】2731. 移动机器人|1922
  • PHP foo()和@foo()之间有什么区别
  • GAMES101(17~18节,物理材质模型)
  • [go] 迭代器模式
  • 新手答疑 | 零基础该怎么学习嵌入式?嵌入式Linux学习路线是什么?嵌入式开发板推荐?
  • [sql-03] 求阅读至少两章的人数
  • 数据分析工具julius ai如何使用
  • vue 流式加载mp4文件
  • 视频汇聚/视频存储/安防视频监控EasyCVR平台RTMP推流显示离线是什么原因?
  • 秋招即将来临,AIGC 产品经理 快速入门方法论