【问题标题】:How does oracle grant works?预言机赠款如何运作?
【发布时间】:2020-04-21 13:42:37
【问题描述】:

据我所知,在 Oracle 中,一个模式仅供一个用户使用,如果您(授予者)授予另一个用户(被授予者)访问该模式的权限,则该模式将复制到被授予者的模式中,而 MySQL 仅提供访问权限数据库无需复制。

例如如果 user1 是 schema1 并且您授予 user2 访问 schema1 的权限。将 schema1 中的那些表复制到 user2 的 schema(可能是 schema2)。这在幕后是如何运作的?

还有,

如果我只授予 user2 访问 user1.table1 的选择权限,table1 会被复制到 user2 的架构中吗?还是 user2 只能访问 table1 而 table1 仍然在 schema1 中?

GRANT SELECT ON user1.table1 TO user2;

请帮助我了解 oracle 授予权限的工作原理。谢谢。

【问题讨论】:

    标签: sql oracle oracle12c privileges grant


    【解决方案1】:

    该架构被复制到被授权者的架构中

    这是完全错误的。

    被授权者仅获得访问其他模式中的表的权限。要访问表,被授予者需要在表引用前加上授予者的模式:

    例如user2 需要运行:

    select *
    from user1.table1;
    

    没有被复制,查询直接访问另一个模式中的表。

    【讨论】:

      猜你喜欢
      • 2013-09-15
      • 2018-09-19
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-13
      • 1970-01-01
      相关资源
      最近更新 更多