DROP ROLE

从当前工作空间删除一个角色。

Workspace 角色管理

语法

DROP ROLE [IF EXISTS] role_name;

参数说明

参数必填说明
IF EXISTS
IF EXISTS
如果角色不存在则不报错,直接忽略
role_name
role_name
要删除的角色名称

使用示例

  1. 删除角色

    simple_role
    simple_role

    DROP ROLE simple_role;

  2. 使用

    IF EXISTS
    IF EXISTS
    删除角色,避免角色不存在时报错:

    DROP ROLE IF EXISTS temporary_role;

  3. 删除角色

    report_user
    report_user

    DROP ROLE report_user;

注意事项

  • 执行此命令需要具备
    workspace_admin
    workspace_admin
    角色。
  • 删除角色会自动撤销该角色对所有用户的授予。已被分配该角色的用户将立即失去通过该角色获得的所有权限。
  • 删除角色同时会撤销该角色持有的所有对象权限(通过
    GRANT ... TO ROLE
    GRANT ... TO ROLE
    授予的权限)。
  • 删除操作不可恢复,请在删除前确认该角色不再被使用。
  • 使用
    IF EXISTS
    IF EXISTS
    选项可以避免在角色不存在时出现错误提示。
  • 系统预置角色(如
    workspace_admin
    workspace_admin
    workspace_dev
    workspace_dev
    workspace_analyst
    workspace_analyst
    workspace_sre
    workspace_sre
    workspace_user
    workspace_user
    )不可删除。
  • 删除前建议先通过
    SHOW GRANTS TO ROLE role_name
    SHOW GRANTS TO ROLE role_name
    查看该角色持有的权限,以及通过
    SHOW GRANTS TO USER user_name
    SHOW GRANTS TO USER user_name
    确认哪些用户持有该角色。

删除 Instance Role

DROP INSTANCE ROLE IF EXISTS <role_name>;

使用说明

  • 在执行删除操作前,请确保不再需要该角色。删除后,该角色将无法恢复。
  • 使用
    IF EXISTS
    IF EXISTS
    选项可以避免在角色不存在时出现错误提示。
  • 需要
    INSTANCE_ADMIN
    INSTANCE_ADMIN
    权限才可以执行此操作。
  • 删除 Instance Role 会自动撤销所有已被授予该角色的用户的对应权限。
联系我们
预约咨询
微信咨询
电话咨询