更新日期:2024年09月11日
用户权限设置
给用户直接授予某对象的权限,请使用《GBase 8c V5_3.0.0_SQL 手册》GRANT。
将Schema 中的表或者视图对象授权给其他用户或角色时,
需要将表或视图所属Schema
的USAGE 权限同时授予该用户或角色。否则用户或角色将只能看到这些对象的名称,
并不能实际进行对象访问。
例如,
下面示例将Schema tpcds 的权限赋给用户joe 后,
将表tpcds.web_returns 的select
权限赋给用户joe。
postgres=# GRANT USAGE ON SCHEMA tpcds TO joe;
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
170
postgres=# GRANT SELECT ON TABLE tpcds.web_returns to joe;
给用户指定角色,使用户继承角色所拥有的对象权限
创建角色。
新建一个角色lily,同时给角色指定系统权限CREATEDB:
postgres=# CREATE ROLE lily WITH CREATEDB PASSWORD "xxxxxxxxx";
给角色赋予对象权限,请使用《GBase 8c V5_3.0.0_SQL 手册》GRANT。
例如,
将模式tpcds 的权限赋给角色lily 后,
将表tpcds.web_returns 的select 权限赋给角
色lily。
postgres=# GRANT USAGE ON SCHEMA tpcds TO lily;
postgres=# GRANT SELECT ON TABLE tpcds.web_returns to lily;
将角色的权限赋予用户。
postgres=# GRANT lily to joe;
当将角色的权限赋予用户时,角色的属性并不会传递到用户。
回收用户权限,请使用《GBase 8c V5_3.0.0_SQL 手册》REVOKE。