计算组授权管理

本文为您介绍Hologres中查看用户访问计算组权限、设置默认计算组、设置用户的默认计算组等计算组授权相关命令。

注意事项

  • 仅Hologres V2.0.4及以上版本支持使用计算组实例,如果您的实例是V2.0.4以下版本,请您使用自助升级或加入Hologres钉钉交流群反馈,详情请参见如何获取更多的在线支持?

  • 开启计算组实例需要后台配置,如需使用,请您加入实时数仓Hologres交流群申请。

查看用户访问计算组权限

  • 命令格式

    使用如下SQL查看当前实例下所有的计算组的用户权限信息:

    SELECT * FROM hologres.hg_warehouse_users;
  • 参数说明

    hg_warehouse_users表主要包含的字段信息如下:

    字段

    字段类型

    说明

    示例

    warehouse_name

    TEXT

    计算组名称。

    init_warehouse

    warehouse_id

    INTEGER

    计算组ID,是计算组的唯一ID。

    1

    username

    TEXT

    拥有该计算组权限的用户名称。

    BASIC$user1

查看用户的默认计算组

  • 命令格式

    使用如下SQL查看当前实例下所有的用户的默认计算组权限信息,每个用户只有一个默认计算组。

    SELECT * FROM hologres.hg_user_default_warehouse;
  • 参数说明

    hg_user_default_warehouse表包含的字段信息如下:

    字段

    字段类型

    说明

    示例

    warehouse_name

    TEXT

    计算组名称。

    init_warehouse

    warehouse_id

    INTEGER

    计算组ID,是计算组的唯一ID。

    1

    username

    TEXT

    拥有该计算组权限的用户名称。

    BASIC$user1

设置默认计算组

  • 命令格式

    使用如下SQL,设置实例的默认计算组。

    说明

    每个用户默认都有默认计算组的权限。

    CALL hg_set_default_warehouse ('<warehouse_name>');
  • 参数说明

    参数

    类型

    说明

    warehouse_name

    TEXT

    需要设置为默认计算组的计算组名称

为用户赋予计算组的权限

  • 命令格式

    您可以使用如下SQL,为指定用户赋予指定计算组的权限。

    CALL hg_grant_warehouse_access_privilege ('<warehouse_name>','"<user_name>"');
  • 参数说明

    参数

    类型

    说明

    warehouse_name

    TEXT

    需要赋予权限的计算组名称。

    user_name

    TEXT

    用户名,示例如下:

    • RAM账号:p4_2xxxxxxxxx。

    • 自定义账号:BASIC$user1。

回收用户计算组的权限

  • 命令格式

    您可以使用如下SQL,回收指定用户的指定计算组的权限:

    CALL hg_revoke_warehouse_access_privilege ('<warehouse_name>','"<user_name>"');
  • 参数说明

    参数

    类型

    说明

    warehouse_name

    TEXT

    需要回收权限的计算组名称。

    user_name

    TEXT

    用户名,示例如下:

    • RAM账号:p4_2xxxxxxxxx。

    • 自定义账号:BASIC$user1。

设置用户的默认计算组

  • 命令格式

    • 设置用户的默认计算组。

      CALL hg_set_user_default_warehouse ('"<user_name>"','<warehouse_name>');
    • 清除用户设置的默认计算组。

      CALL hg_reset_user_default_warehouse ('"<user_name>"');
  • 参数说明

    参数

    类型

    说明

    user_name

    TEXT

    用户名,示例如下:

    • RAM账号:p4_2xxxxxxxxx。

    • 自定义账号:BASIC$user1。

    warehouse_name

    TEXT

    需要设置为默认计算组的计算组名称。

清理连接

  • 注意事项

    • 执行SQL需要实例的Superuser权限。

    • 由于Superuser可以访问所有的计算组,所以实际上该函数不会断开Superuser的连接。

  • 命令格式

    SELECT hg_kill_unprivileged_warehouse_connections();