SQL Server 2008数据库创建用户只读权限的两种方式

在SQL Server 2008中,为了保护数据库的安全,需要给不同的使用者开通不同的访问用户,那么如何简单的控制用户的权限呢?下面我们就创建一个只读用户,给大家学习使用。
一、命令行方式创建

新建查询窗口,然后输入以下命令然后执行即可

sqlserver命令方式增加登录名、用户名及赋予相应权限

sp_addlogin ‘test’,’test’,’DB’  >>登录名、密码、登录的数据库
sp_grantdbaccess ‘test’  >>将数据库用户加入到当前数据库
grant select/update/delete on   TABLEA/VIEWB  to test  >>给该用户赋予查询/更新/删除 表TABLEA的权限或试图VIEWB的权限
二、传统软件视窗创建
Microsoft SQLServer Management Studio
方法/步骤
首先打开【Microsoft SQLServer Management Studio】,用管理员账户登录。这里我选的服务器是【local】,账户是【windows身份验证】,如果是连接远程的服务器,输入远程服务器地址即可。

SQL Server 2008数据库创建用户只读权限的两种方式-1
1、进入sqlserver management studio

2、选择安全性->登录名->右键新建登录名

3、在常规里输入用户名和密码

4、在”用户映射”里“映射到此登录名的用户”选择该用户可以操作的数据库

5、在“数据库角色成员身份”里选择“public”和”db_datareader”,

6、这样一个只读用户就创建完成了。

【知识参考】服务器角色参考 (可以对数据库的操作)

bulkadmin 可以运行 bulk insert 语句  bulk insert 详细 http://blog.csdn.net/jackmacro/article/details/5959321

dbcreator   创建,修改,删除,还原任何数据库

diskadmin   管理磁盘文件

processadmin   可以终止在数据库引擎实例中运行的程序

securityadmin   可以管理登录名及其属性,具有grant,deny,和revoke服务器和数据库级别权限,还可以重置sql server 登录名的密码

serveradmin     可以更改服务器范围的配置选项和关闭服务器

setupadmin     可以添加和删除链接服务器,并对可以执行某些系统执行存储过程(如,sp_serveroption)

sysadmin         在sql server中进行任何活动,该觉得的权限跨越所有其他固定服务器角色,默认情况下,windows builtin\admin组(本地管理员组)的所有成员都是sysadmin固定服务器角色的成员

用户映射参考  (可以对数据库的数据进行操作)

db_owner       可以执行数据库中技术所有动作的用户

db_accessadmin 可以添加,删除用户的用户

db_datareader 可以查看所有数据库中用户表内数据的用户

db_datawrite 可以添加,修改,删除所有数据库用户表内数据的用户

db_ddladmin 可以在数据库中执行ddl操作的用户,DDL(Data Definition Language)数据表的创建以及管理

db_securityadmin 可以管理数据库中与安全权限有关所有动作的用户

db_backoperator 可以备份数据库的用户(可以发布dbcc和checkPoint语句,这两个语句一般在备份前使用

db_denydatareader 不能看到数据库中任何数据的用户

db_denydatawrite 不能修改数据库中任何数据的用户

原文链接:,转发请注明来源落伍老站长!

发表评论