日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文檔

用戶和權限管理

更新時間:

StarRocks的權限管理系統支持表級別細粒度的權限控制、基于角色的權限訪問控制,以及白名單機制。

背景信息

StarRocks 2.x版本和StarRocks 3.x版本在使用上存在一定的差異,更多信息請參見社區文檔StarRocks 2.5StarRocks 3.2。

創建用戶

重要

擁有ADMIN權限,或任意層級的GRANT權限的用戶才可以創建新用戶。

語法

CREATE USER user_identity [auth_option] [DEFAULT ROLE 'role_name'];

涉及參數如下:

  • user_identity:用戶標識。以username@'userhost'username@['domain']的形式標明。

  • [auth_option]:認證方式。可選方式包括:

    • IDENTIFIED BY 'auth_string'

    • IDENTIFIED WITH auth_plugin

    • IDENTIFIED WITH auth_plugin BY 'auth_string'

    • IDENTIFIED WITH auth_plugin AS 'auth_string'

  • DEFAULT ROLE:當前用戶的默認角色。

示例

  • 創建一個無密碼用戶,且不指定host。

    CREATE USER 'jack';
  • 使用明文密碼創建用戶,允許其從172.10.**.**登錄。

    CREATE USER 'jack'@'172.10.**.**' IDENTIFIED WITH mysql_native_password BY '123456';
  • 使用密文密碼創建用戶,允許其從172.10.**.**登錄。

    CREATE USER 'jack'@'172.10.**.**' IDENTIFIED BY PASSWORD '6BB4837EB74329105EE4568DDA7DC67ED2CA****';
    說明

    您可以通過PASSWORD()方法獲得密文密碼。例如,SELECT PASSWORD('123456');。

  • 創建一個允許從192.168子網登錄的用戶,同時指定其角色為example_role。

    CREATE USER 'jack'@'192.168.%' DEFAULT ROLE 'example_role';
  • 創建一個允許從域名example_domain登錄的用戶。

    CREATE USER 'jack'@['example_domain'] IDENTIFIED BY '12345';

修改用戶密碼

重要
  • 擁有ADMIN權限,或者GLOBAL層級GRANT權限的用戶,可以設置任意用戶的密碼。

  • 普通用戶可以設置自己對應的User Identity的密碼,自己對應的User Identity可以通過SELECT CURRENT_USER();命令查看。

  • 擁有非GLOBAL層級GRANT權限的用戶,不可以設置已存在用戶的密碼,僅能在創建用戶時指定密碼。

  • root用戶的密碼僅root用戶可以重置。

語法

SET PASSWORD [FOR user_identity] = [PASSWORD('plain password')]|['hashed password'];

示例

  • 修改當前用戶的密碼

    SET PASSWORD = PASSWORD('123456');
    SET PASSWORD = '6BB4837EB74329105EE4568DDA7DC67ED2CA****';
  • 修改指定用戶密碼

    SET PASSWORD FOR 'jack'@'192.%' = PASSWORD('123456');
    SET PASSWORD FOR 'jack'@['domain'] = '6BB4837EB74329105EE4568DDA7DC67ED2CA****';
說明

您可以通過PASSWORD()方法獲得密文密碼。

刪除用戶

重要

擁有ADMIN權限的用戶可以刪除所有用戶。

DROP USER 'user_identity';

授予權限

重要
  • 擁有ADMIN權限,或者GLOBAL層級GRANT權限的用戶,可以授予任意用戶的權限。

  • 擁有DATABASE層級GRANT權限的用戶,可以授予任意用戶對指定數據庫的權限。

  • 擁有TABLE層級GRANT權限的用戶,可以授予任意用戶對指定數據庫中指定表的權限。

  • ADMIN_PRIV權限只能在GLOBAL層級授予或撤銷。

  • 擁有GLOBAL層級GRANT_PRIV實際等同于擁有ADMIN_PRIV,因為該層級的GRANT_PRIV有授予任意權限的權限,請謹慎授予該權限。

StarRocks 3.x版本

  • 將所有數據庫及庫中所有表的讀取權限授予用戶。

    GRANT SELECT ON *.* TO 'jack'@'%';
  • 將數據庫db1及其中所有表的導入權限授予角色。

    GRANT INSERT ON db1.* TO ROLE '<role_name>';
  • 將所有資源的使用權限授予用戶。

    GRANT USAGE ON RESOURCE * TO 'jack'@'%';

StarRocks 2.x版本

  • 授予指定用戶數據庫級或表級權限

    GRANT privilege_list ON db_name[.tbl_name] TO user_identity [ROLE role_name];
  • 授予指定用戶指定資源權限

    GRANT privilege_list ON RESOURCE resource_name TO user_identity [ROLE role_name];

涉及參數如下:

  • privilege_list:需要賦予的權限列表,以逗號分隔。權限如下:

    • NODE_PRIV:節點變更權限。包括FE、BE、BROKER節點的添加、刪除、下線等操作。目前該權限只能授予root用戶。

    • GRANT_PRIV:權限變更權限。允許執行包括授權、撤權,添加、刪除、變更用戶或角色等操作。

    • SELECT_PRIV:對數據庫、表的只讀權限。

    • LOAD_PRIV:對數據庫、表的寫權限。包括LOAD、INSERT、DELETE等。

    • ALTER_PRIV:對數據庫、表的更改權限。包括重命名庫、表;添加、刪除、變更列;添加、刪除分區等操作。

    • CREATE_PRIV:創建數據庫、表、視圖的權限。

    • DROP_PRIV:刪除數據庫、表、視圖的權限。

    • USAGE_PRIV:資源的使用權限。

  • db_name:數據庫名。

  • tbl_name:表名。

  • user_identity:用戶標識。以username@'userhost'username@['domain']的形式標明。

  • ROLE:將權限賦予指定的ROLE,如果指定的ROLE不存在,則會自動創建。

撤銷權限

重要
  • 擁有ADMIN權限,或者GLOBAL層級GRANT權限的用戶,可以撤銷任意用戶的權限。

  • 擁有DATABASE層級GRANT權限的用戶,可以撤銷任意用戶對指定數據庫的權限。

  • 擁有TABLE層級GRANT權限的用戶,可以撤銷任意用戶對指定數據庫中指定表的權限。

StarRocks 3.x版本

  • 撤銷指定用戶對指定表的SELECT權限

    REVOKE SELECT ON TABLE sr_member FROM USER 'jack'@'172.10.**.**';
  • 撤銷指定角色對指定資源的使用權限

    REVOKE USAGE ON RESOURCE '<resource_name>' FROM ROLE '<role_name>';

StarRocks 2.x版本

  • 撤銷指定用戶數據庫級或表級權限

    REVOKE privilege_list ON db_name[.tbl_name] FROM user_identity [ROLE role_name];
  • 撤銷指定用戶指定資源權限

    REVOKE privilege_list ON RESOURCE resource_name FROM user_identity [ROLE role_name];

創建角色

重要

擁有ADMIN權限的用戶才可以創建角色。

您可以對創建好的角色進行授權操作,擁有該角色的用戶擁有角色被賦予的權限。

CREATE ROLE <role_name>;

查看角色

SHOW ROLES;

刪除角色

重要

擁有GRANT_PRIV或ADMIN_PRIV權限的用戶可以刪除角色。

DROP ROLE <role_name>;

查看用戶屬性

SHOW PROPERTY [FOR user] [LIKE key];

涉及參數如下:

  • user:用戶名。

  • key:相關屬性關鍵字。

示例如下:

  • 查看指定用戶的屬性。

    SHOW PROPERTY FOR 'jack';
  • 看指定用戶導入cluster相關屬性。

    SHOW PROPERTY FOR 'jack' LIKE '%load_cluster%';