在SSMS 2008中向用户授予权限时复制脚本?

时间:2011-08-25 15:33:49

标签: sql sql-server tsql sql-server-2008 ssms

在MS SQL 2008 Management Studio中,我试图将表中的某些列/字段拒绝给特定用户。

为此,我右键单击数据库,展开“安全性”,然后展开“用户”。 一旦我选择了有问题的用户,我就会右键单击并选择“属性”。

下一步是选择“Securables”页面,然后选择“选择”权限。然后单击“列权限”

enter image description here

一旦我选择了我想拒绝为所选用户访问的字段,我就点击了Script,所以我可以在新的查询窗口中看到T-SQL(您可以参考上面的相同图片。脚本位于窗口的顶部。)

所以这是我的问题:结果脚本似乎每次重复两次动作。 例如,这是它的样子:

use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DatabaseConnectionString]) TO [Testing_Login]
GO
use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DBUserName]) TO [Testing_Login]
GO
use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DBPassword]) TO [Testing_Login]
GO
use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DatabaseConnectionString]) TO [Testing_Login]
GO
use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DBUserName]) TO [Testing_Login]
GO
use [master_table]
GO
DENY SELECT ON [dbo].[Table_Main] ([DBPassword]) TO [Testing_Login]
GO

知道为什么这样做吗?我们有许多表要匹配权限,并且正在考虑使用CURSOR来执行此操作。但我不知道是否应该按照我的程序包含上述脚本,或者删除重复的语句是否安全。

请让我知道你的想法。

由于

1 个答案:

答案 0 :(得分:1)

我在SSMS 2008 R2中尝试了相同的操作,并为表中的每一列获得了相同的重复脚本。这似乎是SSMS的一个问题。我没有看到你需要包含重复脚本的任何理由。我建议你可以忽略它们。

您可能希望在Microsoft Connect网站上报告此问题。

看起来网站上有类似的问题报告。它仍被列为活动。

SSMS Script Action produces 2 ALTER DATABASE statementŠ