zoukankan      html  css  js  c++  java
  • oracle_角色

    一、

    每个Oracle用户都有一个名字和口令,并拥有一些由其创建的表、视图和其他资源。

    Oracle角色(role)就是一组权限(privilege) (或者是每个用户根据其状态和条件所需的访问类型)。

    用户可以给角色授予或赋予指定的权限,然后将角色赋给相应的用户。一个用户也可以直接给其他用户授权。

    二、3种标准角色

    1. CONNECT Role(连接角色) 

     拥有CONNECT role的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym )、会话(session)和与其他数据库的链(link)。

    2. RESOURCE Role(资源角色) 
    提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster),resource角色隐含unlimited tablespace系统权限。

    3、dba角色

    dba角色具有所有的系统权限,及with admin option选项,默认的dba用户为sys和system他们可以将任何系统权限授予其他用户。

     但是要注意的是dba角色不具备sysdba和sysoper的特权(启动和关闭数据库)。

    一个具有DBA角色的用户可以撤消任何别的用户甚至别的DBA的CONNECT、RESOURCE 和DBA的其他权限。当然,这样是很危险的,因此,除非真正需要,DBA权限不应随便授予那些不是很重要的一般用户。 
    撤消一个用户的所有权限,并不意味着从Oracle中删除了这个用户,也不会破坏用户创建的任何表;只是简单禁止其对这些表的访问。其他要访问这些表的用户可以象以前那样地访问这些表。

    4、创建角色 
    除了前面讲到的三种系统角色----CONNECT、RESOURCE和DBA,用户还可以在Oracle创建自己的role。用户创建的role可以由 表或系统权限或两者的组合构成。为了创建role,用户必须具有CREATE ROLE系统权限。下面给出一个create role命令的实例: 
    create role STUDENT; 
    这条命令创建了一个名为STUDENT的role。 
    一旦创建了一个role,用户就可以给他授权。给role授权的grant命令的语法与对对用户的语法相同。在给role授权时,在grant命令的to子句中要使用role的名称,如下所示: 
    grant select on CLASS to STUDENT; 
    现在,拥有STUDENT角色的所有用户都具有对CLASS表的select权限。 

    5、删除角色 
    要删除角色,可以使用drop role命令,如下所示: drop role STUDENT;
     

    6、显示角色信息

    (1)显示所有角色 

    sql>select * from dba_roles;  

    (2)显示角色具有的系统权限

    sql>select privilege,admin_option from role_sys_privs where role='角色名';

    (3)显示角色具有的对象权限

    通过查询数据字典视图dba_tab_privs可以查看角色具有的对象权限或是列的权限。

    (4)显示用户具有的角色及默认角色

    当以用户的身份连接到数据库时,Oracle会自动的激活默认的角色,通过查询数据字典视图dba_role_privs可以显示某个用户具有的所有角色及当前默认的橘色。

    sql>select granted_role,default_role from dba_role_privs where grantee='用户名';

      

  • 相关阅读:
    JavaScript对数组的处理(一)
    PHP数组排序函数array_multisort()函数详解(二)
    PHP数组排序函数array_multisort()函数详解(一)
    jquery html动态添加的元素绑定事件详解
    SpringBoot 通用Error设计
    SpringBoot Lombok
    VMware Big Data Extensions 安装步骤
    SpringBoot 通用Validator
    SpringBoot Mybatis keyProperty和useGeneratedKeys的作用
    Introduction to vSphere Integrated Containers
  • 原文地址:https://www.cnblogs.com/caroline4lc/p/4746074.html
Copyright © 2011-2022 走看看