2.为了回收用户系统权限的传递性(授权时使用了with admin option) , 须先回收该系统权限 , 在重新授予用户该权限‘
3.’如果一个用户的权限具有传递性 , 并且给其它用户授权 , 那么该用户系统权限被收回后 , 其它用户的系统权限并不会受影响;
2、对象权限
对象权限是指对某个特定模式对象的操作权限 。数据库模式对象所有者拥有该对象的所有对象权限 , 对象权限的管理实际上是对象所有者对其他用户操作该对象的权限管理 。在Oracle数据库中 , 不同类型的对象具有不同的对象权限 , 而有的对象并没有对象权限 , 只能通过系统权限进行管理 , 如簇、索引、触发器、数据库链接等 。
(1)对象权限的授予
在Oracle数据库中 , 用户可以直接访问同名Schema下的数据库对象 , 如果需要访问其它Schema下的数据库对象 , 就需要具有相应的对象权限 。对象权限授予的SQL语法为:
其中:
-object_privilege_list:对象权限列表 , 以逗号分隔;
-ALL PRIVILEGES:全部权限;
-[schema.]object:待授权的对象;
-user_name_list:用户列表 , 以逗号分隔;
-role_list:角色列表 , 以逗号分隔;
-PUBLIC:所有用户
(2)对象权限的回收
回收对象权限的SQL语法为:
其中:
-CASCADE CONSTRAINTS:当回收REFERENCE对象权限或回收ALL PRIVILEGES , 删除利用REFERENCES对象权限创建的外键约束;
-FORCE:当回收在表中被使用的用户自定义对象类型的EXECUTE权限时 , 必须指定FORCE关键字 。
回收对象权限需要注意以下3点:
1.多个管理员授予同一个用户相同的对象权限 , 一个管理员将该对象权限回收后 , 该用户不再具有该对象权限;
2.为了回收用户对象权限的传递性 , 须先回收该对象权限 , 再重新赋予给用户该对象权限;
3.如果一个用户的对象权限具有传递性 , 并且已经给其它用户授权 , 那么该用户的对象权限被回收后 , 其它用户的对象权限也将被收回 。(值得注意的是 , 这一条与系统权限传递性的回收不相同) 。
3、查询权限信息
角色管理
假如我们直接给每一个用户赋予权限 , 这将是一个巨大又麻烦的工作 , 同时也不方便DBA进行管理 。通过采用角色 , 使得:
1、权限管理更方便 。将角色赋予多个用户 , 实现不同用户相同的授权 。如果要修改这些用户的权限 , 只需修改角色即可;
2、角色的权限可以激活和关闭 。使得DBA可以方便的选择是否赋予用户某个角色;
3、提高性能 , 使用角色减少了数据字典中授权记录的数量 , 通过关闭角色使得在语句执行过程中减少了权限的确认 。
图. 用户、角色、权限关系图
由于个人接触的数据库用户较少 , 没有单独创建角色 , 故角色的创建、修改、删除、激活、禁用、授予、回收不再一一讲述 , 只要知道如何查询角色信息即可 。
在Oracle中 , 包含角色的数据字典如下:
文章转载至乐字节
最后给大家推荐几个b站超详细的Java自学课:
MySQL数据库:BV1tK4y197JC
SpringBoot+Vue前后端分离项目实战:BV1Tq4y1E7i5
nodeJs项目:BV1SK4y197G3
JavaScript全套教程:BV1yf4y1Y7oM
- 松狮的舌头是什么颜色的
- 领克是什么品牌旗下 领克是哪个旗下的品牌
- 途昂发动机功率 途昂发动机是什么
- 鬣狗是什么科的动物? 鬣狗属于哪科动物
- 要约的撤回与要约的撤销有什么区别 要约的撤销与撤回区别
- 宝马汽车off键什么意思
- 涉外劳动合同内容是什么
- huayra是什么车怎么读 huayra是什么车
- 到车行买车要注意什么 到车行买车可靠吗
- 榴莲水水的怎么回事 榴莲化水了是什么样子
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
