sql-server - 在 SQL Server 中授予仅数据访问权限
问题描述
我希望能够创建一个能够执行以下操作的 SQL 登录名(或角色):
- 读取数据
- 写入数据
并且将无法更改架构的任何内容(更改表、列、键等)。我知道有一种方法可以使用脚本(光标+设置拒绝/授予登录每个数据库的权限)。
这并没有削减它,因为每次将数据库添加到服务器时都必须重复它。我希望权限至少在以下情况下也适用于新创建的数据库:
- 手动创建数据库
- 数据库从 .bak 恢复为新数据库
- 从 bacpac 导入数据库
因为这将仅在开发模式下使用 - hacks/workarounds 也是可以接受的。
解决方案
将具有所需权限的用户添加到model
数据库将确保将其添加到该实例上所有新创建的数据库中。您将需要使用脚本将用户添加到现有数据库以及您迁移到实例的任何数据库(例如通过备份和恢复)。您可以在此处找到有关model
数据库的更多信息。
推荐阅读
- reactjs - 如何从单独的服务器将 cookie 设置为下一个 js 应用程序?
- mysql - Mysql为每门课程选择所有课程及其章节
- python - TensorFlow 概率 - Bijector 训练
- python - 在python中将json写入excel文件的问题
- go - gocql 绑定在并发调用的情况下不起作用
- python - Django 3.1 | 管理页面外观问题
- python - SIR 估计在估计参数时发现错误原因
- jquery - 如果选择了单个结果,则覆盖结果 div,如果选择了多个,则追加
- c# - 如何在 EF 6 中重命名自动生成的 n:m 表?
- python - 抓取隐藏数据 [ window.__WEB_CONTEXT__= ] ...最好使用 Scrapy