メインコンテンツまでスキップ

SHOW GRANTS

説明

このステートメントはユーザー権限を表示するために使用されます。

構文

SHOW [ALL] GRANTS [FOR <user_identity>];

オプションパラメータ

1. [ALL]

すべてのユーザーの権限を表示するかどうか。

2. <user_identity>

権限を表示するユーザーを指定します。user_identityCREATE USERコマンドで作成されている必要があります。

戻り値

ColumnDescription
UserIdentityユーザーアイデンティティ
Commentコメント
Passwordパスワードが設定されているかどうか
Rolesロール
GlobalPrivsグローバル権限
CatalogPrivsカタログ権限
DatabasePrivsデータベース権限
TablePrivsテーブル権限
ColPrivsカラム権限
ResourcePrivsリソース権限
WorkloadGroupPrivsWorkloadGroup権限

アクセス制御要件

このSQLコマンドを実行するユーザーは、少なくとも以下の権限を持っている必要があります:

PrivilegeObjectNotes
GRANT_PRIVUser or RoleUser or RoleがGRANT_PRIV権限を持つ場合、すべてのユーザー権限を表示でき、そうでなければ現在のユーザーの権限のみ表示可能

使用上の注意

  • SHOW ALL GRANTSはすべてのユーザーの権限を表示できますが、GRANT_PRIV権限が必要です。
  • user_identityが指定されている場合、指定されたユーザーの権限が表示されます。user_identityCREATE USERコマンドで作成されている必要があります。
  • user_identityが指定されていない場合、現在のユーザーの権限が表示されます。
  • DorisはRBAC(Role-Based Access Control)モデルに基づく権限制御を実装しています。そのため、ここで表示される権限は実際にはユーザーに割り当てられたすべてのロールの結合権限です。権限がどの具体的なロールに由来するかを確認したい場合は、SHOW ROLESコマンドを使用して詳細を表示できます。

  1. すべてのユーザー権限情報を表示する。

    SHOW ALL GRANTS;
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | UserIdentity | Comment | Password | Roles | GlobalPrivs | CatalogPrivs | DatabasePrivs | TablePrivs | ColPrivs | ResourcePrivs | WorkloadGroupPrivs |
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | 'root'@'%' | ROOT | No | operator | Node_priv,Admin_priv | NULL | internal.information_schema: Select_priv; internal.mysql: Select_priv | NULL | NULL | NULL | normal: Usage_priv |
    | 'admin'@'%' | ADMIN | No | admin | Admin_priv | NULL | internal.information_schema: Select_priv; internal.mysql: Select_priv | NULL | NULL | NULL | normal: Usage_priv |
    | 'jack'@'%' | | No | | NULL | NULL | internal.information_schema: Select_priv; internal.mysql: Select_priv | NULL | NULL | NULL | normal: Usage_priv |
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
  2. 指定されたユーザーの権限を表示する

    SHOW GRANTS FOR jack@'%';
    +--------------+---------+----------+-------+-------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | UserIdentity | Comment | Password | Roles | GlobalPrivs | CatalogPrivs | DatabasePrivs | TablePrivs | ColPrivs | ResourcePrivs | WorkloadGroupPrivs |
    +--------------+---------+----------+-------+-------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | 'jack'@'%' | | No | | NULL | NULL | internal.information_schema: Select_priv; internal.mysql: Select_priv | NULL | NULL | NULL | normal: Usage_priv |
    +--------------+---------+----------+-------+-------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
  3. 現在のユーザーの権限を表示する

    SHOW GRANTS;
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | UserIdentity | Comment | Password | Roles | GlobalPrivs | CatalogPrivs | DatabasePrivs | TablePrivs | ColPrivs | ResourcePrivs | WorkloadGroupPrivs |
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+
    | 'root'@'%' | ROOT | No | operator | Node_priv,Admin_priv | NULL | internal.information_schema: Select_priv; internal.mysql: Select_priv | NULL | NULL | NULL | normal: Usage_priv |
    +--------------+---------+----------+----------+----------------------+--------------+-----------------------------------------------------------------------+------------+----------+---------------+--------------------+