ORACLE 11g用户权限管理查询

1、查看数据库里所有用户各自拥有的角色:
  select * from (select distinct connect_by_root grantee username,granted_role
        from dba_role_privs
        connect by prior granted_role =grantee ) a
  where exists (select 1 from dba_users b where b.username=a.username)
  order by 1,2;

2、查看数据库所有用户的系统权限:
  select d.username,d.privilege from
        (select a.username,b.privilege from
            (select distinct connect_by_root grantee username,granted_role
                from dba_role_privs
                connect by prior granted_role =grantee) a,
            (select grantee,privilege from dba_sys_privs) b
        where a.granted_role=b.grantee
        union
        select grantee,privilege from dba_sys_privs) d
        where exists((select 1 from dba_users c where d.username=c.username)
        )
  order by 1,2;

3、查看数据库所有用户的表权限
  select d.username,d.privilege,d.owner,d.table_name from
          (select a.username,b.privilege,b.owner,b.table_name from
                (select distinct connect_by_root grantee username,granted_role
                    from dba_role_privs
                  connect by prior granted_role =grantee) a,
                (select grantee,owner,table_name,privilege from dba_tab_privs) b
          where a.granted_role=b.grantee
          union
          select grantee,privilege,owner,table_name from dba_tab_privs) d
            where exists((select 1 from dba_users c where d.username=c.username)
          )
     order by 1,2;

4、如何查看拥有DBA角色的用户?
常规做法,一般是直接查询DBA_ROLE_PRIVS视图。查询语句如下:
  select grantee,granted_role from dba_role_privs where granted_role=’DBA’;    //这会漏掉用户

正确的查询应按如下语句查询:
select * from (select distinct connect_by_root grantee username,granted_role
      from dba_role_privs
      connect by prior granted_role =grantee ) a
where a.granted_role=’DBA’;

5、查看拥有SELECT ANY TABLE权限的用户
对于授予角色的,看看都谁有查询所有表的权限
  select distinct rp.grantee  from dba_role_privs rp ,dba_sys_privs sp
  where rp.granted_role = sp.grantee
   and sp.privilege like ‘SELECT ANY TABLE%‘

时间: 2024-10-11 19:23:50

ORACLE 11g用户权限管理查询的相关文章

Oracle 用户权限管理方法

Oracle 用户权限管理方法 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 二.登陆 sqlplus / as sysdba;//登陆sys帐户 sqlplus sys as sysdba;//同上 sqlplus scott/tiger;//登陆普通用户scott 

Oracle笔记之权限管理

权限管理 1,默认的三个用户 2,创建用户 3,授权,撤销权限 4,系统权限与对象权限 5,角色 6,通过角色对权限进行管理 7,权限的传递,丢失管理员密码怎么办 3个默认的用户 用户名        密码 sys            change_on_install system      manager scott          tiger cmd 进入命令行 sqlplus / as sysdba; 或者 sqlplus sys/change_on_install as sysdb

oracle的用户权限和角色

oracle的用户权限和角色 系统权限 定义:指特定类型的sql命令的权利.  常见的有: create  session  连接数据库 create   table    建表 create    view    建视 create  public  synonym  建同义词 create procedure  建过程.函数.包 create trigger    建触发器 create cluster   建簇 如何使用select来查询有哪些系统权限 select * from syst

如何实现Oracle修改用户权限 .

这里将介绍Oracle修改用户权限的实现过程,包括一些权限管理方面的东西.希望通过本文能对大家了解Oracle修改用户权限有所帮助. ORACLE数据库用户与权限管理 ORACLE是多用户系统,它允许许多用户共享系统资源.为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制. 2. 1 ORACLE数据库安全策略 建立系统级的安全保证 系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间.建立用户.修改用户的权利.删除用户等.系统特权可授予用户,也可以随时

实现业务系统中的用户权限管理--实现篇

在设计篇中,我们已经为大家阐述了有关权限管理系统的数据库设计,在本篇中,我们将重点放在其实现代码部分.为了让你能够更直接更有效的看到全部动作的代码,我们使用"动作分解列表"的方式来陈述每个动作以及相关资源. 实现权限管理功能的动作 动作分解 动作名 相关表名 操作集类型 (S,U,I,D,SQL) 表单 模组 字符资源 是否分页? 返回提示? 权限检测 权限初始化安装 setup 无 无 无 setup setupok 否 否 否 显示添加管理组界面 addnewgroup 无 无 a

mysql用户权限管理

mysql数据在实际生产环境中大量被使用,那平时在做好服务器上防火墙策略以外平时,对mysql下的用户权限也要严格管理,mysql的用户权限都是放在mysql.user这张表里,平时的用户权限管理都是隐式使用着这张表的,先说下权限: 权限 意义 select 查询 insert 插入 update 更新 delete 删除记录,一般用于清空表或者某一条记录 create 创建 drop 删除,从表空间里删除 grant 授予,一般用于给用户授权 references 引用 index 索引 al

【转载】SQL Server 2005数据库用户权限管理的设置

SQL Server 2005数据库中,我们可以设置每个用户对应的权限,以提高数据库的安全性.这类用户权限设置的应用非常广泛.比如设置某个用户访问某个表的权限,甚至是CRUD的权限,更小粒度的还可以去到某几个字段的访问权限等等.其实这一设置过程是很简单的,接下来就让我们来一起学习吧. 一.操作步骤 1. 首先进入数据库级别的[安全性]-[登录名]-[新建登录名] (图1:新建登录名) 2. 在[常规]选项卡中,如下图所示,创建登陆名,并设置默认的数据库. (图2:设置选项) 3. 在[用户映射]

django 基于proxy实现用户权限管理

项目中经常会遇到用户权限管理的问题,django adminsite已经提供非常实用的用户权限管理机制.不过有些时候,我们希望根据相关用户属性来过滤adminsite中显示的内容.下文将结束如何实现: 原始类 假设我有这么一个问卷类,基于这个类可以实现增删改查的功能 class wenjuan(models.Model): """ 问卷 """ name=models.CharField(u'问卷名称',max_length=128) breif

多图细数TurboMail邮件系统丰富的用户权限管理

提供企业化的多种邮箱管理功能,是企业邮件服务器系统与标准个人邮箱系统最大的区别,国产企业邮件系统翘楚产品TurboMail邮件服务器深耕于企业邮箱应用需求,以下列举其在用户邮箱的权限管理方面提供的部分功能,以供客户参考,更多的细节功能请直接咨询厂商.1, 邮件审计TurboMail邮件系统可根据企业管理流程提供多层邮件审核功能,针对各种元素对邮件过滤以达到精确的邮件审计功能. 2, 邮件归档开启TurboMail邮件系统的邮件归档模块,可以对所有的往来邮件(垃圾与病毒邮件除外)进行实时归档,用户