DSCResources/cIntuneAntivirusPolicyWindows10SettingCatalog/cIntuneAntivirusPolicyWindows10SettingCatalog.schema.psm1
configuration cIntuneAntivirusPolicyWindows10SettingCatalog { param ( [Parameter()] [hashtable[]] $Items ) <# IntuneAntivirusPolicyWindows10SettingCatalog [String] #ResourceName { DisplayName = [string] [AccessTokens = [string[]]] [AllowArchiveScanning = [string]{ 0 | 1 }] [AllowBehaviorMonitoring = [string]{ 0 | 1 }] [AllowCloudProtection = [string]{ 0 | 1 }] [AllowDatagramProcessingOnWinServer = [string]{ 0 | 1 }] [AllowEmailScanning = [string]{ 0 | 1 }] [AllowFullScanOnMappedNetworkDrives = [string]{ 0 | 1 }] [AllowFullScanRemovableDriveScanning = [string]{ 0 | 1 }] [AllowIntrusionPreventionSystem = [string]{ 0 | 1 }] [AllowIOAVProtection = [string]{ 0 | 1 }] [AllowNetworkProtectionDownLevel = [string]{ 0 | 1 }] [AllowOnAccessProtection = [string]{ 0 | 1 }] [AllowRealtimeMonitoring = [string]{ 0 | 1 }] [AllowScanningNetworkFiles = [string]{ 0 | 1 }] [AllowScriptScanning = [string]{ 0 | 1 }] [AllowUserUIAccess = [string]{ 0 | 1 }] [ApplicationId = [string]] [ApplicationSecret = [PSCredential]] [ArchiveMaxDepth = [Int32]] [ArchiveMaxSize = [Int32]] [Assignments = [MSFT_DeviceManagementConfigurationPolicyAssignments[]]] [AvgCPULoadFactor = [Int32]] [CertificateThumbprint = [string]] [CheckForSignaturesBeforeRunningScan = [string]{ 0 | 1 }] [CloudBlockLevel = [string]{ 0 | 2 | 4 | 6 }] [CloudExtendedTimeout = [Int32]] [CompanyName = [string]] [Credential = [PSCredential]] [DaysToRetainCleanedMalware = [Int32]] [DependsOn = [string[]]] [Description = [string]] [DisableAccountProtectionUI = [string]{ 0 | 1 }] [DisableAppBrowserUI = [string]{ 0 | 1 }] [DisableCatchupFullScan = [string]{ 0 | 1 }] [DisableCatchupQuickScan = [string]{ 0 | 1 }] [DisableClearTpmButton = [string]{ 0 | 1 }] [DisableCoreServiceECSIntegration = [string]{ 0 | 1 }] [DisableCoreServiceTelemetry = [string]{ 0 | 1 }] [DisableDeviceSecurityUI = [string]{ 0 | 1 }] [DisableDnsOverTcpParsing = [string]{ 0 | 1 }] [DisableEnhancedNotifications = [string]{ 0 | 1 }] [DisableFamilyUI = [string]{ 0 | 1 }] [DisableHealthUI = [string]{ 0 | 1 }] [DisableHttpParsing = [string]{ 0 | 1 }] [DisableLocalAdminMerge = [string]{ 0 | 1 }] [DisableNetworkUI = [string]{ 0 | 1 }] [DisableSshParsing = [string]{ 0 | 1 }] [DisableTlsParsing = [string]{ 0 | 1 }] [DisableTpmFirmwareUpdateWarning = [string]{ 0 | 1 }] [DisableVirusUI = [string]{ 0 | 1 }] [Email = [string]] [EnableCustomizedToasts = [string]{ 0 | 1 }] [EnableInAppCustomization = [string]{ 0 | 1 }] [EnableLowCPUPriority = [string]{ 0 | 1 }] [EnableNetworkProtection = [string]{ 0 | 1 | 2 }] [EngineUpdatesChannel = [string]{ 0 | 2 | 3 | 4 | 5 | 6 }] [Ensure = [string]{ Absent | Present }] [ExcludedExtensions = [string[]]] [ExcludedPaths = [string[]]] [ExcludedProcesses = [string[]]] [HideRansomwareDataRecovery = [string]{ 0 | 1 }] [HideWindowsSecurityNotificationAreaControl = [string]{ 0 | 1 }] [HighSeverityThreats = [string]{ allow | block | clean | quarantine | remove | userdefined }] [Identity = [string]] [LowSeverityThreats = [string]{ allow | block | clean | quarantine | remove | userdefined }] [ManagedIdentity = [bool]] [MeteredConnectionUpdates = [string]] [ModerateSeverityThreats = [string]{ allow | block | clean | quarantine | remove | userdefined }] [Phone = [string]] [PlatformUpdatesChannel = [string]{ 0 | 2 | 3 | 4 | 5 | 6 }] [PsDscRunAsCredential = [PSCredential]] [PUAProtection = [string]{ 0 | 1 | 2 }] [RandomizeScheduleTaskTimes = [string]{ 0 | 1 }] [RealTimeScanDirection = [string]{ 0 | 1 | 2 }] [ScanParameter = [string]{ 1 | 2 }] [ScheduleQuickScanTime = [Int32]] [SchedulerRandomizationTime = [Int32]] [ScheduleScanDay = [string]{ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 }] [ScheduleScanTime = [Int32]] [SecurityIntelligenceUpdatesChannel = [string]{ 0 | 4 | 5 }] [SevereThreats = [string]{ allow | block | clean | quarantine | remove | userdefined }] [SignatureUpdateFallbackOrder = [string[]]] [SignatureUpdateFileSharesSources = [string[]]] [SignatureUpdateInterval = [Int32]] [SubmitSamplesConsent = [string]{ 0 | 1 | 2 | 3 }] [TamperProtection = [string]{ 0 | 1 }] [TemplateId = [string]{ 45fea5e9-280d-4da1-9792-fb5736da0ca9_1 | 804339ad-1553-4478-a742-138fb5807418_1 | d948ff9b-99cb-4ee0-8012-1fbc09685377_1 | e3f74c5a-a6de-411d-aef6-eb15628f3a0a_1 }] [TenantId = [string]] [URL = [string]] } #> Import-DscResource -ModuleName PSDesiredStateConfiguration Import-DscResource -ModuleName Microsoft365DSC $dscResourceName = 'IntuneAntivirusPolicyWindows10SettingCatalog' $param = $PSBoundParameters $param.Remove("InstanceName") $dscParameterKeys = 'DisplayName' -split ', ' foreach ($item in $Items) { if (-not $item.ContainsKey('Ensure')) { $item.Ensure = 'Present' } $keyValues = foreach ($key in $dscParameterKeys) { $item.$key } $executionName = $keyValues -join '_' $executionName = $executionName -replace "[\s()\\:*-+/{}```"']", '_' (Get-DscSplattedResource -ResourceName $dscResourceName -ExecutionName $executionName -Properties $item -NoInvoke).Invoke($item) } } |