设置对一个表的访问

我只是将一个SQL服务器用户的访问权限设置为一个表。 我通过给予用户db_datareaderangular色来做到这一点。 然后,我通过设置每个表的DENY列中的所有checkbox来为所有不希望此用户访问的表设置权限。

这工作,但很多盒子点击。

有没有更简单的方法来做到这一点?

是! 你已经完全倒退了。 从datareaderangular色中删除用户(正如您发现授予select整个数据库一样),并且只授予对该表的访问权限。

USE MyDB GRANT SELECT ON dbo.MyTable to JoeUser 

或者,在SQL Server Management Studio中

  1. 用鼠标右键单击该表并获取属性
  2. 点击左侧菜单中的权限
  3. 点击search并find您的用户
  4. 在select行的Grant列中进行检查