@@ -45,10 +45,18 @@ function Invoke-CIPPStandardPhishingSimulations {
45
45
Select-Object - Property Identity, Name, SenderIpRanges, Domains, SenderDomainIs
46
46
47
47
[String []]$AddSenderIpRanges = $Settings.SenderIpRanges.value | Where-Object { $_ -notin $RuleState.SenderIpRanges }
48
- [String []]$RemoveSenderIpRanges = $RuleState.SenderIpRanges | Where-Object { $_ -notin $Settings.SenderIpRanges.value }
48
+ if ($Settings.RemoveExtraUrls -eq $true ) {
49
+ [String []]$RemoveSenderIpRanges = $RuleState.SenderIpRanges | Where-Object { $_ -notin $Settings.SenderIpRanges.value }
50
+ } else {
51
+ $RemoveSenderIpRanges = @ ()
52
+ }
49
53
50
54
[String []]$AddDomains = $Settings.Domains.value | Where-Object { $_ -notin $RuleState.Domains }
51
- [String []]$RemoveDomains = $RuleState.Domains | Where-Object { $_ -notin $Settings.Domains.value }
55
+ if ($Settings.RemoveExtraUrls -eq $true ) {
56
+ [String []]$RemoveDomains = $RuleState.Domains | Where-Object { $_ -notin $Settings.Domains.value }
57
+ } else {
58
+ $RemoveDomains = @ ()
59
+ }
52
60
53
61
$RuleIsCorrect = ($RuleState.Name -like " *PhishSimOverr*" ) -and
54
62
($AddSenderIpRanges.Count -eq 0 -and $RemoveSenderIpRanges.Count -eq 0 ) -and
@@ -59,7 +67,11 @@ function Invoke-CIPPStandardPhishingSimulations {
59
67
Select-Object - Property Value
60
68
61
69
[String []]$AddEntries = $Settings.PhishingSimUrls.value | Where-Object { $_ -notin $SimUrlState.value }
62
- [String []]$RemoveEntries = $SimUrlState.value | Where-Object { $_ -notin $Settings.PhishingSimUrls.value }
70
+ if ($Settings.RemoveExtraUrls -eq $true ) {
71
+ [String []]$RemoveEntries = $SimUrlState.value | Where-Object { $_ -notin $Settings.PhishingSimUrls.value }
72
+ } else {
73
+ $RemoveEntries = @ ()
74
+ }
63
75
64
76
$PhishingSimUrlsIsCorrect = ($AddEntries.Count -eq 0 -and $RemoveEntries.Count -eq 0 )
65
77
@@ -133,14 +145,16 @@ function Invoke-CIPPStandardPhishingSimulations {
133
145
ListType = ' Url'
134
146
ListSubType = ' AdvancedDelivery'
135
147
}
136
- # Remove entries that are not in the settings
137
- If ($RemoveEntries.Count -gt 0 ) {
138
- $cmdParams.Entries = $RemoveEntries
139
- Try {
140
- $null = New-ExoRequest - TenantId $Tenant - cmdlet ' Remove-TenantAllowBlockListItems' - cmdParams $cmdParams
141
- Write-LogMessage - API ' Standards' - Tenant $Tenant - message " Removed Phishing Simulation URLs from Allowlist." - sev Info
142
- } Catch {
143
- Write-LogMessage - API ' Standards' - Tenant $Tenant - message " Failed to remove Phishing Simulation URLs from Allowlist." - sev Error - LogData $_
148
+ if ($Settings.RemoveExtraUrls -eq $true ) {
149
+ # Remove entries that are not in the settings
150
+ If ($RemoveEntries.Count -gt 0 ) {
151
+ $cmdParams.Entries = $RemoveEntries
152
+ Try {
153
+ $null = New-ExoRequest - TenantId $Tenant - cmdlet ' Remove-TenantAllowBlockListItems' - cmdParams $cmdParams
154
+ Write-LogMessage - API ' Standards' - Tenant $Tenant - message " Removed Phishing Simulation URLs from Allowlist." - sev Info
155
+ } Catch {
156
+ Write-LogMessage - API ' Standards' - Tenant $Tenant - message " Failed to remove Phishing Simulation URLs from Allowlist." - sev Error - LogData $_
157
+ }
144
158
}
145
159
}
146
160
# Add entries that are in the settings
0 commit comments