Skip to content

Commit 13ed1ca

Browse files
Merge branch 'dev' of https://github.com/KelvinTegelaar/CIPP-API into dev
2 parents 90b1bbb + 69aba6a commit 13ed1ca

File tree

3 files changed

+55
-13
lines changed

3 files changed

+55
-13
lines changed

Modules/CIPPCore/Public/Entrypoints/HTTP Functions/Identity/Administration/Users/Invoke-EditUser.ps1

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,15 +140,14 @@ Function Invoke-EditUser {
140140
if ($AddToGroups) {
141141
$AddToGroups | ForEach-Object {
142142

143-
$GroupType = $_.value.groupType -join ','
144-
$GroupID = $_.value.groupid
145-
$GroupName = $_.value.groupName
143+
$GroupType = $_.addedFields.calculatedGroupType
144+
$GroupID = $_.value
145+
$GroupName = $_.label
146146
Write-Host "About to add $($UserObj.userPrincipalName) to $GroupName. Group ID is: $GroupID and type is: $GroupType"
147147

148148
try {
149149

150150
if ($GroupType -eq 'Distribution list' -or $GroupType -eq 'Mail-Enabled Security') {
151-
152151
Write-Host 'Adding to group via Add-DistributionGroupMember '
153152
$Params = @{ Identity = $GroupID; Member = $UserObj.id; BypassSecurityGroupManagerCheck = $true }
154153
$null = New-ExoRequest -tenantid $UserObj.tenantFilter -cmdlet 'Add-DistributionGroupMember' -cmdParams $params -UseSystemMailbox $true

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

Lines changed: 49 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,66 @@ function Invoke-CIPPStandardOauthConsentLowSec {
3131
##$Rerun -Type Standard -Tenant $Tenant -Settings $Settings 'OauthConsentLowSec'
3232

3333
$State = (New-GraphGetRequest -Uri 'https://graph.microsoft.com/beta/policies/authorizationPolicy/authorizationPolicy' -tenantid $tenant)
34+
$PermissionState = (New-GraphGetRequest -Uri "https://graph.microsoft.com/beta/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications" -tenantid $tenant) | Select-Object -Property permissionName
35+
36+
$requiredPermissions = @('offline_access', 'openid', 'User.Read', 'profile', 'email')
37+
$missingPermissions = $requiredPermissions | Where-Object { $PermissionState.permissionName -notcontains $_ }
38+
3439
If ($Settings.remediate -eq $true) {
35-
try {
36-
if ($State.permissionGrantPolicyIdsAssignedToDefaultUserRole -notin @('managePermissionGrantsForSelf.microsoft-user-default-low')) {
37-
Write-Host 'Going to set'
38-
New-GraphPostRequest -tenantid $tenant -Uri 'https://graph.microsoft.com/beta/policies/authorizationPolicy/authorizationPolicy' -Type PATCH -Body '{"permissionGrantPolicyIdsAssignedToDefaultUserRole":["managePermissionGrantsForSelf.microsoft-user-default-low"]}' -ContentType 'application/json'
40+
if ($State.permissionGrantPolicyIdsAssignedToDefaultUserRole -in @('managePermissionGrantsForSelf.microsoft-user-default-low')) {
41+
Write-LogMessage -API 'Standards' -tenant $tenant -message 'Application Consent Mode(microsoft-user-default-low) is already enabled.' -sev Info
42+
} else {
43+
try {
44+
$GraphParam = @{
45+
tenantid = $tenant
46+
Uri = 'https://graph.microsoft.com/beta/policies/authorizationPolicy/authorizationPolicy'
47+
Type = 'PATCH'
48+
Body = @{
49+
permissionGrantPolicyIdsAssignedToDefaultUserRole = @('managePermissionGrantsForSelf.microsoft-user-default-low')
50+
} | ConvertTo-Json
51+
ContentType = 'application/json'
52+
}
53+
$null = New-GraphPostRequest @GraphParam
54+
Write-LogMessage -API 'Standards' -tenant $tenant -message 'Application Consent Mode(microsoft-user-default-low) has been enabled.' -sev Info
55+
} catch {
56+
$ErrorMessage = Get-NormalizedError -Message $_.Exception.Message
57+
Write-LogMessage -API 'Standards' -tenant $tenant -message "Failed to apply Application Consent Mode (microsoft-user-default-low) Error: $ErrorMessage" -sev Error
58+
}
59+
}
60+
61+
if ($missingPermissions.Count -eq 0) {
62+
Write-LogMessage -API 'Standards' -tenant $tenant -message 'All permissions for Application Consent already assigned.' -sev Info
63+
} else {
64+
try {
65+
$missingPermissions | ForEach-Object {
66+
$GraphParam = @{
67+
tenantid = $tenant
68+
Uri = "https://graph.microsoft.com/beta/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications"
69+
Type = 'POST'
70+
Body = @{
71+
permissionName = $_
72+
classification = 'low'
73+
} | ConvertTo-Json
74+
ContentType = 'application/json'
75+
}
76+
$null = New-GraphPostRequest @GraphParam
77+
Write-LogMessage -API 'Standards' -tenant $tenant -message "Permission $_ has been added to low Application Consent" -sev Info
78+
}
79+
} catch {
80+
$ErrorMessage = Get-NormalizedError -Message $_.Exception.Message
81+
Write-LogMessage -API 'Standards' -tenant $tenant -message "Failed to apply low consent permissions Error: $ErrorMessage" -sev Error
3982
}
40-
Write-LogMessage -API 'Standards' -tenant $tenant -message 'Application Consent Mode(microsoft-user-default-low) has been enabled.' -sev Info
41-
} catch {
42-
$ErrorMessage = Get-NormalizedError -Message $_.Exception.Message
43-
Write-LogMessage -API 'Standards' -tenant $tenant -message "Failed to apply Application Consent Mode (microsoft-user-default-low) Error: $ErrorMessage" -sev Error
4483
}
4584
}
46-
if ($Settings.alert -eq $true) {
4785

86+
if ($Settings.alert -eq $true) {
4887
if ($State.permissionGrantPolicyIdsAssignedToDefaultUserRole -notin @('managePermissionGrantsForSelf.microsoft-user-default-low')) {
4988
Write-LogMessage -API 'Standards' -tenant $tenant -message 'Application Consent Mode(microsoft-user-default-low) is not enabled.' -sev Alert
5089
} else {
5190
Write-LogMessage -API 'Standards' -tenant $tenant -message 'Application Consent Mode(microsoft-user-default-low) is enabled.' -sev Info
5291
}
5392
}
93+
5494
if ($Settings.report -eq $true) {
5595
if ($State.permissionGrantPolicyIdsAssignedToDefaultUserRole -notin @('managePermissionGrantsForSelf.microsoft-user-default-low')) {
5696
$State.permissionGrantPolicyIdsAssignedToDefaultUserRole = $false

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,11 @@ function Invoke-CIPPStandardUserSubmissions {
106106
$PolicyParams = @{
107107
EnableReportToMicrosoft = $true
108108
ReportJunkToCustomizedAddress = $false
109+
ReportJunkAddresses = $null
109110
ReportNotJunkToCustomizedAddress = $false
111+
ReportNotJunkAddresses = $null
110112
ReportPhishToCustomizedAddress = $false
113+
ReportPhishAddresses = $null
111114
}
112115
} else {
113116
$PolicyParams = @{

0 commit comments

Comments
 (0)