GRANT DATABASE ROLE¶
アカウントロール、別のデータベースロール、またはユーザーにデータベースロールを割り当てます。あるデータベースロールに対して OWNERSHIP 権限を持つユーザーは、そのデータベースロールをアカウントロール、別のデータベースロール、同じデータベース内のユーザーのいずれかに付与することができます。データベースロールを他のロールに付与すると、データベースロールと他のロールとの間に「親子」関係(ロール階層 とも呼ばれます)が作成されます。データベースのロールに関する具体的な制限については、 データベースロールおよびロール階層 をご参照ください。
- こちらもご参照ください。
REVOKE DATABASE ROLE、 GRANT ROLE、 REVOKE ROLE、 GRANT <権限> ... TO ROLE
構文¶
GRANT DATABASE ROLE <name> TO { DATABASE ROLE <parent_role_name> | ROLE <parent_role_name> | USER <user_name> }
パラメーター¶
name
データベースロールの識別子(名前)を指定します。データベースロールが作成されるデータベース内で一意にする必要があります。
識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。
詳細については、 識別子の要件 をご参照ください。
識別子が
db_name.database_role_name
の形式で完全修飾されていない場合、コマンドはセッションの現在のデータベースでデータベースロールを検索します。DATABASE ROLE parent_role_name
指定されたデータベースロールにデータベースロールを付与します。親ロールがデータベースロールであり、識別子が
db_name.database_role_name
の形式で完全に修飾されていない場合、コマンドはセッションの現在のデータベースでデータベースロールを検索します。ROLE parent_role_name
指定されたアカウントロールにデータベースロールを付与します。
USER user_name
指定されたユーザーにデータベースロールを付与します。
アクセス制御の要件¶
この操作の実行に使用される ロール には、少なくとも次の 権限 が必要です。
権限またはロール |
オブジェクト |
注意 |
---|---|---|
OWNERSHIP |
データベースロール |
OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
例¶
SYSADMIN ロールにデータベースロール analyst
を付与します。
GRANT DATABASE ROLE analyst TO ROLE SYSADMIN;
データベースロール dr1
をデータベースロール dr2
に付与します。
GRANT DATABASE ROLE dr1 TO DATABASE ROLE dr2;
データベースロール dr3
をユーザー user1
に付与します。
GRANT DATABASE ROLE dr3 TO USER user1;