getTableAccess
语法
getTableAccess(dbUrl, table)
参数
dbUrl 字符串标量,表示分布式数据库的地址。
table 字符串标量,表示分布式表的表名。
详情
查看哪些用户和组具有与分布式数据表 dbUrl/table 相关(包括 ALLOW 和 DENY 权限状态)的权限。
该函数仅限 admin 和对数据库 dbUrl 具有 DB_OWNER 或 DB_MANAGE 权限的用户调用。
返回一个表:
- name 具有相关权限的对象的名称。
- type 该对象的类型,可选值为 user 和 group,分别对应用户和组。
- TABLE_READ, TABLE_INSERT, TABLE_UPDATE, TABLE_DELETE 分别指代对应权限,权限状态包括 ALLOW, DENY, NONE。关于用户权限的更多信息可参考用户权限管理。
例子
具有 DB_OWNER 权限的用户 user1 创建了分布式表 dfs://testDB/pt
,并为用户 user2 授予
TABLE_READ 权限,禁止用户 user3 的 TABLE_INSERT 权限,为组 group1 授予 TABLE_DELETE 权限。此时,用户 user1
可通过 getTableAccess
函数查看哪些用户具有 "dfs://testDB/pt" 相关的权限。
login(`user1, `123456)
getTableAccess("dfs://testDB", "pt")
name | type | TABLE_READ | TABLE_INSERT | TABLE_UPDATE | TABLE_DELETE |
---|---|---|---|---|---|
group1 | group | NONE | NONE | NONE | ALLOW |
user3 | user | NONE | DENY | NONE | NONE |
user2 | user | ALLOW | NONE | NONE | NONE |
admin | user | ALLOW | ALLOW | ALLOW | ALLOW |