我正在开发一个使用PDH来查询一些性能计数器数据的Windows服务。
该服务必须由另一个用户(即不是全能的系统)运行。
我知道运行该服务的用户必须是“性能监视器用户”内置组的成员才能进行这些调用。当我将用户添加到运行服务的计算机上的此组(通过打开 lusrmgr.msc,并将用户添加到那里的组)时,服务正常工作并且 PDH 调用成功。这适用于本地用户、域用户和托管服务帐户 (MSA)。
我希望能够在域级别(而不是计算机级别)将域用户或 MSA 添加到性能监视器用户组。在域控制器上,我看到有一个包含性能监视器用户的内置组列表,但是当我将域用户或 MSA 添加到该组时,它似乎不允许我的服务按照我的预期使用 PDH。
- 正如我所假设的那样,域内置组是否应该向属于该域的计算机上的域用户授予这样的权限?
- 如果不是,域内置组有什么用?它们与机器级内置组有何不同?他们以什么方式向其成员授予任何权限?
- 我是否缺少其他一些相关设置来使这些更改生效?
我不是 Active Directory 和 Windows 网络管理方面的专家,所以我可能会遗漏一些基本的东西,我很欣赏任何见解。
默认情况下,域 BULTIN 组不会授予域成员访问权限。域内置组实际上相当于域控制器的本地计算机组。
--
您可以调整此行为并使它们按照您描述的方式工作,但我相信正确的路径是创建新的域本地安全组。然后,通过组策略(受限组功能或本地组的组策略首选项),确保新组是所有域成员本地“性能监视器用户”组的成员。
这样,您只需更改新组的成员身份即可对域范围内的访问进行更改。
Active Directory 中的内置组仅适用于域控制器。向其中添加用户或组不适用于工作站或成员服务器。但是,组策略限制组功能可用于通过组策略将帐户或组添加到工作站和成员服务器。