2009-02-06 112 views
1

我有一些存储过程的数据库。授予权限存储过程

我的问题是:是否有问题,要做到这一点:

GRANT EXECUTE ON [DBO] [StoredProcedureXPTO]至[公用]执行

即授予权限公众?或者是一个安全问题?

回答

1

答案完全取决于您的存储过程的作用以及是否希望每个人和他的狗都能访问它。

根据我的经验,这很不寻常,因为我为我的应用程序提供了非常狭窄的用户和角色。

但是你的问题让我怀疑你的问题背后是否存在另一个问题。你为什么要问?

+0

存储procudure是一个示例,并不真正存在。 我已经提出了这个问题,因为在我的工作中,老年人有习惯在所有存储过程中授予公共权限。有些程序删除数据库中的东西。 在我看来不是一个好习惯.....不是??? – rpf 2009-02-07 21:47:43

5

如果这就是你想要的,没有问题。如果你想限制对存储过程的访问,那么这是不行的。

2

显然取决于存储过程的作用以及是否希望“public”能够做到这一点。

1

我喜欢避免给予公共的任何权限,因为您不能将用户添加到不属于公共角色的数据库。因此,基本上,由于不给自己一种方法来锁定任何数据库用户(除了稍后更改存储的proc权限以外),因此限制了安全性的灵活性。