Ale*_*sko 3 sql-server permissions kill
For a SQL Server on a VM/physical box (not Azure SQL database!)
Run Code Online (Sandbox Code Playgroud)
这是否可以授予 KILL 权限,但以某种方式授予者只能终止某些数据库的连接?
我不想授予此用户杀死任何连接的能力,而只是 1 个数据库
谢谢!!
通过模块签名授予高度选择性/细粒度的权限相当容易:
USE [master]
ALTER ANY CONNECTION
(根据@sepupic)ADD SIGNATURE
EXECUTE
对该存储过程的低特权登录权限。然而,弄清楚哪个会话/SPID 正在影响哪个数据库并不容易。该database_id
所报告的sys.dm_exec_sessions
是“当前”数据库:无论是什么连接到/它们的默认DB如果没有连接字符串/不管DB经最近一次更改为指定的USE
声明。但是“当前”数据库不一定是问题所在。任何人都可以使用由 3 部分组成的名称在其他 DB 中执行代码和运行查询(一个查询可以引用 3 个表,每个表位于单独的 DB 中,并且它们都不在“当前”DB 中)。因此,我不确定您将如何可靠地强制执行“仅某些数据库”约束。
归档时间: |
|
查看次数: |
8722 次 |
最近记录: |