Skip to content

Commit c0820ee

Browse files
committed
resolve username to guid for scheduled tasks
1 parent 79b314a commit c0820ee

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

Modules/CIPPCore/Public/Remove-CIPPGroupMember.ps1

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,22 @@ function Remove-CIPPGroupMember(
77
[string]$APIName = 'Remove Group Member'
88
) {
99
try {
10-
if ($Member -like '*#EXT#*') { $Member = [System.Web.HttpUtility]::UrlEncode($Member) }
11-
# $MemberIDs = 'https://graph.microsoft.com/v1.0/directoryObjects/' + (New-GraphGetRequest -uri "https://graph.microsoft.com/beta/users/$($Member)" -tenantid $TenantFilter).id
12-
# $AddMemberBody = "{ `"[email protected]`": $(ConvertTo-Json @($MemberIDs)) }"
1310
if ($GroupType -eq 'Distribution list' -or $GroupType -eq 'Mail-Enabled Security') {
1411
$Params = @{ Identity = $GroupId; Member = $Member; BypassSecurityGroupManagerCheck = $true }
1512
$null = New-ExoRequest -tenantid $TenantFilter -cmdlet 'Remove-DistributionGroupMember' -cmdParams $Params -UseSystemMailbox $true
1613
} else {
14+
if ($Member -match '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$') {
15+
Write-Information "Member $Member is a GUID, proceeding with removal."
16+
} else {
17+
Write-Information "Member $Member is not a GUID, attempting to resolve to object ID."
18+
if ($Member -like '*#EXT#*') { $Member = [System.Web.HttpUtility]::UrlEncode($Member) }
19+
$UserObject = New-GraphGetRequest -uri "https://graph.microsoft.com/v1.0/users/$($Member)?`$select=id" -tenantid $TenantFilter
20+
if ($null -eq $UserObject.id) {
21+
throw "Could not resolve user $Member to an object ID."
22+
}
23+
$Member = $UserObject.id
24+
Write-Information "Resolved member to object ID: $Member"
25+
}
1726
$null = New-GraphPostRequest -uri "https://graph.microsoft.com/beta/groups/$($GroupId)/members/$($Member)/`$ref" -tenantid $TenantFilter -type DELETE -body '{}' -Verbose
1827
}
1928
$Results = "Successfully removed user $($Member) from $($GroupId)."

0 commit comments

Comments
 (0)