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

第一步:创建用户

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

第二步:设置用户映射

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

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

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

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

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

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

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

第五步:检查权限

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

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

USE [JTDataPatform]
GO
EXEC dbo.sp_changedbowner N'JT' 

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

USE [JTDataPatform]
GO
EXEC dbo.sp_changedbowner N'sa'

  

SQL Server创建用户只能访问指定数据库和视图的更多相关文章

  1. mysql限制用户只能访问指定数据库

    1.使用root账户登录mysql mysql -uroot -ppassword 2.进入mysql数据库 mysql > use mysql 3.限制用户权限 GRANT SELECT, I ...

  2. 【MSSQL】SQL Server 设置用户只能查看并访问特定数据库

    #背景 SQL Server实例上有多个服务商的数据库,每个数据库要由各自的服务商进行维护, 为了限定不同服务商商的维护人员只能访问自己的数据库,且不能看到其他服务商的数据库,现需要给各个服务商商限定 ...

  3. Sql Server设置用户只能查看并访问特定数据库

    现需要限定特定的用户只能查看并访问特定的数据库,防止多个用户对数据库操作时一些误操作. 参考i6first的如何让用户只能访问特定的数据库(MSSQL)博文 1.新建登录用户 以管理员身份登陆数据库( ...

  4. oracle 创建一个用户,只能访问指定的对象

    1>创建一个ORACLE 的用户 create user username identified by pws; 2>给用户授权  grant connect,resource to us ...

  5. SQL Server 创建用户报错:消息 15023,级别 16,状态 1,第 1 行 用户、组或角色 'XXX' 在当前数据库中已存在。

    问题描述: 原因: 当数据库恢复到其他服务器时,原数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户. 这种情况可能会出现上面的问题.该问题是无法通过新建登录或者是 ...

  6. sqlserver 限制用户只能访问指定的视图

    项目中有一个需求,要求给其它单位提供数据,我们用到了视图,并要求不能让他们看到数据库中的其它数据,我们为其创建了单独的账号,并只能看到指定视图 一.创建视图 CREATE VIEW [dbo].[v_ ...

  7. SQL Server 中断开连接到指定数据库的所有连接

    常用的情形是在部署测试数据库时需要通过SQL代码自动重新创建数据库,在删除的时候往往会发生错误,错误信息一般会指出目前有用户连接到这个数据库上,因此不能删除. 实现的方式是通过查询指定数据库中活跃的 ...

  8. 用ChrootDirectory限制SFTP登录的用户只能访问指定目录且不能进行ssh登录

    创建不能ssh登录的用户sftpuser1,密码用于sftp登录: sudo adduser sftpuser1 --home /sftp/sftpuser1 --shell /bin/false s ...

  9. SQL Server 创建用户

    增加角色 role_for_nc 1.exec sp_addrole 'role_for_nc'; 创建一个 SQL Server 登录名wlzx,密码为"123",默认数据库为 ...

  10. Oracle 创建用户,赋予指定表名/视图只读权限

    步骤指南 创建用户 格式:; 语法:create user 用户名 identified by 密码; 注:密码不行的话,前后加(单引号):' create user TEST identified ...

随机推荐

  1. 【Playwright+Python】系列教程(七)使用Playwright进行API接口测试

    playwright也是可以做接口测试的,但个人觉得还是没有requests库强大,但和selenium相比的话,略胜一筹,毕竟支持API登录,也就是说可以不用交互直接调用接口操作了. 怎么用 既然是 ...

  2. [学习笔记] 树链剖分(重链剖分) - 图论 & 数据结构

    树链剖分 树链剖分,用于解决一系列的树中链上问题的算法(数据结构).其实对于树链修改和树链求和问题可以使用更加方便的树上差分解决,但是对于像求树链最大(小)权值之类的更复杂的问题,差分就显得不够用了. ...

  3. 关于Vue + element plus包装Component理解

    关于Vue + element plus包装Component理解 一.关于编写思路 我以设计el-select选择框进行举例说明 父组件与Component传递params与Function使用Pr ...

  4. SpringBoot 整合线程池

    分为三步 启动类加 @EnableAsync 注解 在方法上加 @Async 注解 创建线程池配置类 1.启动类加 @EnableAsync 注解 @SpringBootApplication @En ...

  5. CentOS 进入救援模式

    因某些修改操作,导致系统重启后无法正常启动,此时需要进入救援模式,修复错误配置即可. 1.重启系统后,进入grup引导页面,选中第一项然后按"e" 进入编辑模式: 2.通过↓键找到 ...

  6. tar 解压文件时提示 Ignoring unknown extended header keyword

    在 Linux 上使用 tar 解压文件时出现下列提示: tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.app ...

  7. uniCloud 云开发Dome

    实现账号密码登录,注册, 信息图片上传与查看 项目地址:https://gitee.com/jielov/uni-cloud_development 先创建云服务空间 与云函数 可参考 https:/ ...

  8. 云存储抽象层-FluentStorage

    FluentStorage 是一个.NET云存储抽象层,支持多种云服务提供商.它提供了一个统一的API来处理不同云服务提供商的Blob存储(如AWS S3, GCP, FTP, SFTP, Azure ...

  9. Java多线程并发编程中并发容器第二篇之List的并发类讲解

    Java多线程并发编程中并发容器第二篇之List的并发类讲解 概述 本文我们将详细讲解list对应的并发容器以及用代码来测试ArrayList.vector以及CopyOnWriteArrayList ...

  10. 受 LabelImg 启发的基于 web 的图像标注工具,基于 Vue 框架

    受 LabelImg 启发的基于 web 的图像标注工具,基于 Vue 框架   哟,网友们好,年更鸽子终于想起了他的博客园密码.如标题所述,今天给大家带来的是一个基于 vue2 的图像标注工具.至于 ...