-
Notifications
You must be signed in to change notification settings - Fork 0
/
Create_TestGroups.ps1.txt
55 lines (41 loc) · 1.56 KB
/
Create_TestGroups.ps1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
$numberOfGroups = 255
$objectIdToAddToGroups = "{object id}" # could be a user object id or a device object id, etc.
$groupNameFormat = "TEST_{0:0000}"
Function Create-TestGroups {
[cmdletbinding()]
Param (
[bool]$deleteIfExists
)
$groupName = ""
for ($i = 1; $i -lt $numberOfGroups + 1; $i++){
$groupName = $groupNameFormat -f $i
$group = Get-AzureADGroup -SearchString $groupName # see if the group exists
if ($deleteIfExists -and $group){
if ($group){
Remove-AzureADGroup -ObjectId $group.ObjectId
}
} elseif (!$group) {
$group = New-AzureAdGroup -DisplayName $groupName -Description $groupName -SecurityEnabled $true -MailEnabled $false -MailNickName $groupName
} else {
Write-Host "Group already exists so skipping this action..."
}
# add the desired object id to the group
Add-AzureADGroupMember -ObjectId $group.ObjectId -RefObjectId $objectIdToAddToGroups
Write-Host "Object $objectIdToAddToGroups added to group $groupName"
}
}
Function Delete-TestGroups {
$groupName = ""
for ($i = 1; $i -lt $numberOfGroups + 1; $i++){
$groupName = $groupNameFormat -f $i
$group = Get-AzureADGroup -SearchString $groupName # see if the group exists
if ($group){
Remove-AzureADGroup -ObjectId $group.ObjectId
Write-Host "Group $groupName deleted..."
}
}
}
Connect-AzureAD
Create-TestGroups -deleteIfExists $false
#Delete-TestGroups
Disconnect-AzureAD