麻烦使用Grant和Revoke

时间:2013-09-30 22:02:21

标签: sql sql-server sql-server-2012

我只是想在我的数据库中向用户授予/拒绝安全性。例如,这是我的撤销声明之一

使用MY_DB; 从[UserName]撤消ALTER; GO

当我使用SELECT FROM MyDB.sys.database_permissions查看权限时,它表示用户仍具有该权限。你如何实际撤销许可?

1 个答案:

答案 0 :(得分:0)

如果用户拥有更广泛的权限,其中包含特定的安全保护权限以及您对该安全设施的revoke更窄权限,则该用户仍将拥有范围更广grant的权限grant }。

如果您希望获得广泛范围的拨款例外,则可能需要考虑安全deny

编辑:

鉴于你的SQL:

USE MY_DB; REVOKE ALTER FROM [UserName]; GO

...您需要指定要撤消的安全性ALTER权限:ALTER ENDPOINTALTER LOGIN

有关ALTER权限的适用性,请参阅here,例如:

REVOKE ALTER LOGIN FROM [UserName]