Powershell - Remove-ADGroupMember

Я пытаюсь удалить группы из пользователей в другом домене.

Пример: я как администратор хочет отключить пользователя и удалить его группы в другом домене.

Проблема в том, что я не знаю, как использовать Remove-ADGroupMember -Server в Foreach цикл, если я не использую Foreach Я могу использовать -Server вариант.

Ошибка Remove-ADGroupmember:
Ошибка Remove-ADGroupmember

Как я могу получить -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
}
Другие вопросы по тегам