How to add and remove ad groups and objects in groups with powershell

Причина

Эта проблема возникает, если у группы есть член из другого леса, учетная запись которого удалена из леса учетных записей. Участник представлен в локальном домене директором по внешней безопасности (FSP). В экспорте группы LDIFDE членство отображается следующим образом:

dn: CN=Test-Local1,OU=Test Accounts,DC=contoso,DC=com

член:

CN=S-1-5-21-3110691720-3620623707-1182478234-698540,CN=ForeignSecurityPrincipals,DC=contoso,DC=com

член:

CN=S-1-5-21-3110691720-3620623707-1182478234-695739,CN=ForeignSecurityPrincipals,DC=contoso,DC=com

При удалении учетной записи источника с sid FSP не обновляется и не удаляется для отражения этого удаления. Необходимо вручную убедиться, что эти ссылки FSP удаляются.

Add-AdGroupMember — Добавление пользователей в группу AD

Вы можете добавлять пользователей в группу Active Directory с помощью командлета Add-AdGroupMember. Добавьте двух новых пользователей в новую группу:

Add-AdGroupMember -Identity TestADGroup -Members Alex, MiAl

Если список пользователей, добавляемых в группу, довольно велик, вы можете сохранить список учётных записей пользователей в файл CSV, затем импортировать этот файл и добавить каждого пользователя в группу.

Import-CSV .\users.csv -Header users | ForEach-Object {Add-AdGroupMember -Identity ‘TestADGroup’ -members $_.users}

Формат файла CSV должен быть следующим: пользователи должны быть перечислены по одному в строке с пользователями в качестве заголовка столбца.

Чтобы получить всех членов группы (groupX) и добавить их в другую группу (groupY), используйте эту команду:

Get-ADGroupMember "GroupX" | Get-ADUser | ForEach-Object {Add-ADGroupMember -Identity "Group-Y" -Members $_}

Если вам нужно скопировать членов всех подгрупп (рекурсивно) в новую группу, выполните эту команду:

Get-ADGroupMember -Identity "GroupX" -Recursive | Get-ADUser | ForEach-Object {Add-ADGroupMember -Identity "GroupY" -Members $_}

Установка модуля Active Directory для Windows PowerShell

По умолчанию в системе установлены не все модули Windows PowerShell, некоторые из них добавляются во время установки соответствующей роли или компонента. Например, если Ваш сервер не является контроллером домена, соответствующего модуля PowerShell (RSAT-AD-PowerShell) для администрирования Active Directory в нем нет, т.е. использовать командлеты PowerShell для управления AD Вы не сможете. Однако Вы можете установить модуль PowerShell для работы с Active Directory. Именно это мы сейчас и рассмотрим, при этом я покажу два варианта установки модуля RSAT-AD-PowerShell — это с помощью «Мастера добавления ролей и компонентов», т.е. используя графический интерфейс и, конечно же, с помощью Windows PowerShell.

Процесс установки модуля Active Directory для Windows PowerShell такой же, как и установка остальных компонентов и средств удаленного администрирования в Windows Server 2016, поэтому если Вы умеете устанавливать роли или компоненты сервера, то с установкой RSAT-AD-PowerShell Вы легко справитесь.

Запускаем «Диспетчер серверов» и нажимаем «Управление ->Добавить роли или компоненты».

На первом окне можем сразу нажать «Далее».

Шаг 3

Далее выбираем тип установки, мы хотим установить компонент, поэтому выбираем первый пункт «Установка ролей или компонентов», жмем «Далее».

Затем выбираем сервер, на который будут установлены роли и компоненты, жмем «Далее».

Шаг 5

На этом шаге нам предлагают выбрать роли для установки, а так как мы не собираемся устанавливать роли, сразу жмем «Далее».

Шаг 6

На шаге выбора компонентов мы ищем пункт «Средства удаленного администрирования сервера -> Средства администрирования ролей -> Средства AD DS и AD LDS -> Модуль Active Directory для Windows PowerShell» и отмечаем его галочкой, жмем «Далее».

Шаг 7

Проверяем выбор компонентов и жмем «Установить».

Начнется процесс установки модуля Active Directory для Windows PowerShell.

Он будет завершен, когда мы увидим сообщение «Установка выполнена на …», нажимаем «Закрыть».

Установка модуля RSAT-AD-PowerShell с помощью PowerShell

Если Вы не хотите щелкать мышкой по окошкам мастера, то Вы можете легко выполнить процедуру установки компонентов с помощью нашего любимого Windows PowerShell, кстати, таким способом это делается, на мой взгляд, гораздо проще и быстрей.

Для установки модуля Active Directory для Windows PowerShell запустите оболочку PowerShell и выполните следующие команды (вместо командлета Add-WindowsFeature можно использовать Install-WindowsFeature).

  
  Import-Module ServerManager 
  Add-WindowsFeature -Name "RSAT-AD-PowerShell" –IncludeAllSubFeature

Смотрим список командлетов PowerShell для работы с Active Directory

Для того чтобы проверить, что у нас установился необходимый модуль PowerShell давайте, выполним команды, которые покажут нам количество командлетов для работы с Active Directory и сам список этих командлетов.

Чтобы узнать, сколько у нас командлетов для администрирования Active Directory пишем вот такую команду

  
  Get-Command -Module ActiveDirectory | Measure-Object

А для того чтобы посмотреть полный перечень командлетов пишем следующую команду, т.е. результат работы Get-Command мы не передаем по конвейеру командлету Measure-Object.

  
  Get-Command -Module ActiveDirectory

Мы видим, что нас появилось 147 командлетов для работы с Active Directory, которые мы теперь можем использовать для администрирования AD.

На этом все, надеюсь, материал был Вам полезен, удачи!

Нравится2Не нравится

User

Перейдем теперь к объектам пользователей.

Чтобы получить список групп, в которые непосредственно входит пользователь, мы можем поступить следующим образом:

Get-ADPrincipalGroupMembership -Identity someuser

Если же нам понадобится узнать все группы, в которые он входит посредством вложенных групп, мы можем воспользоваться командлетом Get-ADAccountAuthorizationGroup:

Get-ADAccountAuthorizationGroup -Identity someuser

В данном случае среди результатов будут присутствовать не только созданные вами группы, в которые явно или неявно входит определенный пользователь, но и системные группы, такие, например, как Authenticated Users и This Organization.

По сути, командлет Get-ADAccountAuthorizationGroup выводит все группы, SID которых будет присутствовать в токене безопасности данного пользователя.

Если же нас интересуют только действительно существующие группы, то есть те, членством в которых мы можем управлять явным образом, мы можем отфильтровать результаты по существованию значения атрибута objectClass, поскольку у групп, не присутствующих в Active Directory в виде объектов, оно будет отсутствовать:

Get-ADAccountAuthorizationGroup -Identity someuser | Where-Object objectClass

Точно так же, как и в случае с группами, мы можем обратиться к атрибутам объекта пользователя, чтобы получить информацию о том, членом каких групп он является.

Для получения групп, в которые пользователь входит явным образом, мы можем запросить значение атрибута MemberOf.

Это backlink-атрибут, то есть он не присутствует в ActiveDirectory явно, а является отражением значений других атрибутов — в данном случае атрибута Member.

Get-ADUser -Identity someuser -Properties MemberOf | Select-Object -ExpandProperty MemberOf

На что тут стоит обратить внимание, так это на то, что среди вывода будет отсутствовать одна группа — та, что значится как Primary Group. Обычно это Domain Users для пользователей и Domain Computers для компьютеров

Текущая primary group объекта определяется значением атрибута primaryGroupID, но об этом отдельно.

Также значение атрибута MemberOf мы можем получить следующими способами:

или:

Как и в случае групп, для объектов пользователей и компьютеров, начиная с Windows Server 2012 R2, доступен атрибут типа constructed — msds-MemberOfTransitive.

Его значение содержит все группы, в которые явно или неявно входит объект — но опять же за исключением primary group.

Для получения значения атрибута msds-MemberOfTransitive нам снова понадобится командлет Get-ADObject:

Еще одним способом будет использование объекта DirectorySearcher:

: : https://fb.com/inpowershellVKontakte: https://vk.com/inpowershell

Example 4: Add Users to Multiple Security Groups

So far I have shown you examples of adding single and multiple users to a single group. Now let’s look at an example of adding users to multiple Active Directory groups. 

I’m going to add users to the “HR_folders”, “PDDrive_HR” and the “PDDrive_temp” AD groups all at the same time using the Bulk Group Management Tool. 

If you jumped to this example then go back to example 2 for more details as I’m going to go straight into the CSV setup. 

All that you need to do is add the user’s username to the username column and the group name to the group column. Very easy. 

Here is a screenshot of the CSV I have configured for this example. 

Open the GUI Tool, select the CSV file and click run. 

You can use PowerShell, ADUC, or the Group Report tool to verify the group membership. 

I hope this article helped you find a solution for adding users to Active Directory Security Groups. This is a very common task for System Administrators and there are multiple ways it can be done. PowerShell is a popular choice for Active Directory management but for those that don’t have time to mess with scripts, there are some good GUI tools as an alternative. The AD Pro Toolkit is a very low-cost set of tools that help with many of the day to day Active Directory tasks. You can download a free trial and test it out in your environment. 

Example 2: Add User to a Group Using Active Directory Users and Computers

In this example, I will use the Active Directory Users and Computers GUI console to add a user to a security group. 

For this example, I will add user Alice Mills to the Accounting_folders security group. 

Open ADUC, open the user account and click on the “member of” tab. 

Next, click on the add button. 

You can type the full group name out or if you don’t remember it just type a partial name and click check names. I typed accounting and when I click check names it gives me a list of all the matching groups. 

It found three groups that have accounting in the name, I select the one I want and click ok. 

Click ok again. 

Click ok and you are done. 

You can confirm this by seeing the group listed in the members of tab for the user account. 

Get-ADGroupMember

PowerShell Get-ADGroupMember cmdlet get ad group members. Ad group members can be users, computers, or groups.

Get-AdGroupMember Syntax

Get-ADGroupMember
   
   
    <ADGroup>
   
   
   
   

Let’s understand Get-ADGroupMember cmdlet key parameter as below:

–AuthType – It specifies the authentication method to use. AuthType parameter accepts either Basic (or 1) or Negotiate (or 0). It has Negotiate default authentication method.

SSL (Secure Socket Layer) connection is required to use the Basic Authentication method.

–Credential PSCredential – It specifies user credentials required to perform Get-ADGroup search for the group. It default accepts the credentials of logged-on users.

To use the Credential parameter, use username as User1 or domain\User1 or you can create and use object by using cmdlet.

-Identity – It specifies Active Directory group object search using the distinguished name, GUID, security identifier or SAMAccountName

-Partition – It specifies the distinguished name of an active directory partition.

-Recursive – It specifies to get all ad group members from a group that does not contain child objects.

Как добавлять или удалять пользователей из групп в Windows 10

В этой статье рассмотрим как добавлять или удалять пользователей из групп, чтобы ограничить или добавить возможности им выполнять определенные действия в Windows 10.

В каждой версии Windows есть различные группы пользователей, в зависимости от того в какой группе состоит учетная запись, у нее есть определенные права на выполнения различных операций в системе.

По умолчанию в Windows есть группы: Администраторы; Гости; Администраторы Hyper;  Криптографические операторы; Операторы архива; Операторы настройки сети; Операторы помощи по контролю учетных записей; Опытные пользователи; Пользователи; Пользователи DCOM; Пользователи журналов производительности; Пользователи системного монитора; Пользователи удаленного рабочего стола; Пользователи удаленного управления: Репликатор; Управляемая системой группа учетных записей; Читатели журнала событий. Обычные пользователи зачастую используют только группы “Администраторы”,”Опытные пользователи” и “Пользователи”. Описание всех групп можно найти открыв “Локальные пользователи и группы” и зайдя в “Группы”, ниже мы опишем как это сделать.

Добавить или удалить пользователя из группы в “Локальные пользователи и группы”

Инструмент “Локальные пользователи и группы” доступен только в Windows 10 Pro , Enterprise и Education. Если у вас Windows 10 Home – переходите к следующему способу.

1.В строке поиска или в меню выполнить (выполнить вызывается клавишами Win+r) напишите lusrmgr.msc и нажмите Enter.

2. Зайдите в “Пользователи” => нажмите правой клавишей мыши на пользователя, которого нужно добавить в какую-то группу и выберите “Свойства”.

3. Перейдите во вкладку “Членство в группах”. В колонке “Член групп” вы можете выбрать любую из перечисленных групп и нажать на “Удалить”, чтобы выбранный пользователь перестал быть участником этой группы. После нажатия на “Удалить” нажмите на “ОК”, чтобы изменения вступили в силу.

Чтобы добавить пользователя в группу – нужно после второго пункта перейти во вкладку “Членства в группах” и нажать “Добавить”.

В следующем окне нажмите на “Дополнительно”.

Нажмите на “Поиск” и выберите в появившемся списке группу, в которую нужно добавить пользователя (если таких групп несколько во время их выбора удерживайте нажатой клавишу Ctrl) => нажмите на “ОК” в следующих трех окнах.

Есть второй способ добавлять пользователя или пользователей в определенную группу: в окне “Локальные пользователи и группы” вместо “Пользователи” выберите “Группы” => на группу в которую нужно добавить (или с которой нужно удалить) пользователей нажмите правой клавишей мыши и выберите “Свойства”.

Если нужно удалить пользователя с группы – выберите его и нажмите на “Удалить”, после этого нажмите на “ОК”.

Если нужно добавить пользователя – нажмите на “Добавить”.

Выберите “Дополнительно”.

Нажмите на “Поиск” => выберите пользователя (если нужно выбрать несколько пользователей нажимайте на каждого удерживая нажатой клавишу Ctrl) и нажмите “ОК” во всех окнах.

Добавить пользователя в группу в командной строке

1.Откройте командную строку от имени администратора: один из способов — нажать на меню «Пуск» правой клавишей мыши и выбрать «Командная строка (администратор) из открывшегося меню.

2. Введите команду предварительно заменив выделенное красным net localgroup “Группа” “Пользователь” /add и нажмите клавишу Enter.

“Группа” замените на группу в которую нужно добавить пользователя, “Пользователь” замените на пользователя которого нужно добавить в группу.

К примеру пользователя “Sa” нужно добавить в группу “Администраторы”, команда будет выглядеть так: net localgroup “Администраторы” “Sa” /add

Удалить пользователя из группы в командной строке

1.Откройте командную строку от имени администратора: один из способов — нажать на меню «Пуск» правой клавишей мыши и выбрать “Командная строка (администратор)” из открывшегося меню.

2. Введите команду предварительно заменив выделенное красным net localgroup “Группа” “Пользователь” /delete и нажмите клавишу Enter.

“Группа” замените на группу из которой нужно удалить пользователя, “Пользователь” замените на пользователя которого нужно удалить из группы.

К примеру пользователя “Sa” нужно удалить из группы “Администраторы”, команда будет выглядеть так: net localgroup “Администраторы” “Sa” /delete

На сегодня все, если вы знаете другие способы или у вас есть дополнения – пишите комментарии! Удачи Вам

Как изменить права пользователя на Windows 10

Существуют различные программы и утилиты, которые позволяют изменить права пользователя. Но, мы не будем прибегать к сторонним помощникам, а воспользуемся стандартными способами, так как это легче, удобнее и безопаснее.

Способ №1. Использование утилиты «Учетные записи пользователей»

Пожалуй, самый популярный и стандартный способ для всех пользователей. Почему для всех пользователей? Потому что простой в выполнении и не требует от пользователей набора команд.

Откройте Меню «Пуск» icon-windows, а затем нажмите на кнопку «Все приложения».

После этого отыщите и разверните папку «Служебные — Windows», а затем нажмите на утилиту «Панель управления».

В окне панели управления, укажите в разделе «Просмотр» — «Категория», после чего кликните по надписи «Изменение типа учетной записи».

Теперь кликните по учетной записи для которой необходимо изменить права.

В новом окне нажмите на кнопку «Изменение типа учетной записи».

После этого укажите маркер на «Администратор» и нажмите на кнопку «Изменение типа учетной записи». Если в вашем случае необходимо снять права администратора с учетной записи, то укажите маркер на «Стандартная».

В результате этого, вы увидите, что в описании к учетной записи появилась группа «Администратор». Это свидетельствует о наличии прав администратора.

Способ №2. Через функцию «Параметры системы»

Данный способ также является популярным, как в случае с первым способ. Тем не менее, здесь необходимо прибегнуть к более сложным манипуляциям.

Откройте Меню «Пуск» icon-windows, а затем нажмите на кнопку «Параметры». Для быстрого вызова окна «Параметры», воспользуйтесь сочетанием клавиш Windows +I.

В новом окне кликните по разделу «Учетные записи».

Теперь перейдите на вкладку «Семья и другие пользователи».

Кликните по учетной записи пользователя для которой вы хотите изменить права. Появится всплывающее меню, нажмите на кнопку «Изменить тип учетной записи».

В новом окне, укажите «Администратор», а затем нажмите на кнопку «OK». Если вы хотите снять полномочия администратора с учетной записи, то выберите «Стандартный пользователь».

В результате этих действий, вы сможете заметить надпись «Администратор» возле учетной записи. Это означает, что теперь учетная запись имеет права администратора.

Способ №3. При помощи командной строки (cmd)

Этот способ гораздо сложнее, по сравнению с предыдущими. Если вы новичок и не имеет опыта работы с командной строкой, то воспользуйтесь более простыми способами, которые описаны выше.

Запустите командную строку от имени администратора, для этого откройте Меню «Пуск» icon-windows, а затем нажмите на кнопку «Все приложения».

После этого отыщите и разверните папку «Служебные — Windows», а затем нажмите правой кнопкой мыши на утилиту «Командная строка». Во всплывающем меню выберите пункт «Запуск от имени администратора».

  • В командной строке вам необходимо ввести команду, которая позволяет добавить пользователя в группу администраторов.
    • Для русскоязычных Windows — net localgroup Администраторы Имя пользователя /add
    • Для англоязычных Windows — net localgroup Administrators Имя пользователя /add

После набора команды, нажмите на кнопку Enter. В результате этого вы увидите уведомление о том, что команда выполнена успешно. На этом закрывайте командную строку.

Способ №4. Использование оснастки «Локальные пользователи и группы»

Благодаря этому способу, вы можете легко управлять группами прав для всех учетных записей Windows. Несомненно, данный способ требует определенных навыков и знаний, но если прислушиваться к инструкциям ниже, то справиться даже новичок.

Запустите командную строку, для этого нажмите на сочетание клавиш Windows +R. В окне командной строки введите команду lusrmgr.msc  и нажмите на кнопку «OK».

В окне «Локальные пользователи и группы» кликните по папке «Пользователи».

Теперь нажмите правой кнопкой мыши по учетной записи для которой необходимо изменить права. Во всплывающем меню нажмите на кнопку «Свойства».

В окне свойств, перейдите на вкладку «Членство в группах», а затем нажмите на кнопку «Добавить…». 

В окне групп, впишите «Администраторы», либо «Adminstrators» (в некоторых случаях), а затем нажмите на кнопку «OK».

После этого нажмите на группу «Пользователи», а затем кликните по кнопке «Удалить».

Теперь учетная запись имеет полноценные права администратора. Для сохранения всех изменений, нажмите на кнопку «Применить» и «OK».

Ну что же, сегодня мы рассмотрели разные способы, которые позволяют изменить учетную запись на Windows 10. Надеемся, что один из способов помог вам в этом не простом деле!

Типы групп Active Directory

В AD существует два типа групп:

  • Группа безопасности – этот тип группы используется для предоставления доступа к ресурсам. Например, вы хотите предоставить определенной группе доступ к файлам в сетевой папке. Для этого нужно создать группу безопасности.
  • Группа распространения – данный тип групп используется для создания групп почтовых рассылок (как правило используется при установке Microsoft Exchange Server). Письмо, отправленное на такую группу, дойдет всем пользователям группы. Это тип группы нельзя использовать для предоставления доступа к ресурсам домена.

Совет. Несмотря на то, группе безопасности можно также можно присвоить почтовые атрибуты и выполнять на нее почтовые рассылки, делать это не рекомендуется.

Для каждого типа группы существует три области действия:

  • Локальная в домене — используется для управления разрешениями доступа к ресурсам (файлам, папкам и другим типам ресурсам) только того домена, где она была создана. Локальную группу нельзя использовать в других доменах (однако в локальную группу могут входить пользователи другого домена). Локальная группа может входить в другую локальную группу, но не может входить в глобальную.
  • Глобальная группа – данная группа может использоваться для предоставления доступа к ресурсам другого домена. В эту группу можно добавить только учетные записи из того же домена, в котором создана группа. Глобальная группа может входить в другие глобальные и локальные группы.
  • Универсальная группа — рекомендуется использовать в лесах из множества доменов. С помощью нее можно определять роли и управлять ресурсами, которые распределены на нескольких доменах. В том случае, если в вашей сети имеется много филиалов, связанных медленными WAN каналами, желательно использовать универсальные группы только для редко изменяющихся групп. Т.к. изменение универсальной группы вызывает необходимость репликации глобального каталога во всем предприятии.

Отдельно выделяют локальные группы. Эти группы создаются в локальной базе данных диспетчера безопасности учетных записей (SAM) только одного компьютера. В отличии от доменных групп, локальные группы работают даже в случае недоступности контролеров домена.

Conclusion

Now that you’ve learned how to manage groups and group membership in Active Directory using PowerShell scripts, try performing some of the group management task yourself. However, be careful, and don’t forget to enable the Active Directory Recycle Bin feature so you can easily roll back your changes if something goes wrong. Remember, the ADUC MMC snap-in is great for managing groups and group membership, but PowerShell is much better for managing groups in bulk.

Jeff Melnick

Jeff is a former Director of Global Solutions Engineering at Netwrix. He is a long-time Netwrix blogger, speaker, and presenter. In the Netwrix blog, Jeff shares lifehacks, tips and tricks that can dramatically improve your system administration experience.

Симптомы

Предположим, что для идентификации членов группы в службе доменных служб Active Directory (AD DS) используется этот код. Однако при запуске cmdlet для локальной группы домена возвращается следующая ошибка:

Примечание

При использовании команды в группе из доверенного леса вы получите следующие ошибки, если группа содержит участников из доверенного леса.

  • «Произошла неустановленная ошибка»
  • «Сервер не смог обработать запрос из-за внутренней ошибки»

В качестве обхода используйте оснастку Active Directory Users and Computers для просмотра участников группы или преобразования доверия в двух способов.

Group

Для получения объекта группы мы используем командлет Get-ADGroup.

Get-ADGroup -Identity somegroup

Для получения непосредственно входящих в нее объектов, будь то пользователь, компьютер или группа — командлет Get-ADGroupMember.

Get-ADGroupMember -Identity somegroup

Для того, чтобы получить список как непосредственных участников группы, так и тех, кто является членом всех вложенных групп, мы можем воспользоваться параметром -Recursive.

Стоит сказать, что использование этого параметра изменяет вывод таким образом, что присутствовать в нем будут только объекты, не имеющие дочерних объектов. То есть информация о вложенных группах среди результатов вывода будет отсутствовать.

Например:

Get-ADGroupMember -Identity somegroup -Recursive

Кроме того, получить список участников группы мы можем, запросив значение атрибута Member:

Get-ADGroup somegroup -Properties Member | Select-Object -ExpandProperty Member

Стоит сказать, что командлет Get-ADGroup добавляет еще один атрибут — Members — равнозначный по содержанию атрибуту Member. Таким образом, если для выполнения запросов к Active Directory вы используете командлеты одноименного модуля, вы можете обращаться к любому из этих двух атрибутов.

Get-ADGroup somegroup -Properties Members | Select-Object -ExpandProperty Members

При использовании других способов, например ADSI, нам будет доступен только атрибут Member.

Также мы можем использовать вид запроса с использованием свойства AttributeScopeQuery объекта DirectorySearcher:

Начиная с Windows Server 2012 R2, мы можем получить список всех членов группы, как непосредственных, так и входящих во вложенные группы, обратившись к атрибуту типа constructed — msds-MemberTransitive.

Стоит упомянтуь, что использовать для этого командлет Get-ADGroup не получится. Вместо этого нам понадобится командлет Get-ADObject.

Get-ADObject -Identity "CN=somegroup,OU=groups,DC=domain,DC=com" -Properties msds-MemberTransitive | Select-Object -ExpandProperty msds-MemberTransitive

В этом случае результат запроса будет содержать все входящие в группы объекты — как пользователей и компьютеров, так и других групп.

При помощи ADSI мы можем запросить значение атрибута msds-MemberTransitive следующим образом:

В данном случае нам пришлось явно указать нужную группу в качестве значения свойства SearchRoot, потому что получение значений большинства constructed-атрибутов (кроме таких, как createTimestamp, modifyTimestamp, structuralObjectClass и objectClasses) через ADSI возможно только при SearchScope в значении ‘Base’.

Еще одним способом получения списка всех членов группы, явных или неявных, является использование оператора -RecursiveMatch. Например, так:

Get-ADUser -Filter {MemberOf -RecursiveMatch "CN=somegroup,OU=groups,DC=domain,dc=com"}

Get-ADComputer -Filter {MemberOf -RecursiveMatch "CN=somegroup,OU=groups,DC=domain,dc=com"}

Get-ADObject -Filter {MemberOf -RecursiveMatch "CN=somegroup,OU=groups,DC=domain,dc=com"}

Если же нас интересует только, например, входит ли определенный пользователь в определенную группу, мы можем поступить следующим образом:

Get-ADUser -Filter {MemberOf -RecursiveMatch "CN=somegroup,OU=groups,DC=domain,dc=int"} -SearchBase "CN=someuser,CN=Users,DC=domain,DC=com"

При использовании LDAP, синтаксис немного изменится:

Где 1.2.840.113556.1.4.1941 — это Object ID правила LDAP_MATCHING_RULE_IN_CHAIN, что является LDAP-аналогом оператора -RecursiveMatch.

При использовании ADSI запросы будут выглядеть следующим образом:

Reporting on Active Directory Groups

Now that we know how to perform many common Active Directory management tasks related to groups using PowerShell, let’s see how to report on what groups exist in AD:

To list all groups in AD, use the script below:

Get-ADGroup -filter * -properties GroupCategory | ft name,groupcategory

Of course, you’ll also want to review AD group members and AD group membership changes. Here are links to instructions for performing those more complex tasks:

  • How to Monitor Active Directory Group Membership Changes
  • How to Get AD User Group Membership Reports
  • How to Export Members of a Particular AD Group
  • Managing OUs and Moving Their Objects with PowerShell

Просмотр

Информация о пользователях

1. Список пользователей домена:

> Get-ADUser -filter *  | Select Name, SamAccountName

2. Простая информация о пользователе:

> Get-ADUser dmosk

* где dmosk — логин пользователя в AD DS, для которого смотрим атрибуты.

3. Как посмотреть все атрибуты пользователя:

> Get-ADUser dmosk -Properties *

4. Список пользователей в определенном организационном юните:

> Get-ADUser -filter * -SearchBase «OU=Пользователи,DC=dmosk,DC=local»

5. Поиск пользователей с определенным значением атрибута:

> Get-ADUser -filter * -Properties title | where { ($_.title -eq «Инженер») } | Select Name

* в данном примере мы выгружаем пользователей, должность которых «Инженер».

6. Исключить из поиска и показа определенных пользователей.

а) Способ 1. Использовать фильтр:

> Get-ADUser -filter { Name -notlike «Мартынов Мартын Мартынович» -and Name -notlike «Макаров Макар Макарович» }

б) Способ 2. С помощью Where и массива:

> $ExcludeUsers = @(«Мартынов Мартын Мартынович», «Макаров Макар Макарович»)

> Get-ADUser -filter * | Where { $ExcludeUsers -notcontains $_.Name }

* обе команды выведут всех пользователей, кроме тех, что перечислены в фильтре.

Выгрузка пользователей в CSV (для просмотра в текстовом формате или Excel)

Выгрузку делаем при помощи командлета Export-csv.

1. Выгрузка всех данных о всех пользователях

Get-ADUser -filter * -Properties * | Export-csv -path C:\Temp\ADUsers.csv

* C:\Temp\ADUsers.csv — путь к выгружаемому файлу.

2. Выгрузка только номеров телефонов и адресов электронной почты для пользователей, находящихся в определенном контейнере:

* обратите внимание, что мы в данной выгрузки используем кодировку UTF-8 и в качестве разделителя знак ;

Список групп пользователя

Get-AdUser dmosk -Properties memberof | Select memberof -expandproperty memberof

* где expandproperty позволяет просмотреть значение коллекций в удобочитаемом виде.

Управление членством в группах

Управлять членством в группе можно несколькими способами:

Управление членством в группе через ADUC

Добавление пользователей в группу

Откройте ADUC (dsa.msc). Перейдите в OU, где находится нужный пользователь. В меню Action выберите Find…. В поле Name введите имя пользователя, которого вы хотите добавить в группу, а затем нажмите Enter.

Щелкните правой кнопкой мыши на нужном пользователе и выберите в меню пункт «Add to a group…».

В окне «Select Group» введите имя нужной группы, или нажмите кнопку «Advanced» для поиска нужной группы. Нажмите кнопку «Check Names», а затем OK, чтобы добавить пользователя в группу.

Удаление пользователя из группы

Перейдите к нужной OU или контейнеру, в котором хранится нужная группа. В меню «Action» выберите «Find…». В поле «Name» введите имя нужной группы и нажмите Enter. Щелкните группу правой кнопкой мыши и выберите «Properties». Переключитесь на вкладку «Members». В окне «Group Properties» выберите пользователя и нажмите «Remove», для удаления.

Нажмите «Да» в окне подтверждения, а затем OK и все готово.

Управление членством в группах с помощью ADAC

Добавление пользователя в группу

Запустите ADAC, в левой панели навигации переключитесь на “Tree view». Перейдите к OU или контейнеру, в котором находится пользователь и в поле Global Search найдите нужного пользователя, для этого введите имя объекта пользователя в область поиска, а затем нажмите Enter. В списке результатов глобального поиска выберите нужного пользователя. Щелкните правой кнопкой мыши по нему и выберите Add to a group….

В окне «Select Groups» введите имя группы, в которую вы хотите добавить учетную запись. Нажмите «Check Names», a затем OK, чтобы завершить добавление пользователя.

Удаление пользователя из группы

Чтобы удалить пользователя перейдите в OU или контейнер, в котором находится группа. В разделе «Global Search» введите название группы, а затем нажмите Enter. В списке результатов глобального поиска выберите нужную группу. Щелкните по ней правой кнопкой мыши и выберите в Properties. Слева выберите пункт Members, как показано на следующем скриншоте экрана:

В разделе Выберите нужного пользователя и нажмите Remove, чтобы удалить пользователя из группы. Будьте внимательны, в этом случае подтверждающего окна показано не будет.

Использование Windows PowerShell

Используйте следующую команду для того чтобы добавить пользователя в группу:

Используйте следующие строки кода PowerShell для удаления пользователя из группы в Active Directory:

Нажмите “y” для подтверждения действия.

ОПИСАНИЕ

Командлет Get-ADGroupMember получает элементы группы Active Directory. Элементами могут быть пользователи, группы и компьютеры.

Параметр Identity определяет группу Active Directory, к которой производится обращение. Группу можно идентифицировать по ее различающемуся имени (DN), значению GUID, идентификатору безопасности (SID) или имени учетной записи SAM. Группу можно также задать, передав объект группы по конвейеру. Например, можно использовать командлет Get-ADGroup, чтобы извлечь объект группы, и затем передать этот объект по конвейеру командлету Get-ADGroupMember.

Если задан параметр Recursive, командлет получает все элементы из иерархии группы, которые не содержат дочерних объектов. Например, если группа InnaOzhoginaReports содержит пользователя SvetlanaOmelchenko и группу VadimKorepinReports, а группа VadimKorepinReports содержит пользователя AlexeyOrekhov, то данный командлет возвратит значения SvetlanaOmelchenko и AlexeyOrekhov.

Для сред AD LDS необходимо задать параметр Partition, за исключением двух следующих случаев.
— Командлет запускается с диска поставщика Active Directory.
— Для среды AD LDS определен контекст или раздел именования по умолчанию. Чтобы задать контекст именования по умолчанию для среды AD LDS, задайте значение свойства msDS-defaultNamingContext объекта агента служб каталогов (DSA) Active Directory (nTDSDSA) для экземпляра AD LDS.

Управление членством в группе через ADUC

Добавление пользователей в группу

Откройте ADUC (dsa.msc). Перейдите в OU, где находится нужный пользователь. В меню Action выберите Find…. В поле Name введите имя пользователя, которого вы хотите добавить в группу, а затем нажмите Enter.

Щелкните правой кнопкой мыши на нужном пользователе и выберите в меню пункт «Add to a group…».

В окне «Select Group» введите имя нужной группы, или нажмите кнопку «Advanced» для поиска нужной группы. Нажмите кнопку «Check Names», а затем OK, чтобы добавить пользователя в группу.

Удаление пользователя из группы

Перейдите к нужной OU или контейнеру, в котором хранится нужная группа. В меню «Action» выберите «Find…». В поле «Name» введите имя нужной группы и нажмите Enter. Щелкните группу правой кнопкой мыши и выберите «Properties». Переключитесь на вкладку «Members». В окне «Group Properties» выберите пользователя и нажмите «Remove», для удаления.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: