GRANT 官网

● SYSADMIN:允许用户创建数据库,创建表空间,允许用户创建用户/角色,允许用户查看、删除审计日志,允许用户查看其它用户的数据
● MONADMIN:允许用户对系统模式dbe_perf及该模式下的监控视图或函数进行查看和权限管理,
● OPRADMIN:允许用户使用Roach工具执行数据库备份和恢复
● POLADMIN:允许用户创建资源标签、创建动态数据脱敏策略和统一审计策略
● AUDITADMIN:允许用户查看、删除审计日志
● CREATEDB:允许用户创建数据库
● USEFT:允许用户创建外表
● CREATEROLE:允许用户创建用户/角色
● INHERIT:允许用户继承所在组的角色的权限
● LOGIN:允许用户登录数据库
● REPLICATION:允许用户执行流复制相关操作

官网示例

 postgres=# CREATE USER joe PASSWORD 'Bigdata@123';  postgres=# GRANT ALL PRIVILEGES TO joe; 授权成功后,用户joe会拥有sysadmin的所有权限。 示例:将对象权限授权给用户或者角色。 撤销joe用户的sysadmin权限,然后将模式tpcds的使用权限和表tpcds.reason的所有权限授权给用户joe。postgres=# REVOKE ALL PRIVILEGES FROM joe; postgres=# GRANT USAGE ON SCHEMA tpcds TO joe; postgres=# GRANT ALL PRIVILEGES ON tpcds.reason TO joe; 授权成功后,joe用户就拥有了tpcds.reason表的所有权限,包括增删改查等权限。 将tpcds.reason表中r_reason_sk、r_reason_id、r_reason_desc列的查询权限,r_reason_desc的更新权限授权给joe。postgres=# GRANT select ( r_reason_sk,r_reason_id,r_reason_desc ),update ( r_reason_desc ) ON tpcds.reason TO joe; 授权成功后,用户joe对tpcds.reason表中r_reason_sk,r_reason_id的查询权限会立即生效。如果joe用户需要拥有将这些权限授权给其他用户的权限,可以通过以下语法对joe用户进行授权。 postgres=# GRANT select ( r_reason_sk,r_reason_id ) ON tpcds.reason TO joe WITH GRANT OPTION; 将数据库postgres的连接权限授权给用户joe,并给予其在postgres中创建schema的权限,而且允许joe将此权限授权给其他用户。 postgres=# GRANT create,connect on database postgres TO joe WITH GRANT OPTION; 创建角色tpcds_manager,将模式tpcds的访问权限授权给角色tpcds_manager,并授予该角色在tpcds下创建对象的权限,不允许该角色中的用户将权限授权给其他人。 postgres=# CREATE ROLE tpcds_manager PASSWORD 'Bigdata@123';  postgres=# GRANT USAGE,CREATE ON SCHEMA tpcds TO tpcds_manager; 将表空间tpcds_tbspc的所有权限授权给用户joe,但用户joe无法将权限继续授予其他用户。 postgres=# CREATE TABLESPACE tpcds_tbspc RELATIVE LOCATION 'tablespace/tablespace_1';  postgres=# GRANT ALL ON TABLESPACE tpcds_tbspc TO joe; 示例:将用户或者角色的权限授权给其他用户或角色。 创建角色manager,将joe的权限授权给manager,并允许该角色将权限授权给其他人。postgres=# CREATE ROLE manager PASSWORD 'Bigdata@123';  postgres=# GRANT joe TO manager WITH ADMIN OPTION; 创建用户senior_manager,将用户manager的权限授权给该用户。postgres=# CREATE ROLE senior_manager PASSWORD 'Bigdata@123';  postgres=# GRANT manager TO senior_manager; 撤销权限,并清理用户。postgres=# REVOKE manager FROM joe; postgres=# REVOKE senior_manager FROM manager; postgres=# DROP USER manager; 示例:撤销上述授予的权限,并清理角色和用户。 postgres=# REVOKE ALL PRIVILEGES ON tpcds.reason FROM joe; postgres=# REVOKE ALL PRIVILEGES ON SCHEMA tpcds FROM joe; postgres=# REVOKE ALL ON TABLESPACE tpcds_tbspc FROM joe; postgres=# DROP TABLESPACE tpcds_tbspc; postgres=# REVOKE USAGE,CREATE ON SCHEMA tpcds FROM tpcds_manager; postgres=# DROP ROLE tpcds_manager; postgres=# DROP ROLE senior_manager; postgres=# DROP USER joe CASCADE; 

示例

# 创建角色
# 创建角色role1,授予role1创建数据库的权限
openGauss=# CREATE ROLE role1 WITH CREATEDB password 'openGauss@2021';# 修改角色role1,授予角色role1监控管理员的权限,同时取消创建数据库的权限
openGauss=# ALTER ROLE role1 WITH MONADMIN NOCREATEDB;# 创建名为joe的用户,并将sysadmin权限授权给他,授权成功后,用户joe会拥有sysadmin的所有权限。
openGauss=# CREATE USER joe PASSWORD 'Gauss@123456';
openGauss=# GRANT ALL PRIVILEGES TO joe;# 撤销joe用户的sysadmin权限
openGauss=# REVOKE ALL PRIVILEGES FROM joe;# 将用户user1的权限授权给用户user3
openGauss=# grant user1 to user3;# 再回收用户user3的权限
openGauss=# revoke user1 from user3;# 查询表权限
GRANT SELECT ON student TO PUBLIC;
GRANT SELECT ON student TO lisi;# 要使特定用户能够创建和访问MOT(DDL、DML、SELECT),以下语句只执行一次:
GRANT USAGE ON FOREIGN SERVER mot_server TO <user>;

*
*
*

openGauss GRANT授权相关推荐

  1. 在ASP.NET中基于Owin OAuth使用Client Credentials Grant授权发放Token

    OAuth真是一个复杂的东东,即使你把OAuth规范倒背如流,在具体实现时也会无从下手.因此,Microsoft.Owin.Security.OAuth应运而生(它的实现代码在Katana项目中),帮 ...

  2. Oracle初学者之grant授权(不错)

    Oracle初学者之grant授权 1.给数据库用户授权(对象为用户表) GRANT privilege[, ...] ON object[, ...] TO { PUBLIC | GROUP gro ...

  3. sql中grant授权语句revoke撤销语句

    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利 grant selec ...

  4. 关于GRANT授权时 “TO附近有语法错误,应为DOUBLECOLON,或ID.” 问题

    我们在数据库授权用户一些权限时,一般是如下写的: GRANT INSERT ON Table Student TO USERNAME 然而有时候却出现 : TO附近有语法错误,应为DOUBLECOLO ...

  5. mysql8使用grant授权修改

    在使用mysql5的时候,在linux安装完成mysql后,习惯使用grant all privileges on *.* to 'user'@'%':命令授权远程连接操作. 最近linux安装mys ...

  6. Oracle初学者之grant授权

    1.给数据库用户授权(对象为用户表) GRANT privilege[, ...] ON object[, ...] TO { PUBLIC | GROUP group| username} priv ...

  7. oauth2.0 php简化模式,OAuth2.0学习(1-5)授权方式2-简化模式(implicit grant type)

    授权方式2-简化模式(implicit grant type) 简化模式(implicit grant type)不通过第三方应用程序的服务器,直接在浏览器中向认证服务器申请令牌,跳过了"授 ...

  8. mysql 授权与回收权限_MySQL 操作命令梳理(4)-- grant授权和revoke回收权限

    在mysql维护工作中,做好权限管理是一个很重要的环节.下面对mysql权限操作进行梳理: mysql的权限命令是grant,权限撤销的命令时revoke: grant授权格式:grant 权限列表 ...

  9. 基于OWIN WebAPI 使用OAuth授权服务【客户端验证授权(Resource Owner Password Credentials Grant)】...

    适用范围 前面介绍了Client Credentials Grant ,只适合客户端的模式来使用,不涉及用户相关.而Resource Owner Password Credentials Grant模 ...

最新文章

  1. 从根因入手,更有效率,效果也更好
  2. 地图下面的标尺是什么意思_房屋产权70年产权吧,下面的使用年限是什么意思?...
  3. Python中必备知识点:对字符编码的基本操作
  4. 负载均衡设备oracle,Oracle RAC 服务器端联接负载均衡(Load Balance)
  5. C语言在main中输入2个整数ab,2014年计算机等级二级C语言程序设计习题
  6. 自监督学习的发展趋势:事半功倍的模型训练和数据效能
  7. 设计中色彩的注意事项有哪些
  8. net.conn read 判断数据读取完毕_单方验方|如何应对千万级工商数据抓取(一)
  9. Puzzle——模拟
  10. SpringBoot入门篇-简介
  11. Windows Server AppFabric分布式缓存详解
  12. 小强统一认证中心-部署实例
  13. 2021年电子元器件行业涨价趋势已现
  14. Oracle无法标识锁定数据文件,启动错误ORA-01157: 无法标识/锁定数据文件 解决方案...
  15. win7纯净版安装mysql_win7旗舰版64位安装mysql
  16. vue 美食杰项目 登录验证
  17. eden区分配至s0、s1
  18. python3 urllib 内存泄露_【专家专栏】张昊 | 从urllib2的内存泄露看python的GC
  19. CTF题库RSA实践 (RSA-Tool2 by tE! 工具的使用)
  20. 【链表】如何判断两个单向链表是否有相交,并找出交点

热门文章

  1. 虚幻4(UE4)在游戏进行的情况下按esc呼出一个菜单并暂停游戏
  2. Android 查看隐私权限方法调用者集合
  3. Python:正则表达式match、search、findall、finditer区别,group()、groups()与group(index)的区别
  4. 中国桥梁支座市场趋势报告、技术动态创新及市场预测
  5. 推荐十个适合机械学院本科生大创科研(以智能机械设计为主题)的课题
  6. 靠近一點點 (恶作剧之吻电视原声带).mp3铃声 靠近一點點 (...
  7. Nature:中科院先进院发现空间扩展生境定殖的进化稳定性策略
  8. PeckShield&星球日报|2019区块链安全年报
  9. 【20211215】神经机器翻译
  10. CDN加速是什么意思