• Oracle to list a user privilege


    Question:  I want to display all of the privileges for an Oracle user, including direct grants and role grants.  How do I display everything that has been granted to  user?

    Answer: For full scripts, download the Oracle script collection.  There are many views that contain the privileges for a user:

    • dba_sys_privs
    • dba_tab_privs
    • dba_role_privs
    • table_privileges

    This query shows all table-level granted privileges for a user named 'MYUSER':

    select
       owner,
       table_name,
       select_priv,
       insert_priv,
       delete_priv,
       update_priv,
       references_priv,
       alter_priv,
       index_priv
    from
       table_privileges
    where
       grantee = 'USER_A'
    order by
       owner,
       table_name;

    This query shows all role privileges for a user:

    select distinct
       owner,
       table_name,
       privilege
    from
       dba_role_privs rp,
       role_tab_privs rtp
    where
       rp.granted_role = rtp.role
    and
       rp.grantee = 'MYUSER'
    order by
       owner,
       table_name;

    The following example will display all system and role privileges for a user named MYUSER:

    select
       privilege
    from
       sys.dba_sys_privs
     where
       grantee = 'MYUSER'
    union
    select
       privilege
    from
       dba_role_privs rp
    join
       role_sys_privs rsp
    on (rp.granted_role = rsp.role)
     where rp.grantee = 'MYUER'
     order by 1;

  • 相关阅读:
    什么是高大上项目?
    spring事务回滚问题
    分布式ActiveMQ集群
    基于bootstarp的Dailog
    js实现的笛卡尔乘积-商品发布
    MemcachedClient 使用说明
    docker centos容器无法yum
    java Graphics2D 画图
    spring boot 访问外部http请求
    JSON 数据重复 出现$ref
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/14601456.html
Copyright © 2020-2023  润新知