Monitor ověření identity strážených prostředků infrastruktury

Microsoft.Windows.GuardedFabric.10.0.GuardedHostAttestationMonitor (UnitMonitor)

Sledovací jednotka založená na skriptu, která pravidelně kontroluje stav ověření identity.

Knowledge Base article:

Souhrn

Sledovací jednotka založená na skriptu pro strážené prostředky infrastruktury, která pravidelně provádí žádost o ověření identity.

Příčiny

K chybě dojde v případě, že není úspěšná žádost o ověření identity. Podrobnější popis příčin selhání najdete v protokolu událostí.

Řešení

Vyřeší se automaticky, pokud strážené prostředky infrastruktury úspěšně provedou své pravidelné žádosti o ověření identity.

Element properties:

TargetMicrosoft.Windows.GuardedFabric.10.0.ComputerRole.GuardedHost
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityHigh
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.TimedScript.TwoStateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Chyba dostupnosti ověření identity stráženého hostitele
Chyba ověření identity stráženého hostitele
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.GuardedFabric.10.0.GuardedHostAttestationMonitor" Accessibility="Public" Enabled="true" Target="HGSDL!Microsoft.Windows.GuardedFabric.10.0.ComputerRole.GuardedHost" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.TimedScript.TwoStateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.GuardedFabric.10.0.GuardedHostAttestationMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>28800</IntervalSeconds>
<SyncTime/>
<ScriptName>ClientAttestationMonitor.ps1</ScriptName>
<Arguments/>
<ScriptBody><Script>#Unit monitoring script for checking attestation status
$testSuccess = $true
$api = New-Object -ComObject 'MOM.ScriptAPI'
$bag = $api.CreatePropertyBag()

Stop-Process -ProcessName WmiPrvSe -Force -ErrorAction Ignore
$getInfo = Get-HgsClientConfiguration
$testSuccess = $true
if($getInfo.Mode -ne "Local")
{
if($getInfo.AttestationStatus -ne "Passed")
{
$testSuccess = $false
}
}

$bag.AddValue("Result", $testSuccess)
#$api.Return($bag)
$bag</Script></ScriptBody>
<TimeoutSeconds>120</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Boolean">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Boolean">false</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Boolean">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Boolean">true</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>