【发布时间】:2013-04-25 10:19:12
【问题描述】:
我创建了一个存储过程,它执行一系列需要特殊权限的操作,例如创建数据库,恢复数据库等。我用
创建这个存储过程execute as self
...使其作为 SA 运行。这是因为我想让一个没有任何权限的 SQL 用户只能运行我定义的这些命令。
但是当我运行这个存储过程时,我得到了
The server principal "sa" is not able to access the database "model" under the current security context.
为什么SA无法访问模型数据库?我实际上在 SA 下自己运行了存储过程中的代码,并且运行良好。
【问题讨论】:
标签: sql-server execute-as