ロールを作成した後、他のユーザーまたはロールに任意のロールを付与できますが、自身にロールを付与したり、ループ状にロールを付与したりすることはできません。
現在、1つのロールを複数のユーザーまたはロールに同時に付与すること、複数のロールを1人のユーザーまたはロールに同時に付与すること、そして複数のロールを複数のユーザーまたはロールに同時に付与することがサポートされています。
前提条件
他のユーザーまたはロールにロールを付与する場合、現在のユーザーは付与されるロールを所有している必要があり、かつ ADMIN OPTION 権限を持っている必要があります。現在のユーザーが持つ権限に関する操作の詳細については、ユーザー権限の確認を参照してください。
操作例
ユーザーにロールを付与する
ロール
employeeをユーザーtest1に付与し、そのユーザーがこのロールを他のユーザーまたはロールに再付与できるようにします。obclient [oceanbase]> GRANT employee TO test1 WITH ADMIN OPTION;この例では、
WITH ADMIN OPTION句を使用して、現在のロールが他のロールやユーザーに再付与を許可するかどうかを指定します。ロール
employeeをユーザーtest1とユーザーtest2の両方に同時に付与します。obclient [oceanbase]> GRANT employee TO test1,test2;ロール
employeeとロールdeveloperをユーザーtest1に同時に付与します。obclient [oceanbase]> GRANT employee,developer TO test1;
ロールにロールを付与する
ロール
employeeをロールrole1に付与し、role1がこのロールの権限を他のロールやユーザーに再付与できるようにします。obclient [oceanbase]> GRANT employee TO role1 WITH ADMIN OPTION;この例では、
WITH ADMIN OPTION句を使用して、現在のロールが他のロールやユーザーに再付与を許可するかどうかを指定します。ロール
employeeをロールrole1とロールrole2の両方に同時に付与します。obclient [oceanbase]> GRANT employee TO role1,role2;ロール
employeeとロールdeveloperをロールrole1に同時に付与します。obclient [oceanbase]> GRANT employee,developer TO role1;
次のステップ
ロールを他のユーザーまたはロールに付与した後、該当するロールを持つユーザーは、そのロールに含まれる権限を使用する必要があります。また、そのロールを有効化する必要もあります。ロールの有効化に関する詳細な操作については、ロールの有効化を参照してください。
関連ドキュメント
GRANT ステートメントの詳細については、GRANTを参照してください。