Перейти к основному содержимому

SHOW GRANTS

SHOW GRANTS отображает все привилегии, которые были предоставлены пользователю или роли.

Для получения дополнительной информации о ролях и привилегиях см. Обзор привилегий.

подсказка

Все роли и пользователи могут просматривать привилегии, предоставленные им, или роли, назначенные им. Только пользователи с ролью user_admin могут просматривать привилегии указанного пользователя или роли.

Синтаксис

SHOW GRANTS; -- Просмотр привилегий текущего пользователя.
SHOW GRANTS FOR ROLE <role_name>; -- Просмотр привилегий конкретной роли.
SHOW GRANTS FOR <user_identity>; -- Просмотр привилегий конкретного пользователя.

Параметры

  • role_name
  • user_identity

Возвращаемые поля:

-- Просмотр привилегий конкретного пользователя.
+--------------+--------+---------------------------------------------+
|UserIdentity |Catalog | Grants |
+--------------+--------+---------------------------------------------+

-- Просмотр привилегий конкретной роли.
+-------------+--------+-------------------------------------------------------+
|RoleName |Catalog | Grants |
+-------------+-----------------+----------------------------------------------+
ПолеОписание
UserIdentityИдентификатор пользователя, который отображается при запросе привилегий пользователя.
RoleNameИмя роли, которое отображается при запросе привилегий роли.
CatalogИмя каталога.
default возвращается, если операция GRANT выполняется на внутреннем каталоге Selena.
Имя external catalog возвращается, если операция GRANT выполняется на external catalog.
NULL возвращается, если операция, показанная в столбце Grants, назначает роли.
GrantsКонкретная операция GRANT.

Примеры

mysql> SHOW GRANTS;
+--------------+---------+----------------------------------------+
| UserIdentity | Catalog | Grants |
+--------------+---------+----------------------------------------+
| 'root'@'%' | NULL | GRANT 'root', 'testrole' TO 'root'@'%' |
+--------------+---------+----------------------------------------+

mysql> SHOW GRANTS FOR 'user_g'@'%';
+-------------+-------------+-----------------------------------------------------------------------------------------------+
|UserIdentity |Catalog |Grants |
+-------------+-------------------------------------------------------------------------------------------------------------+
|'user_g'@'%' |NULL |GRANT role_g, public to `user_g`@`%`; |
|'user_g'@'%' |NULL |GRANT IMPERSONATE ON USER `user_a`@`%` TO USER `user_g`@`%`; |
|'user_g'@'%' |default |GRANT CREATE_DATABASE ON CATALOG default_catalog TO USER `user_g`@`%`; |
|'user_g'@'%' |default |GRANT ALTER, DROP, CREATE_TABLE ON DATABASE db1 TO USER `user_g`@`%`; |
|'user_g'@'%' |default |GRANT CREATE_VIEW ON DATABASE db1 TO USER `user_g`@`%` WITH GRANT OPTION; |
|'user_g'@'%' |default |GRANT ALTER, DROP, SELECT, INGEST, EXPORT, DELETE, UPDATE ON TABLE db.* TO USER `user_g`@`%`; |
|'user_g'@'%' |default |GRANT ALTER, DROP, SELECT ON VIEW db2.view TO USER `user_g`@`%`; |
|'user_g'@'%' |Hive_catalog |GRANT USAGE ON CATALOG Hive_catalog TO USER `user_g`@`%` |
+-------------+--------------+-----------------------------------------------------------------------------------------------+

mysql> SHOW GRANTS FOR ROLE role_g;
+-------------+--------+-------------------------------------------------------+
|RoleName |Catalog | Grants |
+-------------+-----------------+----------------------------------------------+
|role_g |NULL | GRANT role_p, role_test TO ROLE role_g; |
|role_g |default | GRANT SELECT ON *.* TO ROLE role_g WITH GRANT OPTION; |
+-------------+--------+--------------------------------------------------------+

Ссылки

GRANT