IIS 7 Web Server Discovery

Microsoft.Windows.InternetInformationServices.2008.WebServer.Discovery.Rule (Discovery)

This rule runs on every IIS 7 Web Server to detect whether the W3SVC service is installed.

Element properties:

TargetMicrosoft.Windows.InternetInformationServices.2008.ServerRole
EnabledTrue
Frequency14400
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:
Discovered relationships and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DiscoveryDataSource DataSource Microsoft.Windows.FilteredRegistryDiscoveryProvider Default

Source Code:

<Discovery ID="Microsoft.Windows.InternetInformationServices.2008.WebServer.Discovery.Rule" Enabled="onEssentialMonitoring" Target="Microsoft.Windows.InternetInformationServices.2008.ServerRole" ConfirmDelivery="false" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.Windows.InternetInformationServices.2008.WebServer"/>
<DiscoveryRelationship TypeID="Microsoft.Windows.InternetInformationServices.2008.ServerRole.Hosts.Microsoft.Windows.InternetInformationServices.2008.WebServer"/>
</DiscoveryTypes>
<DataSource ID="DiscoveryDataSource" TypeID="Windows!Microsoft.Windows.FilteredRegistryDiscoveryProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<RegistryAttributeDefinitions>
<RegistryAttributeDefinition>
<AttributeName>IIS_WEBSERVER_INSTALLED</AttributeName>
<Path>SOFTWARE\Microsoft\InetStp\Components\W3SVC</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
</RegistryAttributeDefinitions>
<Frequency>14400</Frequency>
<ClassId>$MPElement[Name="Microsoft.Windows.InternetInformationServices.2008.WebServer"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
<Value>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="IISCommon!Microsoft.Windows.InternetInformationServices.WebServer"]/IIS5IsolationMode$</Name>
<Value>0</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>IIS Web Server</Value>
</Setting>
</Settings>
</InstanceSettings>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Values/IIS_WEBSERVER_INSTALLED</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>1</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</DataSource>
</Discovery>