在Windows上读取性能数据计数器是否需要任何特殊的安全权限
Are any special security rights required to read performance data counters on Windows?
我正在将Windows应用程序从始终作为SYSTEM
帐户运行迁移到作为有限用户帐户运行。此应用程序执行的许多操作之一是查询Windows性能计数器,以便记录整个系统内存和CPU使用情况。MSDN的特权常量列表很模糊,但SE_PROF_SINGLE_PROCESS_NAME
或SE_SYSTEM_PROFILE_NAME
可能是此类操作所必需的。但是,MSDN关于PdhOpenQuery
、PdhAddCounter
和PdhCollectQueryData
等函数的文档中没有提到任何必需的权限。
鉴于此,查询性能数据计数器是否需要任何权限?或者,SE_PROF_SINGLE_PROCESS_NAME
或SE_SYSTEM_PROFILE_NAME
权限具体授予哪些访问权限?
此处的"关于性能计数器"描述中提到了所需的权限:
只有计算机管理员或性能日志用户组中的用户才能记录和查看计数器数据。"管理员"组中的用户只有在使用"以管理员身份运行…"打开的命令提示符窗口中启动了用于记录和查看计数器数据的工具时,才能记录和查看计数数据。。。。"性能监视用户"组中的用户可以查看计数器数据。
Windows XP:管理员或管理员组中的用户可以无限制地记录和查看计数器数据。
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 奇怪的(对我来说)返回声明 - 在谷歌上找不到任何关于它的信息
- 如何在不产生任何垃圾的情况下获得C中的像素
- 为什么我不能在 C++ 中的特定函数重载中调用同一函数的任何其他重载?
- 编译要在英特尔Hyperscan中使用的.cc文件时出现问题
- C++映射有2个键,这样任何1个键都可以用来获取值
- Visual Studio(或任何其他工具)能否将地址解释为调用堆栈(boost上下文)的开头
- Termux权限被拒绝
- RtlCaptureStackBackTrace未捕获任何帧
- AWS Lambda C++运行时权限被拒绝
- 链表c++插入,所有情况都已检查,但没有任何工作
- C++模板函数,用于比较任何无符号整数和有符号整数
- 将gsl c++程序与"英特尔MKL"链接
- Arduino millis() - millis() 怎么能等于 0 以外的任何东西?
- 尝试摆脱任何堆内存分配
- 是否有任何C++功能可以对地图进行排序?
- 打印时有二叉树问题.用户输入不打印任何内容
- 共享指针和具有自定义删除程序的唯一指针之间的语法差异背后的任何原因
- 在Windows上读取性能数据计数器是否需要任何特殊的安全权限
- GLSL 着色器在英特尔的集成 GPU 上运行完美,但在 NVIDIA 上没有任何运行