从各种文档来看,要更改 WMI 访问,您需要使用 WMI 来访问正在运行的服务并修改树的特定部分。
使用 UI 更改 150,000 个主机有点烦人。
然后必须在添加新主机的过程中包含此类更改。
可以编写一个脚本来执行相同操作,但需要实时连接到所有这些机器,或者分发以供以后更新(例如在启动/安装脚本中)。然后,您必须费力地从示例访问控制中复制二进制 SD 数据。
我还发现您可以更改 wbem/*.mof 文件以包含 SDDL,但目前我还不清楚这一切是如何运作的。
我是否只是忽略了一些简单的管理要点?
答案1
对此进行了一些研究,看起来下面的方法应该有效:
对于带有组策略管理控制台 (GPMC) 的 Windows 2003,请执行以下步骤:
- 导航至
Start Menu
>Administrative Tools
>Group Policy Management
。 - 在左侧窗格中,导航到 Forest:
Domain Name
->Domains
->Domain Name
,其中域名是您要修改的域的名称。 Domain Name
在左侧窗格中右键单击并选择Create and Link a GPO Here
。- 为新策略命名
WMI Permissions
。
笔记: 由于 WMI 必须与远程主机建立 DCOM 连接,因此这足以配置 DCOM 的访问权限。
配置分布式组件对象模型 (DCOM) 权限:
WMI Permissions
通过the Group Policy Management
插件或通过插件ADUC
导航到组策略。- 确保该
WMI Permissions
策略突出显示并单击Edit
按钮。 - 导航到
Computer Configuration
->Windows Settings
->Security Settings
->Local Policies
->Security Options
。 - 在右侧 UI 窗格中,双击
DCOM: Machine Access Restrictions in Security Descriptor Definition Language (SDDL) syntax
。 - 在 旁边的框中打勾
Define this policy setting
。 - 点击
Edit Security
按钮。 - 单击
Add
按钮;在随后弹出的窗口中,指定将使用的域管理员帐户。 - 单击“确定”。
- 在
Group or user names
字段中,选择您在步骤7中指定的域管理员。 - 在该字段中,确保该选项的列
Permissions for Administrators
中有复选标记。Allow
Remote Access
- 单击“确定”。
- 单击“确定”。
- 在右侧 UI 窗格中,双击
DCOM: Machine Launch Restrictions in Security Descriptor Definition Language (SDDL) syntax
。 - 在 旁边的框中打勾
Define this policy setting
。 - 点击
Edit Security
按钮。 - 单击
Add
按钮;在随后弹出的窗口中,指定将使用的域管理员帐户。 - 单击“确定”。
- 在组或用户名字段中,选择您在步骤 16 中指定的域管理员。
- 在该
Permissions for Administrators
字段中,确保和 的Allow
列下都有复选标记。Remote Launch
Remote Activation
- 单击“确定”。
- 单击“确定”。
- 关闭
Group Policy Object Editor
窗口。 - 单击“确定”并关闭
Active Directory Users and Computers
窗口。
答案2
引用https://answers.splunk.com/answers/2703/how-to-enable-wmi-data-collection-on-a-domain-server.html
目前,没有非深奥的方法来全局配置域范围内的 WMI 安全设置。每台机器都有自己的设置。但是,有一个 MSDN 博客列出了您可以采取的步骤来创建包含适当安全描述符的脚本,然后您可以将其作为启动脚本放入 GPO 中,并让您的计算机在启动时获得更新的安全设置。
以下是博客文章的链接,其中包含创建脚本的方法:https://blogs.msdn.microsoft.com/spatdsg/2007/11/21/set-wmi-namespace-security-via-gpo-script/
这种方法为我提供了一种可用的方法,可以使用 GPO 为非域管理员服务帐户启用 WMI 访问。
答案3
微软还有另一篇较新的文章演示了如何使用 PowerShell 脚本通过组策略执行此操作:
不确定他们为什么要使用计划任务来执行此操作。我相信组策略启动脚本现在本身支持 PowerShell。