限制 SQL Server 登录只能访问一个数据库

2023-12-19

我有一个SQL Server服务器上有大约 50 个数据库。

我希望创造一个新的Login对于希望访问其数据库的客户。

但我不想让他们访问其他人49 个数据库.

我怎样才能做到这一点?


我认为这是我们非常喜欢做的事情。

--Step 1: (create a new user)
create LOGIN hello WITH PASSWORD='foo', CHECK_POLICY = OFF;


-- Step 2:(deny view to any database)
USE master;
GO
DENY VIEW ANY DATABASE TO hello; 


 -- step 3 (then authorized the user for that specific database , you have to use the  master by doing use master as below)
USE master;
GO
ALTER AUTHORIZATION ON DATABASE::yourDB TO hello;
GO

如果您之前已经创建了一个用户并分配给该数据库

USE [yourDB] 
CREATE USER hello FOR LOGIN hello WITH DEFAULT_SCHEMA=[dbo] 
GO

然后请按照以下步骤删除它

   USE yourDB;
   GO
   DROP USER newlogin;
   GO

欲了解更多信息,请点击链接:

在 Microsoft Sql Server 2008R2 及更高版本上隐藏登录数据库 https://stackoverflow.com/questions/14120624/hiding-databases-for-a-login-on-microsoft-sql-server-2008r2-and-above

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

限制 SQL Server 登录只能访问一个数据库 的相关文章

随机推荐

  • 如何在 Nuxt 2 或 3 中使用 .env 变量?

    我的项目根目录中有 env 文件 在我的 nuxt 配置中 我使用变量来配置 ReCaptcha 如下所示 import dotenv from dotenv dotenv config export default modules nux
  • 基于 SQLite 支持的 ContentProvider 更新 ListView

    我是一名新的 Android 开发人员 似乎有点不知所措 当我向列表添加更多内容时 我试图进行 listView 更新 ListView 基于 SQLite 数据库 我能够通过为 SQLite 数据库创建一个 ContentProvider
  • 无法将数据写入 Firebase 实时数据库 Android

    我创建了一个 Firebase 并且可以将数据写入身份验证 但是 我无法将数据写入实时数据库 I have connected to Firebase 我已经添加了实时数据库 Import the BoM for the Firebase
  • 您在 Perl 程序中使用异常类吗?为什么或者为什么不?

    我有很多关于人们如何在 Perl 中使用异常的问题 我已经包含了一些有关例外情况的背景说明 如果您愿意 可以跳过此内容 但请花点时间阅读问题并做出答复 Thanks Perl 异常的背景 Perl 有一个非常基本的内置异常系统 为更复杂的使
  • Haskell 惰性评估和重用

    我知道如果我要在 Haskell 中计算平方列表 我可以这样做 squares x 2 x lt 1 然后当我这样调用方块时 print take 4 squares 它会打印出 1 0 4 0 9 0 16 0 其计算结果为 1 2 2
  • 如何在 .Net Maui 中创建选项卡式页面?

    我在 Net Maui 有一个选项卡式页面 如下所示
  • 将无符号字符转换为有符号整数

    我有一个 unsigned char 数组 其中有 2 个元素代表有符号整数 如何将这 2 个字节转换为有符号整数 Edit unsigned char 数组采用小端字节序 为了获得最大的安全性 请使用 int i signed char
  • 使用python多处理库让父进程在子进程之前返回

    当使用 python 的多处理库创建进程时 父进程会等待其子进程返回 然后再返回 事实上 文档建议所有儿童都加入 但我想让父母回来before它的子进程完成 有没有办法 分离 子进程 我知道使用 subprocess Popen 可以创建分
  • Amazon Cognito 托管 UI 无法通过 iframe 实现?

    我尝试过 但在标题中X Frame Options deny我没有找到任何方法在后端 UI 中配置它 我不确定这有多少 答案 但我还没有足够的声誉来发表评论 我认为这是相关的 接受的答案根本没有真正解决 iframe 问题 我在任何地方都找
  • 如何:在 Windows Compact Framework 上从非托管 C++ 调用托管 C# 接口

    我有大量的非托管 Windows CE 5 C 代码 它提供了一个我想在新产品中使用的 UI 方法是将其与在 Windows CE 6 和 Compact Framework 上用托管 C 编写的大量较新的业务和通信逻辑相结合 UI 可能了
  • java8流样式通过字段列表检索映射的内部部分?

    例如 给定如下所示的地图 k1 k2 k3 k4 v 和一个字段列表 k1 k2 k3 我需要检索该部分 k4 v 下面是我的java7风格的代码 Ignore the map building code Map map1 new Hash
  • 根据 R 中的条件重命名因子级别

    我想将所有计数小于 n 的因素合并为一个名为 Else 的因素 例如 如果 n 3 那么在下面的 df 中我想将 c d 和 e 组合为 Else df data frame x c 1 10 y c a a a b b b c d d e
  • 多个oracle查询问题

    我正在尝试从 NET 页面运行查询 但似乎在进行多个查询时遇到一些问题 我的查询与此类似 SELECT FROM table1 SELECT from table2 但从 Net 页面执行此操作时 我似乎收到无效字符错误 它在 SQL De
  • 在 SwiftUI 中获取 ForEach 中的索引

    我有一个数组 我想迭代它根据数组值初始化视图 并想根据数组项索引执行操作 当我迭代对象时 ForEach array id self item in CustomView item item tapAction self doSomethi
  • 获取 CodeElement 的 Access 属性

    我正在为 VS 2010 编写一个插件 无法找到问题的答案 如何获取 CodeElement 的 Access 属性 如果有该属性 我试图反思 但没有结果 前任 CodeElement 是一个类方法 public void GetAcces
  • 在 Zend Framework 2 上使用表达式执行多重连接

    实际上我正在开发一个项目 我正在研究 Zend Framework 2 如何处理复杂的查询 特别是如何连接 n m 表以及如何使用 GROUP CONCAT 和其他函数 您知道执行此查询的最佳实践吗 SELECT o x group one
  • 将 Pandas Dataframe 写入_csv StringIO 而不是文件

    此代码的目标是将现有的 CSV 文件从指定的 S3 存储桶读取到 Dataframe 中 过滤 Dataframe 中所需的列 然后写入filtered使用 StringIO 将数据帧转换为 CSV 对象 我可以将其上传到不同的 S3 存储
  • 在没有先验消息类型知识的情况下解析 HL7

    在 NHapi 中 如果我们不知道消息类型 MSH 9 是什么 我们如何解析消息 var parser new NHapi Base Parser PipeParser IMessage parsedMessage parser Parse
  • 编写 MSMQ 示例应用程序所需的最低限度

    我已经研究了一个多小时 找到了如何在 C 中使用 MSMQ 的优秀示例 甚至找到了一本关于消息队列的书的完整章节 但是为了快速测试 我需要的只是涵盖这个场景 甚至不需要以完美的方式 只是为了快速演示 应用程序A 将消息写入消息队列 应用程序
  • 限制 SQL Server 登录只能访问一个数据库

    我有一个SQL Server服务器上有大约 50 个数据库 我希望创造一个新的Login对于希望访问其数据库的客户 但我不想让他们访问其他人49 个数据库 我怎样才能做到这一点 我认为这是我们非常喜欢做的事情 Step 1 create a