11.3.3 角色的分配和回收
只有将角色授予用户,用户才会具有角色中的权限。可以一次将角色授予多个用户,这样这些用户就都具有了这个角色中包含的权限。将角色授予用户的命令是GRANT,授予角色的方法与授予权限的方法相同,只是将权限名用角色名代替就可以了。例如,下面的语句将角色role1授予用户user1和user2:
SQL>GRANT role1 TO user1,user2;
在一般情况下,将角色授予用户的操作由sys用户完成,普通用户如果要完成这样的操作,必须具有GRANT ANY ROLE的系统权限。
要将角色从用户回收,需要执行REVOKE命令。角色被回收后,用户所具有的属于这个角色的权限都将被回收。从用户回收角色与回收权限的方法是相同的,这样的操作一般也由sys用户完成。例如,下面的语句将角色role1从用户user1回收:
SQL>REVOKE role1 FROM user1;