Skip to content

Commit 1565611

Browse files
Merge pull request #624 from KelvinTegelaar/dev
Dev
2 parents c088057 + 93c4dc6 commit 1565611

File tree

5 files changed

+41
-14
lines changed

5 files changed

+41
-14
lines changed

DomainAnalyser_All/run.ps1

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ $Result = [PSCustomObject]@{
4242
ExpectedSPFRecord = ''
4343
ActualSPFRecord = ''
4444
SPFPassAll = ''
45+
ActualMXRecords = ''
4546
MXPassTest = ''
4647
DMARCPresent = ''
4748
DMARCFullPolicy = ''
@@ -79,6 +80,7 @@ $MXRecord = Read-MXRecord -Domain $Domain -ErrorAction Stop
7980

8081
$Result.ExpectedSPFRecord = $MXRecord.ExpectedInclude
8182
$Result.MXPassTest = $false
83+
$Result.ActualMXRecords = $MXRecord.Records
8284

8385
# Check fail counts to ensure all tests pass
8486
#$MXWarnCount = $MXRecord.ValidationWarns | Measure-Object | Select-Object -ExpandProperty Count

Modules/CIPPCore/Public/Entrypoints/Invoke-EditUser.ps1

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@ Function Invoke-EditUser {
1212
Write-LogMessage -user $request.headers.'x-ms-client-principal' -API $APINAME -message 'Accessed this API' -Sev 'Debug'
1313

1414
$userobj = $Request.body
15+
if ($userobj.Userid -eq '') {
16+
$body = @{'Results' = @('Failed to edit user. No user ID provided') }
17+
Push-OutputBinding -Name Response -Value ([HttpResponseContext]@{
18+
StatusCode = [HttpStatusCode]::BadRequest
19+
Body = $Body
20+
})
21+
return
22+
}
1523
$Results = [System.Collections.ArrayList]@()
1624
$licenses = ($userobj | Select-Object 'License_*').psobject.properties.value
1725
$Aliases = if ($userobj.AddedAliases) { ($userobj.AddedAliases).Split([Environment]::NewLine) }

Modules/CIPPCore/Public/Standards/Invoke-CIPPStandardEnableMailboxAuditing.ps1

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ function Invoke-CIPPStandardEnableMailboxAuditing {
1919
$LogMessage = 'Tenant level mailbox audit already enabled. '
2020
}
2121

22-
# check for mailbox audit on all mailboxes. Enabled for all that it's not enabled for
22+
# Check for mailbox audit on all mailboxes. Enable for all that it's not enabled for
2323
$Mailboxes = New-ExoRequest -tenantid $Tenant -cmdlet 'Get-Mailbox' -cmdParams @{ResultSize = 'Unlimited' } | Where-Object { $_.AuditEnabled -ne $true }
2424
$Mailboxes | ForEach-Object {
2525
try {
@@ -29,9 +29,30 @@ function Invoke-CIPPStandardEnableMailboxAuditing {
2929
Write-LogMessage -API 'Standards' -tenant $Tenant -message "Failed to enable user level mailbox audit for $($_.UserPrincipalName). Error: $($_.exception.message)" -sev Error
3030
}
3131
}
32-
if ($Mailboxes.Count -eq 0) {
33-
$LogMessage += 'User level mailbox audit already enabled for all mailboxes'
32+
33+
# Disable audit bypass for all mailboxes that have it enabled
34+
$BypassMailboxes = New-ExoRequest -tenantid $Tenant -cmdlet 'Get-MailboxAuditBypassAssociation' -cmdParams @{ResultSize = 'Unlimited' } | Where-Object { $_.AuditBypassEnabled -eq $true }
35+
$BypassMailboxes | ForEach-Object {
36+
try {
37+
New-ExoRequest -tenantid $Tenant -cmdlet 'Set-MailboxAuditBypassAssociation' -cmdParams @{Identity = $_.Guid; AuditBypassEnabled = $false } -UseSystemMailbox $true
38+
Write-LogMessage -API 'Standards' -tenant $Tenant -message "Mailbox audit bypass disabled for $($_.Name)" -sev Info
39+
} catch {
40+
Write-LogMessage -API 'Standards' -tenant $Tenant -message "Failed to disable mailbox audit bypass for $($_.Name). Error: $($_.exception.message)" -sev Error
41+
}
42+
}
43+
44+
if ($Mailboxes.Count -eq 0 -and $BypassMailboxes.Count -eq 0) {
45+
# Make log message smaller if both are already in the desired state
46+
$LogMessage += 'User level mailbox audit already enabled and mailbox audit bypass already disabled for all mailboxes'
47+
} else {
48+
if ($Mailboxes.Count -eq 0) {
49+
$LogMessage += 'User level mailbox audit already enabled for all mailboxes. '
50+
}
51+
if ($BypassMailboxes.Count -eq 0) {
52+
$LogMessage += 'Mailbox audit bypass already disabled for all mailboxes'
53+
}
3454
}
55+
3556
Write-LogMessage -API 'Standards' -tenant $Tenant -message $LogMessage -sev Info
3657
}
3758

Modules/CIPPCore/Public/Test-CIPPAccessTenant.ps1

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ function Test-CIPPAccessTenant {
22
[CmdletBinding()]
33
param (
44
$TenantCSV,
5-
$APIName = "Access Check",
5+
$APIName = 'Access Check',
66
$ExecutingUser
77
)
88
$ExpectedRoles = @(
@@ -27,8 +27,7 @@ function Test-CIPPAccessTenant {
2727
}
2828
try {
2929
$MyRoles = New-GraphGetRequest -uri "https://graph.microsoft.com/beta/tenantRelationships/managedTenants/myRoles?`$filter=tenantId in ('$($TenantIds -join "','")')"
30-
}
31-
catch {
30+
} catch {
3231
$MyRoles = @()
3332
$AddedText = 'but could not retrieve GDAP roles from Lighthouse API'
3433
}
@@ -37,7 +36,7 @@ function Test-CIPPAccessTenant {
3736
try {
3837
$TenantId = ($TenantList | Where-Object { $_.defaultDomainName -eq $tenant }).customerId
3938
$Assignments = ($MyRoles | Where-Object { $_.tenantId -eq $TenantId }).assignments
40-
$SAMUserRoles = ($Assignments | Where-Object { $_.assignmentType -eq 'granularDelegatedAdminPrivileges' }).roles
39+
$SAMUserRoles = $Assignments.roles
4140

4241
$BulkRequests = $ExpectedRoles | ForEach-Object { @(
4342
@{
@@ -62,8 +61,7 @@ function Test-CIPPAccessTenant {
6261
}
6362
)
6463
$AddedText = 'but missing GDAP roles'
65-
}
66-
else {
64+
} else {
6765
$GDAPRoles.Add([PSCustomObject]$RoleId)
6866
}
6967
if (!$SAMRole) {
@@ -88,8 +86,7 @@ function Test-CIPPAccessTenant {
8886
}
8987
Write-LogMessage -user $request.headers.'x-ms-client-principal' -API $APINAME -tenant $tenant -message 'Tenant access check executed successfully' -Sev 'Info'
9088

91-
}
92-
catch {
89+
} catch {
9390
@{
9491
TenantName = "$($tenant)"
9592
Status = "Failed to connect: $(Get-NormalizedError -message $_.Exception.Message)"
@@ -106,8 +103,7 @@ function Test-CIPPAccessTenant {
106103
Status = 'Successfully connected to Exchange'
107104
}
108105

109-
}
110-
catch {
106+
} catch {
111107
$ReportedError = ($_.ErrorDetails | ConvertFrom-Json -ErrorAction SilentlyContinue)
112108
$Message = if ($ReportedError.error.details.message) { $ReportedError.error.details.message } else { $ReportedError.error.innererror.internalException.message }
113109
if ($null -eq $Message) { $Message = $($_.Exception.Message) }

version_latest.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5.1.1
1+
5.1.2

0 commit comments

Comments
 (0)