SQL 中如何给指定数据库创建只读用户?

点击关注上方“逆锋起笔”,

 
 
设为“置顶或星标”,第一时间送达干货

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

创建访问指定数据库的只读用户

1、首先打开【Microsoft SQLServer Management Studio】,用管理员账户登录。这里我选的服务器是【local】,账户是【windows身份验证】,如果是连接远程的服务器,输入远程服务器地址和账号密码即可。

bca0973499e436d8c0fbcf562f4d7893.png

2、找到【安全性】,打开,可以看到【登录名】,在上面右键。

1633b60b9fd83b01e1fa271b994db5e8.png

3、选择【新建登录名】

619002ec1de2fed655928c37598cc6a6.png

4、在【常规】选项中,输入登录名,选择身份验证方式。这里我选用了【SQL Server 身份验证】同时,我勾掉了【强制实施密码策略】

f6b500900dddb95bb43a9590c8a7430a.png

5、在右侧的【用户映射】选项卡中,【映射到此登录名的用户】选择该用户可以操作的数据库。针对每一个数据库,在下方【数据库角色成员身份】中,选择【db_datareader】,同时默认架构中也选择【db_datareader】

bf824aa9a860390b1c6107e6d8b6e26c.png

6、这样,一个只读用户就建立好了,用此用户登录时,就只能对映射的数据库进行只读访问了。

添加只读用户查看存储过程权限

而当我们设置只给某些用户授权只读权限时(即public),这些用户可能需要查看sql的存储过程;因此需要授权给它。

第一步:使用sa用户进入数据库,在安全性中找到改用户右键-属性

第二步:找到安全对象-点击搜索

d0696c8fdcefa62d2b17fe87eb7eb7a5.png

第三步:在弹出的窗口中找到服务器名

5de24fc43f6f761d136800dcb7889e04.png

第四步:在下列的选择框中找到”查看任意定义“勾上保存,并重启数据库服务,mssqlserver,重启后注意要启动SQL代理,因为重启mssqlserver时会把它停掉。

8c66d19b6b7b219f326ddb22386a5c8f.png

创建一个只读账户具体步骤

1、进入sqlserver management studio

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

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

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

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

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

服务器角色参考

bulkadmin 可以运行 bulk insert 语句

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 不能修改数据库中任何数据的用户

以上就是今天分享给大家的内容,可以自己动手试试,用新建的用户登录看效果如何。

逆锋起笔是一个专注于程序员圈子的技术平台,你可以收获最新技术动态最新内测资格BAT等大厂的经验精品学习资料职业路线副业思维,微信搜索逆锋起笔关注!

 
 

afd1df614beadeb3ec552844ea2fd96b.gif

 
 
 
 
 
 
推荐阅读

e921b3fcde3bf4afdf6ed61f1d09cad4.png

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值