Задать вопрос
quality
@quality
admin, supp: windows,linux; ubiquiti,mikrotik.

Заполнение атрибута memberUid в группе AD?

Подскажите, добрые люди. Не могу сообразить в следующем. Есть OU в AD, в нем несколько десятков групп, в каждой группе очень много пользователей. Нужно во всех группах заполнить атрибут memberUid на основании sAMAccountName этих самых пользователей, состоящих в группе. С какой стороны копать? "Весь" интернет перерыл, но внятного ничего не нашел. Есть кто занимался подобным?
  • Вопрос задан
  • 365 просмотров
Подписаться 2 Средний Комментировать
Решения вопроса 1
quality
@quality Автор вопроса
admin, supp: windows,linux; ubiquiti,mikrotik.
В общем решил вопрос, возможно кому пригодится:
Import-Module ActiveDirectory -ErrorAction SilentlyContinue
#
#OU с группами и группа пользователей
$oug = "OU, которая включает множество групп"
$ouu = "Ваша группа созданная в OU, или где угодно, в формате *distinguishedName*"
    #Активируем пустой массив
$sg = @()
    #Получаем список групп для *ваших нужд*, чтобы раздать права и что-то сделать *для ваших нужд*
$sg = Get-ADGroup -SearchBase $oug -Filter {cn -like "*"} -Properties distinguishedName |Select-Object distinguishedName
    #Активируем пустой массив
$suglobal = @()
    #Получаем список пользователей из созданной группы для фильтра в операторе сравнения
$suglobal = Get-ADGroupMember -Identity $ouu -Recursive | Select-Object sAMAccountName

#Поиск пользователей
foreach ($group in $sg) {
    #Получаем массив групп по имени, по-строчно
    $gr = $group.cn
    $gr = $group.distinguishedName
    
    foreach ($su2 in $suglobal) {
    $suf = $su2.sAMAccountName
    
    if ((Get-ADUser $suf -Properties MemberOf).MemberOf -like "$gr") {
    
        Set-ADGroup -Identity $gr -Add @{memberUid = "$suf"}
        #echo "$suf // true in $gr"
    } Else { Set-ADGroup -Identity $gr -Remove @{memberUid = $suf}
        #echo "$suf \\ false in $gr"
    }
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы