Module/Rule.AuditPolicy/AuditPolicyRule.psm1
# Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. using module .\..\Common\Common.psm1 using module .\..\Rule\Rule.psm1 #header <# .SYNOPSIS Audit Policy object to manage Audit Policy STIG Rules .DESCRIPTION The AuditPolicyRule class is used to manage the Audit Policy Settings .PARAMETER Subcategory The name of the subcategory to configure .PARAMETER AuditFlag The Success or failure flag .PARAMETER Ensure A present or absent flag #> Class AuditPolicyRule : Rule { [string] $Subcategory [string] $AuditFlag [ensure] $Ensure <#(ExceptionValue)#> <# .SYNOPSIS Default constructor to support the AsRule cast method #> AuditPolicyRule () {} <# .SYNOPSIS The Convert child class constructor .PARAMETER Rule The STIG rule to convert .PARAMETER Convert A simple bool flag to create a unique constructor signature #> AuditPolicyRule ([xml.xmlelement] $Rule, [bool] $Convert) : Base ($Rule, $Convert) {} <# .SYNOPSIS Used to load PowerSTIG data from the processed data directory .PARAMETER Rule The STIG rule to load #> AuditPolicyRule ([xml.xmlelement] $Rule) : Base ($Rule) { $this.Subcategory = $Rule.Subcategory $this.AuditFlag = $Rule.AuditFlag $this.Ensure = $Rule.Ensure } <# .SYNOPSIS Creates the class specifc help content and passes it to the base class method to create the help content #> [PSObject] GetExceptionHelp() { if ($this.Ensure -eq 'Absent') { $value = 'Present' } else { $value = 'Absent' } return @{ Value = $value Notes = "'Present' and 'Absent' are the only valid values" } } } |