2

在 SQL Server 2005 中,我希望名为 LimitedUser 的用户只能运行一个过程:GRANT EXEC ON [usp_RunETL] TO [LimitedUser]

但是,该过程需要能够做所有事情——更新、删除、插入、执行……一切。如何在不必将所有这些权限授予 LimitedUser 的情况下做到这一点?

4

2 回答 2

3

LimitedUser 只需要运行存储过程的权限。他们不需要任何其他权限。

于 2008-10-24T13:33:53.297 回答
0

您只需要将 GRANT EXEC 授予受限用户。只要用户对存储过程具有权限,它就会忽略/覆盖过程内部操作的权限。

不过,我会非常小心,这听起来像是一个巨大的潜在安全漏洞。通常,您会使用多个过程来灵活地根据需要调整权限。我建议将权限分配给过程或基础表和视图,而不是决定只有一个超级过程。

于 2008-10-24T14:29:54.900 回答