sqlserver2005数据库 如何新建一个用户让他对服务器上的所有库都只有select权限,或者是只能操作视图也行

如题所述

1. SQL数据库分配权限
打开SQL-Server管理工具安全性登陆名右键(新建登陆名)

输入相应的信息(这里要去掉强制实施密码策略,强制密码过期,用户在下次登录时必须修改密码的选择)

用户映射选择我们要设置权限的数据库通过选择数据库角色成员身份来设置新建用户的权限

一般对整个库做权限的时候都是需要所有权限勾选db_owner就可以了(确定)
这样就可以用我们新建的这个用户名来访问我们的数据库服务器了,而且这个用户名只拥有我们所勾选的数据库的所有权限。

2. SQL数据库对每个表分配权限

打开SQL-Server管理工具安全性登陆名右键(新建登陆名)

输入相应的信息(这里要去掉强制实施密码策略,强制密码过期,用户在下次登录时必须修改密码的选择)

用户映射选择我们要设置权限的数据库通过选择数据库角色成员身份来设置新建用户的权限

因为我们要对每个表进行单独的设置所以这里我们就不勾选db_owner了

打开我们刚才勾选的test数据库安全性用户中看到我们刚才新建的那个用户了。

找到新建的用户名右键属性

安全对像

添加

特定类型的所有对象确定

对象类型选择表

确定这样我们就能看到test数据库中的所有表了

接着我们再对每个表设置权限

我对两个表都是设置的Select权限确定这样我们用test_name登陆test数据库的时候只能对其中的两个表做Select操作不能做其它操作
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-29
你在安全性里面添加个服务器角色,然后右击所在的数据库名称,选择属性,里面的权限,然后在查询中授予中打钩,其他的均为拒绝,就可以了
第2个回答  2011-04-29
数据库->用户->新建
在下面的角色中,勾选 以下两项
db_datareader 可以选择数据库内任何用户表中的所有数据
db_denydatawriter 不能更改数据库内任何用户表中的任何数据。追问

你的方法是针对这一个数据库,我的资源管理器下有很多个数据库,怎么对所有这些库操作呢

追答

在"安全性"->登陆->登陆属性->数据库访问.在这个里面设置.

追问

sql2005的安全性下面没有“登录”选项,只有“登录名”,没有你说的这些属性啊,方便加我qq给我远程操作一下吗 万分感谢

追答

登陆名下 选中用户 右键 选择 '"用户映射"

第3个回答  2011-05-05
创建一个角色,然后右键点属性查看权限并分配
第4个回答  2011-05-01
GRANT SELECT TO 数据库用户
相似回答