sql-server - SQL Server 为用户授予 SQL 代理访问权限
问题描述
我需要对用户隐藏不需要的数据库,只允许查看相关的数据库。我已经设法在Restrict SQL Server Login access to only one database with following query中提供的答案的帮助下做到了这一点
--Step 1: (create a new user)
create LOGIN <<UserName>> WITH PASSWORD='<<Password>>', CHECK_POLICY = OFF;
-- Step 2:(deny view to any database)
USE master;
GO
DENY VIEW ANY DATABASE TO <<UserName>>;
--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::<<DBName>> TO <<UserName>>;
GO
现在,从上面的脚本创建的 sql server 登录想要访问 SQL 代理以安排和执行 sql server 作业。我已将下图所示的权限授予创建的 sql server 登录名。但它不起作用。
如果我让用户成为系统管理员,那么权限就被授予了。但随后它将显示所有数据库。不仅是允许的。
如何让 SQL Server 代理访问仅使用给定数据库可识别性创建的用户登录。
解决方案
推荐阅读
- c# - 如何在对象列表(C#)中获取函数的最大值?-初学者-
- python - Matplotlib:如何在不改变线条长度的情况下改变线条的宽度
- linux - Cpanel 没有让我选择更改我的一个域的根目录
- tomcat - HttpMediaTypeNotSupportedException:不支持内容类型“video/mp4”。通过 Postman 上传视频时 Spring webflux
- vue.js - 为什么我的表单没有发送到后端图片
- perl - 三元产生与 If 不同的结果
- reactjs - 在泛型类中按名称获取属性
- assembly - NASM _printf 函数在内存访问代码后不起作用
- html - 向右浮动不会影响我的导航栏的布局
- angular - Angular 11 表单在不创建 formGroup 或使用 formBuilder 的情况下确认密码字段