在 PowerShell 中从 Azure AD 组中删除所有用户的最快方法是什么? 我目前正在使用
$deleteThem = Get-MsolGroupMember -GroupObjectId $groupId -All
foreach ($user in $deleteThem) {
Remove-MsolGroupMember -GroupObjectId $groupId -GroupMemberObjectId $user.ObjectId
}
但这速度慢得令人痛苦。 不过,我需要保留组和组 ID。 有什么想法吗?
正如评论部分中的Ash提到的,使用Remove-AzADGroupMember比Remove-MsolGroupMember更快。
我运行了以下脚本,只需提供组名称即可删除组中的用户。
Import-Module AzureAD
$Credential = Get-Credential
Connect-AzureAD -Credential $Credential
$group=Get-AzureADGroup -SearchString 'Your Tenant Group Name'
$users=Get-AzureADGroupMember -ObjectId $Group.ObjectId -All $true |where {$_.ObjectType -eq 'User'}
foreach($user in $users){
Remove-AzureADGroupMember -ObjectId $Group.ObjectId -MemberId $user.objectId
}
注意: 在凭据提示框中,提供租户的管理员 ID 和密码。如果群组中有很多用户,那么预计需要一些时间。
以下脚本应在一次调用中删除所有成员,此示例删除前 300 个成员。
$group=Get-AzADGroup -DisplayName "GroupName"
$users=Get-AzADGroupMember -Id $Group.Id
$users = $users | Select-Object -First 300 # Any select crite
foreach($user in $users){
$userlist+=$user.Id
}
删除-AzADGroupMember -GroupObjectId $Group.Id -MemberObjectId $userlist