Module/Rule.DnsServerRootHint/Convert/DnsServerRootHintRule.Convert.psm1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. using module .\..\..\Common\Common.psm1 using module .\..\DnsServerRootHintRule.psm1 # Header <# .SYNOPSIS Convert the contents of an xccdf check-content element into an Dns Server Root Hint object .DESCRIPTION The DnsServerRootHintRule class is used to extract the Dns Server Root Hints from the check-content of the xccdf. Once a STIG rule is identified as a DnsServerRootHint, it is passed to the DnsServerRootHintRule class for parsing and validation. .PARAMETER HostName The host name of the root hint server .PARAMETER IpAddress The ip address of the root hint server #> class DnsServerRootHintRuleConvert : DnsServerRootHintRule { <# .SYNOPSIS Empty constructor for SplitFactory #> DnsServerRootHintRuleConvert () { } <# .SYNOPSIS Converts a xccdf stig rule element into a Dns Server Root Hint Rule .PARAMETER XccdfRule The STIG rule to convert #> DnsServerRootHintRuleConvert ([xml.xmlelement] $XccdfRule) : base ($XccdfRule, $true) { $this.set_HostName('$null') $this.set_IpAddress('$null') $this.SetDuplicateRule() $this.SetDscResource() } hidden [void] SetDscResource () { if ($null -eq $this.DuplicateOf) { $this.DscResource = 'Script' } else { $this.DscResource = 'None' } } static [bool] Match ([string] $CheckContent) { if ( $CheckContent -Match 'dnsmgmt\.msc' -and $CheckContent -Match 'Verify the \"root hints\"' ) { return $true } return $false } } |