数据库安全有哪些 数据库安全( 三 )


2.为了回收用户系统权限的传递性(在授权中使用admin选项),必须先回收系统权限,然后重新授予用户权限 。
3.如果一个用户的权限是可传递的,授权给其他用户,那么该用户的系统权限被收回后,其他用户的系统权限不会受到影响;
2、对象权限对象权限是指对特定模式对象的操作权限 。数据库对象所有者拥有该对象的所有对象权限,对象权限的管理实际上是对象所有者对其他用户操作该对象的权限管理 。在Oracle数据库中,不同类型的对象有不同的对象权限,而有些对象没有对象权限,只能通过系统权限来管理,如集群、索引、触发器、数据库链接等 。
(1)对象权限的授予在Oracle数据库中,用户可以直接访问同名模式下的数据库对象 。如果他们需要访问其他模式下的数据库对象,他们需要拥有相应的对象权限 。对象权限授予的SQL语法是:

其中:-object_privilege_list:逗号分隔的对象权限列表;
-所有特权:所有特权;
-[图式 。]object:要授权的对象;
-user_name_list:用逗号分隔的用户列表;
-role_list:用逗号分隔的角色列表;
-公共:所有用户
(2)对象权限的回收回收对象权限的SQL语法是:

其中:-级联约束:当引用对象权限被回收或所有特权被回收时,由引用对象权限创建的外键约束被删除;
-FORCE:在回收表中使用的用户定义对象类型的执行权限时,必须指定FORCE关键字 。
回收对象权限时应注意以下三点:
1.多个管理员将同一个对象权限授予同一个用户,一个管理员回收对象权限后,该用户不再拥有该对象权限;
2.为了回收用户对象权限的传递性,需要先回收对象权限,然后再赋予用户对象权限;
3.如果一个用户的对象权限是可传递的,并且已经授权给了其他用户,那么这个用户的对象权限被收回后,其他用户的对象权限也会被收回 。(值得注意的是,这个不同于系统权限传递的回收) 。
3、查询权限信息
角色管理
如果我们直接给每个用户权限,那将是一个庞大而麻烦的工作,不方便DBA管理 。通过采用角色,使:
1.权限管理更方便 。将角色赋予多个用户,实现不同用户的相同授权 。如果要修改这些用户的权限,只需修改角色即可;
2.可以激活和关闭角色的权限 。以便DBA可以方便地选择是否赋予用户某个角色;
3.提高性能 。使用角色减少了数据字典中授权记录的数量 。通过关闭角色,在语句执行期间减少了权限的确认 。

图 。用户、角色和权限的关系图
由于个人接触的数据库用户很少,角色也不是单独创建的,所以角色的创建、修改、删除、激活、禁用、授予、回收不再一一描述,只要你知道如何查询角色信息就可以了 。
在Oracle中,包含角色的数据字典如下:

这篇文章是完全复制的 。
最后推荐几个超详细的哔哩哔哩Java自学课程:
MySQL数据库:BV1tK4y197JC
SpringBoot+Vue前端分离项目实战:BV1Tq4y1E7i5nodeJs项目:BV1SK4y197G3JavaScript完整教程:BV1yf4y1Y7oM
【数据库安全有哪些 数据库安全】


推荐阅读