@@ -29,23 +29,31 @@ function Invoke-CippWebhookProcessing {
2929 Set-CIPPSignInState - TenantFilter $TenantFilter - User $data.UserId - AccountEnabled $false - APIName ' Alert Engine' - Headers ' Alert Engine'
3030 }
3131 ' becremediate' {
32- $username = (New-GraphGetRequest - uri " https://graph.microsoft.com/beta/users/$ ( $data.UserId ) " - tenantid $TenantFilter ).UserPrincipalName
33- Set-CIPPResetPassword - UserID $username - tenantFilter $TenantFilter - APIName ' Alert Engine' - Headers ' Alert Engine'
34- Set-CIPPSignInState - userid $username - AccountEnabled $false - tenantFilter $TenantFilter - APIName ' Alert Engine' - Headers ' Alert Engine'
35- Revoke-CIPPSessions - userid $username - username $username - Headers ' Alert Engine' - APIName ' Alert Engine' - tenantFilter $TenantFilter
32+ $Username = (New-GraphGetRequest - uri " https://graph.microsoft.com/beta/users/$ ( $data.UserId ) " - tenantid $TenantFilter ).UserPrincipalName
33+ Set-CIPPResetPassword - UserID $Username - tenantFilter $TenantFilter - APIName ' Alert Engine' - Headers ' Alert Engine'
34+ Set-CIPPSignInState - userid $Username - AccountEnabled $false - tenantFilter $TenantFilter - APIName ' Alert Engine' - Headers ' Alert Engine'
35+ Revoke-CIPPSessions - userid $Username - username $Username - Headers ' Alert Engine' - APIName ' Alert Engine' - tenantFilter $TenantFilter
3636 $RuleDisabled = 0
37- New-ExoRequest - anchor $username - tenantid $TenantFilter - cmdlet ' Get-InboxRule' - cmdParams @ {Mailbox = $username ; IncludeHidden = $true } | Where-Object { $_.Name -ne ' Junk E-Mail Rule' -and $_.Name -notlike ' Microsoft.Exchange.OOF.*' } | ForEach-Object {
38- $null = New-ExoRequest - anchor $username - tenantid $TenantFilter - cmdlet ' Disable-InboxRule' - cmdParams @ {Confirm = $false ; Identity = $_.Identity }
39- " Disabled Inbox Rule $ ( $_.Identity ) for $username "
40- $RuleDisabled ++
37+ $RuleFailed = 0
38+ New-ExoRequest - anchor $Username - tenantid $TenantFilter - cmdlet ' Get-InboxRule' - cmdParams @ {Mailbox = $Username ; IncludeHidden = $true } | Where-Object { $_.Name -ne ' Junk E-Mail Rule' -and $_.Name -notlike ' Microsoft.Exchange.OOF.*' } | ForEach-Object {
39+ try {
40+ Set-CIPPMailboxRule - Username $Username - TenantFilter $TenantFilter - RuleId $_.Identity - RuleName $_.Name - Disable - APIName ' Alert Engine' - Headers ' Alert Engine'
41+ $RuleDisabled ++
42+ } catch {
43+ $_.Exception.Message
44+ $RuleFailed ++
45+ }
4146 }
42- if ($RuleDisabled ) {
43- " Disabled $RuleDisabled Inbox Rules for $username "
47+ if ($RuleDisabled -gt 0 ) {
48+ " Disabled $RuleDisabled Inbox Rules for $Username "
4449 } else {
45- " No Inbox Rules found for $username . We have not disabled any rules."
50+ " No Inbox Rules found for $Username . We have not disabled any rules."
4651 }
47- " Completed BEC Remediate for $username "
48- Write-LogMessage - API ' BECRemediate' - tenant $tenantfilter - message " Executed Remediation for $username " - sev ' Info'
52+ if ($RuleFailed -gt 0 ) {
53+ " Failed to disable $RuleFailed Inbox Rules for $Username "
54+ }
55+ " Completed BEC Remediate for $Username "
56+ Write-LogMessage - API ' BECRemediate' - tenant $TenantFilter - message " Executed Remediation for $Username " - sev ' Info'
4957 }
5058 ' cippcommand' {
5159 $CommandSplat = @ {}
0 commit comments