我想只为给定用户提供SQL Server数据库中单个表的READ访问权限 - xyz
经历过以下问题:
How do I grant read access for a user to a database in SQL Server?
Granting a SQL Server Login Access to a Database - SQL Server
best way to grant read only access to 2 tables in SQL Server 2005?
但它为我提出了一些基本问题,通过角色和用户名提供访问权限有什么不同?
请提供一种有效的方法来实现这一目标
答案 0 :(得分:31)
我以这种方式解决了这个问题:
CREATE LOGIN XYZ
WITH PASSWORD = 'PASSWORD'
创建XYZ登录后,为上面创建的登录名
创建一个用户CREATE USER xyz FOR LOGIN xyz
然后授予select,update权限,在我的情况下,它只是在特定表上选择
GRANT SELECT ON DBNAME.TABLE_NAME TO USERNAME
我提到的来源是
答案 1 :(得分:2)
通过用户名授予访问权限仅适用于该用户。
但是,通过角色授予访问权限适用于属于该角色的所有用户。 角色用于为一组用户分配权限。