Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

CHECK GRANT

CHECK GRANT 查询用于检查当前用户/角色是否已被授予某项特定权限。

语法

查询的基本语法如下:

CHECK GRANT privilege[(column_name [,...])] [,...] ON {db.table[*]|db[*].*|*.*|table[*]|*}
  • privilege — 权限类型。

示例

如果该用户此前已被授予该权限,则 check_grant 的返回值为 1。否则,check_grant 的返回值为 0

如果 table_1.col1 存在,且当前用户被授予了权限 SELECT/SELECT(con) 或被授予了拥有该权限的角色,则返回值为 1

CHECK GRANT SELECT(col1) ON table_1;
┌─result─┐
│      1 │
└────────┘

如果 table_2.col2 不存在,或者当前用户未被授予 SELECT/SELECT(con) 权限或具有该权限的角色,则返回 0

CHECK GRANT SELECT(col2) ON table_2;
┌─result─┐
│      0 │
└────────┘

通配符

指定权限时,可以使用星号 (*) 代替表名或数据库名。有关通配符规则,请参见 WILDCARD GRANTS

Navigation