Oracle数据库权限分类
很多刚学习Oracle数据库的小伙伴,对Oracle的权限和角色的理解不是很清楚。Oracle数据库的权限可以分为系统权限和对象权限两类。

系统权限
主要是针对用户的,是系统规定用户使用数据库的权限。系统权限分类如下:
- DBA:是系统最高权限,拥有全部特权,也只有DBA才可以创建数据库结构;
- RESOURCE:拥有RESOURCE权限的用户只可以创建实体,不可以创建数据库结构;
- CONNECT:拥有CONNECT权限的用户只可以登录Oracle数据库,不可以创建实体和数据库结构;
对象权限
主要是针对表或视图等,是用户对于表、视图的读取权限等。
权限的赋予与回收
权限可以赋予用户并回收。也可以在系统和对象权限之间传递。
系统权限传递
系统权限只能由DBA用户授予,但是通过withadminoption可以赋予另一个DBA权限传递的功能。通过权限传递,另一个用户也拥有该权限。
对象权限传递
对象权限可以通过withgrantoption进行传递。即拥有该表的属主给另一个用户赋予该表的读取权限。当对象被回收时,该权限也会级联的回收。
角色管理
角色是一组权限的集合,将角色赋予一个用户,用户就具有此角色中的所有权限。预定义角色是在数据库进行安装后,系统自动创建的一些常用角色,基本可以满足自己日常需求。自定义角色根据自己的需求,将权限赋予一个角色,并通过角色赋予给用户。
创建和管理角色
可以创建自己的角色,也可以使用预定义角色。创建带口令的角色可以使用createrole角色名identifiedbypassword命令。
- 创建预定义角色:在Oracle数据库进行安装后,系统自动创建的一些常用角色。
- 赋予用户:将角色赋予用户后,该用户就具备了该角色中的所有权限。
- 查看角色权限:可以查看角色所具备的权限。
- 生效角色:可以使用setrole语句将角色的权限生效。
- 删除角色:角色删除后,用户也就不再具有该角色相应的权限。
以上是本小编对于Oracle数据库权限和角色管理的一些理解和总结,希望对大家有所帮助。更多Oracle数据库相关知识,欢迎关注“IT那活儿”公众号。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6270.html
