zoukankan      html  css  js  c++  java
  • ADMIN OPTION和GRANT ANY OBJECT PRIVILEGE的问题

    有A(EDU)、B、C、D(JF)三个schema,现在的问题是A需要可以讲A、B、C三个用户下的对象权限赋予D用户。

    比如A需要将A B C三个schema下表的select权限赋给D用户。

    ①EDU拥有

    GRANT SELECT ANY TABLE TO EDU WITH ADMIN OPTION

    并将select权限分配下去的权限。

    然而事实是,当我执行,

    GRANT SELECT ON RST.SEARCH_LOG_MONITOR TO JF

    却不可以。

    ②进一步显式的特别指定SEARCH_LOG_MONITOR表上的ADMIN OPTION选项

    GRANT SELECT ON RST.SEARCH_LOG_MONITOR TO EDU WITH  ADMIN OPTION
    然后

    GRANT SELECT ON RST.SEARCH_LOG_MONITOR TO JF

    就可以了。如果每个表都要显式的指定,还是很麻烦的。

    那么就有了

    ③GRANT GRANT ANY OBJECT PRIVILEGE TO EDU

    然后管理ABCD下的对象权限问题都可以了。

    ④类似的有:

     ADMINISTER DATABASE TRIGGER

    ⑤解决问题的步骤很简单:

    select *
    from dict d
    where d.table_name like'�A_SYS%'

    select * from dba_sys_privs D where grantee='DBA'
    and (d.PRIVILEGE like'%TABLE%' OR  d.PRIVILEGE like'%OBJECT%')

    DBA GRANT ANY OBJECT PRIVILEGE YES
    -----找到这个 再从官方文档上搜索 并且自己测试。然后就可以了。。

  • 相关阅读:
    MySQL高可用之MHA的搭建
    MySQL MGR 集群搭建(单主模式&多主模式)
    ansible-playbook定义变量与使用
    linux LVM逻辑卷管理
    Oracle 19C RAC 静默(silent)安装on RHEL7.x
    Python语言基础02-变量和运算
    Python之路,Day6
    Python 之路 Day5
    Python之路,Day4
    Python之路,Day3
  • 原文地址:https://www.cnblogs.com/gracejiang/p/5890438.html
Copyright © 2011-2022 走看看