Powershell - Remove-ADGroupMember
Я пытаюсь удалить группы из пользователей в другом домене.
Пример: я как администратор хочет отключить пользователя и удалить его группы в другом домене.
Проблема в том, что я не знаю, как использовать Remove-ADGroupMember -Server
в Foreach
цикл, если я не использую Foreach
Я могу использовать -Server
вариант.
Как я могу получить -Server
собственность в Foreach
?
$groups = (Get-Aduser -server ServerY -Identity manusys -Properties MemberOf).memberof
Foreach ($group in $groups) {
Remove-ADGroupMember -identity $group -Members manusys -Confirm:$false -ErrorAction:SilentlyContinue
}
Учетная запись пользователя Manusys
имеет эти группы:
CN = NO_CamerasAlertMGR, OU = обычные списки рассылки, OU = списки рассылки, DC = тест, DC = ком CN=NO_CamerasAlertCM,OU= обычные списки рассылки, OU = списки рассылки, DC = тест, DC = ком CN=NO_CamerasReport,OU= Обычные списки рассылки, OU = Списки рассылки, DC = тест, DC = ком CN=NO_CamerasReport_CM,OU= Обычные списки рассылки, OU = Списки рассылки, DC = тест,DC=com CN=NO_CamerasReport_MGR,OU= обычные списки рассылки, OU = списки рассылки, DC = тест, DC = ком
1 ответ
Server
Параметр доступен для использования с Remove-ADGroupMember
используя его внутри foreach
не меняет это
Не просто полагайтесь на автозапросы ISE, обращаясь к документации ( remove-adgroupmember) всегда покажет вам, какие параметры доступны.
Проблема, которую вы фактически видите, состоит в том, что ISE больше не запрашивает / показывает параметры команд после того, как вы использовали один из Общих параметров (Confirm
& ErrorAction
в вашем коде, но есть и другие)...
Вы можете увидеть это с помощью самой команды - она будет продолжать запрашивать параметры:
Remove-ADGroupMember -identity $group -Members manusys
Но добавьте CommonParam, и он больше не будет предоставлять свои собственные параметры:
Remove-ADGroupMember -identity $group -Members manusys -Confirm:$false
Чтобы исправить исходную проблему, добавьте Server
парам к Remove-ADGroupMember
:
$groups = (Get-Aduser -server ServerY -Identity manusys -Properties MemberOf).memberof
Foreach ($group in $groups) {
Remove-ADGroupMember -server ServerY -identity $group -Members manusys -Confirm:$false -ErrorAction:SilentlyContinue
}