メインコンテンツまでスキップ
バージョン: Latest-3.4

REVOKE

説明

特定の権限またはロールをユーザーまたはロールから取り消します。StarRocks がサポートする権限については、Privileges supported by StarRocks を参照してください。

ヒント
  • 一般ユーザーは、他のユーザーやロールから WITH GRANT OPTION キーワードを持つ自分の権限のみを取り消すことができます。WITH GRANT OPTION については、GRANT を参照してください。
  • user_admin ロールを持つユーザーのみが、他のユーザーから権限を取り消す権限を持っています。

構文

権限を取り消す

取り消せる権限はオブジェクトに依存します。以下はオブジェクトに基づく構文の説明です。

システム

REVOKE
{ CREATE RESOURCE GROUP | CREATE RESOURCE | CREATE EXTERNAL CATALOG | REPOSITORY | BLACKLIST | FILE | OPERATE }
ON SYSTEM
FROM { ROLE | USER} {<role_name>|<user_identity>}

リソースグループ

REVOKE
{ ALTER | DROP | ALL [PRIVILEGES] }
ON { RESOURCE GROUP <resourcegroup_name> [, <resourcegroup_name>,...]ALL RESOURCE GROUPS}
FROM { ROLE | USER} {<role_name>|<user_identity>}

リソース

REVOKE
{ USAGE | ALTER | DROP | ALL [PRIVILEGES] }
ON { RESOURCE <resource_name> [, <resource_name>,...]ALL RESOURCES}
FROM { ROLE | USER} {<role_name>|<user_identity>}

ユーザー

REVOKE IMPERSONATE ON USER <user_identity> FROM USER <user_identity>;

グローバル UDF

REVOKE
{ USAGE | DROP | ALL [PRIVILEGES]}
ON { GLOBAL FUNCTION <function_name>(input_data_type) [, <function_name>(input_data_type),...]
| ALL GLOBAL FUNCTIONS }
FROM { ROLE | USER} {<role_name>|<user_identity>}

内部カタログ

REVOKE 
{ USAGE | CREATE DATABASE | ALL [PRIVILEGES]}
ON CATALOG default_catalog
FROM { ROLE | USER} {<role_name>|<user_identity>}

外部カタログ

REVOKE  
{ USAGE | DROP | ALL [PRIVILEGES] }
ON { CATALOG <catalog_name> [, <catalog_name>,...] | ALL CATALOGS}
FROM { ROLE | USER} {<role_name>|<user_identity>}

データベース

REVOKE 
{ ALTER | DROP | CREATE TABLE | CREATE VIEW | CREATE FUNCTION | CREATE MATERIALIZED VIEW | ALL [PRIVILEGES] }
ON {{ DATABASE <database_name> [, <database_name>,...]} | ALL DATABASES }
FROM { ROLE | USER} {<role_name>|<user_identity>}
  • このコマンドを実行する前に、SET CATALOG を実行する必要があります。

テーブル

REVOKE  
{ ALTER | DROP | SELECT | INSERT | EXPORT | UPDATE | DELETE | ALL [PRIVILEGES]}
ON { TABLE <table_name> [, < table_name >,...]
| ALL TABLES} IN
{ { DATABASE <database_name> [, <database_name>,...]} | ALL DATABASES }
FROM { ROLE | USER} {<role_name>|<user_identity>}
  • このコマンドを実行する前に、SET CATALOG を実行する必要があります。

  • db.tbl を使用してテーブルを表すこともできます。

    REVOKE <priv> ON TABLE db.tbl FROM {ROLE <role_name> | USER <user_identity>}

ビュー

REVOKE  
{ ALTER | DROP | SELECT | ALL [PRIVILEGES]}
ON { VIEW <view_name> [, < view_name >,...]
ALL VIEWS} IN
{ { DATABASE <database_name> [, <database_name>,...]} | ALL DATABASES }
FROM { ROLE | USER} {<role_name>|<user_identity>}
  • このコマンドを実行する前に、SET CATALOG を実行する必要があります。

  • db.view を使用してビューを表すこともできます。

    REVOKE <priv> ON VIEW db.view FROM {ROLE <role_name> | USER <user_identity>}

マテリアライズドビュー

REVOKE
{ SELECT | ALTER | REFRESH | DROP | ALL [PRIVILEGES]}
ON { MATERIALIZED VIEW <mv_name> [, < mv_name >,...]
ALL MATERIALIZED VIEWS} IN
{ { DATABASE <database_name> [, <database_name>,...] } | ALL [DATABASES] }
FROM { ROLE | USER} {<role_name>|<user_identity>}
  • このコマンドを実行する前に、SET CATALOG を実行する必要があります。

  • db.mv を使用して mv を表すこともできます。

    REVOKE <priv> ON MATERIALIZED VIEW db.mv FROM {ROLE <role_name> | USER <user_identity>}

関数

REVOKE
{ USAGE | DROP | ALL [PRIVILEGES]}
ON { FUNCTION <function_name>(input_data_type) [, <function_name>(input_data_type),...]
ALL FUNCTIONS} IN
{ { DATABASE <database_name> [, <database_name>,...] } | ALL DATABASES }
FROM { ROLE | USER} {<role_name>|<user_identity>}
  • このコマンドを実行する前に、SET CATALOG を実行する必要があります。

  • db.function を使用して関数を表すこともできます。

    REVOKE <priv> ON FUNCTION <db_name>.<function_name>(input_data_type) FROM {ROLE <role_name> | USER <user_identity>}

ストレージボリューム

REVOKE
CREATE STORAGE VOLUME
ON SYSTEM
FROM { ROLE | USER} {<role_name>|<user_identity>}

REVOKE
{ USAGE | ALTER | DROP | ALL [PRIVILEGES] }
ON { STORAGE VOLUME < name > [, < name >,...]ALL STORAGE VOLUME}
FROM { ROLE | USER} {<role_name>|<user_identity>}

ロールを取り消す

REVOKE <role_name> [,<role_name>, ...] FROM ROLE <role_name>
REVOKE <role_name> [,<role_name>, ...] FROM USER <user_identity>

パラメータ

パラメータ説明
role_nameロール名。
user_identityユーザー識別子。例: 'jack'@'192.%'.
resourcegroup_nameリソースグループ名。
resource_nameリソース名。
function_name関数名。
catalog_name外部カタログの名前。
database_nameデータベース名。
table_nameテーブル名。
view_nameビュー名。
mv_nameマテリアライズドビューの名前。

権限を取り消す

ユーザー jack からテーブル sr_member の SELECT 権限を取り消します:

REVOKE SELECT ON TABLE sr_member FROM USER 'jack'@'192.%'

ロール test_role からリソース spark_resource の USAGE 権限を取り消します:

REVOKE USAGE ON RESOURCE 'spark_resource' FROM ROLE 'test_role';

ロールを取り消す

ユーザー jack からロール example_role を取り消します:

REVOKE example_role FROM 'jack'@'%';

ロール test_role からロール example_role を取り消します:

REVOKE example_role FROM ROLE 'test_role';

参照

GRANT