SQL Server创建用户只能访问指定数据库和视图

我们在给数据库用户赋予权限时,有时候不想让该用户看到太多过程表和过程视图,这时就需要限定用户的访问权限

第一步:创建用户

创建数据库连接后,进入安全性------登录名,单击右键,新建登录名,并设置默认数据库

第二步:设置用户映射

点击用户映射,勾选指定要访问的数据库,数据库成员身份默认为public,无需更改,然后单击确定

这时候,我们可以看到指定的数据库用户中增加了刚刚新增的用户

第三步:设置只能访问指定的数据表或视图

指定数据库------安全性------用户------需要指定的用户,单击右键------属性------安全对象------搜索------特定对象------对象类型(选择自己需要指定用户访问的对象类型,我这里选择的是视图),然后点击浏览,勾选需要给用户授权访问的视图,确定即可

第四步:给指定表或视图赋予具体权限

如果是只读,则只需要勾选"选择"权限,设置好后点击确定即可

注意:这里需要每张表或视图逐一设置

第五步:检查权限

用刚刚新增的用户登录数据库,我们发现只能看到改数据库下刚刚赋予权限的视图,其他的表和视图都不可见,达到目标

看很多其他的文章,都说要做这步设置

复制代码
USE [JTDataPatform]
GO
EXEC dbo.sp_changedbowner N'JT' 

实践证明,执行了这条语句之后,后面如果想删除该用户会遇到各种奇葩的错误提示导致用户无法删除,这时候只需要再重新将owner的权限赋值给sa,然后就可以顺利删除自己新建的用户啦

复制代码
USE [JTDataPatform]
GO
EXEC dbo.sp_changedbowner N'sa'

  

相关推荐
ClouGence7 天前
开源数据库管理工具 CloudDM 4.3.0 发布,支持 SQL 收藏,多数据源语法支持大幅增强
数据库·oracle·sql server
zengjuan100518 天前
恢复实战全过程:从数据库崩溃到业务恢复,我用松鼠备份只花了25分钟
数据恢复·sql server·数据备份·备份策略·数据库备份·松鼠备份·防勒索病毒
Darling噜啦啦1 个月前
Text2SQL 实战:自然语言直连数据库,让 AI 自动写 SQL 完成 CRUD 与多表联查
llm·sql server
学以智用1 个月前
SQL Server 2008 SQL注入详解
sql server
zengjuan10051 个月前
SQL Server 恢复模式避坑指南:简单 / 完整 / 大容量日志选错,日志备份白做
数据恢复·sql server·备份策略·数据库备份·数据库运维·松鼠备份·数据库容灾
倔强的石头1062 个月前
SQL Server数据迁移不只是把数据搬过去
sql server·数据迁移
随手工具-Excel, pdf, SQL2 个月前
没有 SSMS 导入向导?Excel/CSV 一键生成 SQL Server INSERT 脚本
excel·sql server·在线工具·insert·测试数据·ssms·t-sql
ClouGence3 个月前
SQL Server CDC 能放到 Always On 备库读吗?一文讲透原理与实践
数据库·sql server
Daydream.V4 个月前
SQL Server 超详细入门教程
sql·sql server
betazhou5 个月前
SQL server 2017镜像库主从同步架构部署
架构·sql server·高可用·主从同步·镜像库