[oracle]Oracle角色管理

时间:2021-03-29 02:41:08

假如我们直接给每一个用户赋予权限,这将是一个巨大又麻烦的工作,同时也不方便DBA进行管理。通过采用角色,使得:

  • 权限管理更方便。将角色赋予多个用户,实现不同用户相同的授权。如果要修改这些用户的权限,只需修改角色即可;
  • 角色的权限可以激活和关闭。使得DBA可以方便的选择是否赋予用户某个角色;
  • 提高性能,使用角色减少了数据字典中授权记录的数量,通过关闭角色使得在语句执行过程中减少了权限的确认。

[oracle]Oracle角色管理

(1)角色的信息存在dba-roles数据字典中,如下所示:

[oracle]Oracle角色管理

(2)创建角色:

CREATE ROLE role_name [NOT IDENTIFIED | IDENTIFIED { BY password | EXTERNALLY | GLOABAL | USING package} ]

意思如下:

  • role_name:角色名字;
  • NOT IDENTIFIED | IDENTIFIED:激活角色前不需要/需要密码认证;
  • BY password:认证密码;
  • USING package:创建应用角色,该角色只能通过授权的package激活;
  • EXTERNALLY:角色在激活前,必须通过外部服务授权;
  • GLOBALLY:使用STE ROLE激活角色时,用户必须通过企业路径服务授权使用角色

【未完待续。。。】