我有一个带有此 WMI 过滤器的 GPO:SELECT Name From Win32_ServerFeature WHERE Name = 'Web Server (IIS)'
GPO 有一个启动脚本,用于修改文件来指示负载均衡器服务器可以发送流量。
通常,重新启动时,启动脚本会运行。但是,安装补丁后,我注意到服务器从未返回到负载平衡器。启动脚本会创建一个日志文件,我发现该日志文件从未为该重新启动创建过。我再次重新启动,启动脚本运行了。我在 EventViewer 中发现了以下事件,它显示由于 WMI 过滤而未应用 GPO:
Log Name: Microsoft-Windows-GroupPolicy/Operational
Source: Microsoft-Windows-GroupPolicy
Date: 5/4/2023 7:48:26 AM
Event ID: 5313
Task Category: None
Level: Information
Keywords:
User: SYSTEM
Computer: server01.mydomain
Description:
The following Group Policy objects were not applicable because they were filtered out :
gpo.autoreboot.IIS_OK
Denied (WMI Filter)
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-GroupPolicy" Guid="{aea1b4fa-97d1-45f2-a64c-4d69fffd92c9}" />
<EventID>5313</EventID>
<Version>0</Version>
<Level>4</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x4000000000000000</Keywords>
<TimeCreated SystemTime="2023-05-04T11:48:26.661096300Z" />
<EventRecordID>274604</EventRecordID>
<Correlation ActivityID="{ff168884-e55b-47c0-960c-40b500f178c2}" />
<Execution ProcessID="1528" ThreadID="3212" />
<Channel>Microsoft-Windows-GroupPolicy/Operational</Channel>
<Computer>server01.mydomain</Computer>
<Security UserID="S-1-5-18" />
</System>
<EventData>
<Data Name="DescriptionString">gpo.autoreboot.IIS_OK
Denied (WMI Filter)
</Data>
<Data Name="GPOInfoList"><GPO ID="{guid}"><Name>gpo.autoreboot.IIS_OK</Name><Version>131074</Version><SOM>LDAP://OU=servers,DC=mydomain</SOM><FSPath>\\mydomain\SysVol\mydomain\Policies\{guid}\Machine</FSPath><Reason>DENIED-WMIFILTER</Reason></GPO></Data>
</EventData>
</Event>
这是扩展和解码的数据元素:
<GPO ID="{guid}">
<Name>gpo.autoreboot.IIS_OK</Name>
<Version>131074</Version>
<SOM>LDAP://OU=servers,DC=mydomain</SOM>
<FSPath>\\mydomain\SysVol\mydomain\Policies\{guid}\Machine</FSPath>
<Reason>DENIED-WMIFILTER</Reason>
</GPO>
随后的重新启动没有发生此事件,并且有另一个事件列出了所有应用的 GPO,其中包括此事件。更新是否有某些内容可以阻止 WMI 筛选在 Win32_ServerFeature 类上正常工作?如果是这样,是否有解决方法可以确保此脚本仅在 IIS 服务器上运行?我曾考虑过删除 WMI 筛选器,并在脚本中添加一个条件来检查角色是否已安装。
这发生在具有不同操作系统版本的多台服务器上,因此我认为这不是一次性事件。