【发布时间】:2015-05-08 15:27:42
【问题描述】:
我只是想知道是否有任何选项可以授予在不同架构上创建同义词的权限而不提供“任何”选项。我只想缩小授权范围,以提供安全所需的许可。
我们创建了一个与应用程序产品相关的模式名称 A。但是应用程序假设通过另一个(登录)模式 B 访问对象。我们已将资源授予模式 A,因此模式 A 所有者可以创建自己的对象。我需要使用什么授权语法来授予架构 A 在架构 B 上创建同义词,以便它可以创建同义词。
最终结果应该如下,并且可以由架构所有者 A 创建,而不受 DBA 的干扰
B.b_synonym maps to A.b_object
【问题讨论】:
-
你试图完成的事情似乎没有意义。如果
B拥有该表,为什么要在B模式中创建私有同义词?该同义词只能由B使用,根据定义,他们已经可以访问基础表。A永远不能使用架构B中定义的私有同义词(因此称为私有)。如果你想创建一个私有同义词,只有在模式A中创建它才有意义。或者您可能想创建一个公共同义词。