Сегодня потребовалось добавить пользователей в новую группу безопасности Active Directory, а из старой удалить. Решил сделать это с помощью Powershell. 

Получился вот такой коротенький сценарий:

 
  1. # Получаем нужных пользователей и вносим их в группу безопасности  
  2.   
  3. $Users = Get-ADUser -Filter * -SearchBase "OU=7класс,OU=Ученики,DC=nizhnepopov,DC=local"  
  4. foreach ($User in $Users) {Add-ADGroupMember "ГруппаБезопасностиУченики" -Member $_}  
  5.   
  6. # Назначаем новую группу безопасности основной  
  7.   
  8. $gt = (Get-ADGroup "ГруппаБезопасностиУченики" -Properties primaryGroupToken).primaryGroupToken  
  9. foreach ($User in $Users) {Set-ADUser $User -Replace @{primaryGroupID = $gt}}  
  10.   
  11. # Удаляем все группы, кроме новой  
  12.   
  13. foreach ($User in $Users) {Remove-ADPrincipalGroupMembership -Identity $user -MemberOf $(Get-ADPrincipalGroupMembership -Identity $user | Where-Object {$_.DistinguishedName -ne 'CN=ГруппаБезопасностиУченики,CN=Users,DC=nizhnepopov,DC=local'})}