【发布时间】:2014-01-27 16:33:21
【问题描述】:
SQL 服务器 ....
长期以来,我一直认为,将存储过程 exec 授予主体意味着 SP 可以做它需要做的任何事情,并且可以选择返回结果。
我目前正在开发一个 2012 年的数据库。我创建了一个 SP 并将 exec 授予 SQL 登录名。 用户收到错误消息。 我还必须授予我在 SP 中使用的表和函数的权限。
我的世界观也认为视图和功能不会以这种方式转让权利。
有什么变化吗?我是不是一直都在假装做手术?
我已经用谷歌搜索了答案,但似乎找不到讨论该主题的文章。
有什么想法吗?
谢谢
格雷格
【问题讨论】:
-
存储过程中是否有不同数据库中的表?默认情况下,跨数据库 ownership chaining 在 SQL Server 中被禁用。
-
同一个数据库。但不同的模式。所有权链接是我需要搜索的术语。感谢那。不同的模式是它的行为不像我预期的那样的原因。
-
没问题。我怀疑您需要知道的所有内容,并且可能更多可以通过 Erland Sommarskog 找到 in this article。
标签: sql sql-server stored-procedures permissions