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

grants_to_roles

grants_to_roles ビューをクエリすることで、ユーザー定義のロールに付与された権限を確認できます。

注記

デフォルトでは、user_admin ロールを持つユーザーまたはロールのみがこのビューにアクセスできます。他のユーザーにこのビューの SELECT 権限を付与するには、GRANT を使用してください。

grants_to_roles には以下のフィールドが提供されています。

FieldDescription
GRANTEEこの権限が付与されたロール。ユーザー定義のロールのみがこのビューに表示され、システム定義のものは表示されません。
OBJECT_CATALOGオブジェクトが属する catalog。権限が SYSTEM、RESOURCE GROUP、RESOURCE、USER、または GLOBAL FUNCTION レベルの権限である場合は NULL が返されます。
OBJECT_DATABASEオブジェクトが属するデータベース。権限が SYSTEM、RESOURCE GROUP、RESOURCE、USER、GLOBAL FUNCTION、または CATALOG レベルの権限である場合は NULL が返されます。
OBJECT_NAMEオブジェクトが属するテーブル。権限が SYSTEM、RESOURCE GROUP、RESOURCE、USER、GLOBAL FUNCTION、CATALOG、または DATABASE レベルの権限である場合は NULL が返されます。
OBJECT_TYPEオブジェクトのタイプ。
PRIVILEGE_TYPE権限のタイプ。同じオブジェクトに対する異なる権限はマージされ、1 行で返されます。以下の例に示すように、role_testdefault_catalog.db_test.tbl1 に対して SELECT および ALTER 権限を持っています。
IS_GRANTABLE被付与者が付与オプションを持っているかどうか。

例:

MySQL > SELECT * FROM sys.grants_to_roles LIMIT 5\G
*************************** 1. row ***************************
GRANTEE: role_test
OBJECT_CATALOG: default_catalog
OBJECT_DATABASE: db_test
OBJECT_NAME: tbl1
OBJECT_TYPE: TABLE
PRIVILEGE_TYPE: SELECT, ALTER
IS_GRANTABLE: NO
*************************** 2. row ***************************
GRANTEE: role_test
OBJECT_CATALOG: default_catalog
OBJECT_DATABASE: db_test
OBJECT_NAME: tbl2
OBJECT_TYPE: TABLE
PRIVILEGE_TYPE: SELECT
IS_GRANTABLE: YES
*************************** 3. row ***************************
GRANTEE: role_test
OBJECT_CATALOG: default_catalog
OBJECT_DATABASE: db_test
OBJECT_NAME: mv_test
OBJECT_TYPE: MATERIALIZED VIEW
PRIVILEGE_TYPE: SELECT
IS_GRANTABLE: YES
*************************** 4. row ***************************
GRANTEE: role_test
OBJECT_CATALOG: NULL
OBJECT_DATABASE: NULL
OBJECT_NAME: NULL
OBJECT_TYPE: SYSTEM
PRIVILEGE_TYPE: CREATE RESOURCE GROUP
IS_GRANTABLE: NO