sql-server - SQL Server:列出没有查看服务器状态权限的数据库连接
问题描述
对于应用程序,我需要查看当前登录用户使用数据库的会话数。该表sys.dm_exec_sessions
允许我检索这些数据,但是:
- 这包含所有登录用户的数据,我只需要有关当前登录用户的信息
- 这需要
VIEW SERVER STATE
许可或一些需要将数据库标记为可信任的解决方法。两个权限标志都是不可能的情况。
我希望该VIEW DATABASE STATE
权限足以查看某个数据库(而不是服务器)的会话。但是,如果授予用户此权限,则在查询sys.dm_exec_sessions
数据库时仅显示一条记录(当前会话)。
我以某种方式期望此权限可以让我检索当前登录用户而不是所有用户的所有连接,但事实并非如此。
问题
VIEW SERVER STATE
如果不授予权限或将数据库标记为 TRUSTWORTHY,我能做些什么吗?我能够获得VIEW DATABASE STATE
许可,但这要么不起作用,要么我做错了什么。
解决方案
推荐阅读
- camera - 流式 html5 相机输出
- javascript - ES6:根据另一个数组的值从一个数组中获取值
- arrays - 将对象推送到数组数组vue重新渲染失败
- python - 按值拆分列表的快速方法?
- javascript - 如果变量类型没有由 var、let 或 const 初始化,或者仍然分配给数字类型,为什么它总是“字符串”?
- swiftui - SwiftUI:.sheet() 在关闭当前工作表时不会使用预期数据转到上一个视图
- python - python3上的打印语句不再登录谷歌云平台
- .net-core - 如何使用嵌入式调试类型的 VS 2019 代码覆盖率?
- c# - C# 数据表到字典
- c# - C# WebClient 下载某些页面的源代码,但不是全部