Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.89/64: Рейтинг темы: голосов - 64, средняя оценка - 4.89
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46

Выгрузка пользователей группы ad из нескольких OU

02.06.2021, 20:02. Показов 14443. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер господа гуру! Сегодня попросили выгрузить юзеров из указанной группы, но с разных OU.
Оказывается у мене нет такого скрипта. Есть скрипт, который выгружает всех пользователей из группы в .csv
Затем я фильтрую по полю DistinGuishedName нужные OU))).
Как сразу указывать нужные OU и выгрузить пользователей группы? Есть идеи?
я тут что-то начал...не работает естественно)))

PowerShell
1
2
3
4
5
$oui = "OU=Users1,DC=test,DC=LOCAL", "OU=Users2,DC=test,DC=LOCAL" ,"OU=Users3,DC=test,DC=LOCAL"
 
$result = $oui | foreach {Get-ADGroup -Identity 'groupname' -Filter * -SearchBase $_ }
 
$result | Export-Csv C:\Script\ous_gr.csv -NoTypeInformation
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.06.2021, 20:02
Ответы с готовыми решениями:

Связать группы пользователей из мастер защиты на уровне пользователей с должностями пользователей в БД
Интересный вопрос и интересно как его решить. Изначально условия следующие: один компьютер, один рабочий стол, одна база...

Где почитать про пользователей и группы пользователей в Windows 7?
Подскажите где почитать про пользователей и группы пользователей в windows 7?

Узнать сколько в каждой группе пользователей, сравнить и в описании группы внести это количество пользователей.
Здравствуйте, мне необходимо узнать сколько в каждой группе пользователей, сравнить и в описании группы внести это количество...

29
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46
04.06.2021, 12:59  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Karen87 Посмотреть сообщение
Ни в одном из Ваших скриптов нет даже похожего ldap пути. Вы поймите, скрипт изначально дёргает группы и ему нужна корректная OU для их поиска. Если исходить из примера Вашего скрипта и вывода ldap-пути группы Office365e3-GP, то для меня всё очевидно
ааа я понял Вас.
Дело в том, что здесь: $oui = @("OU=Users,OU=3-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=4-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=5-*,DC=*,DC=*,DC=LOCAL") - я ищу членов указанной группы. Да. В этих ОУ нет указанной группы Офис365.
в скрипте указать еще и ldap-путь группы? не совсем понимаю....)))

Ваш скрипт разве это не предполагает? ... поиск юзеров указанной группы в указанных ОУ??? (Я новичок в PS))).
Я так понял этот скрипт...
Т.е. Вы загнали ОУ-шки в массив - затем указали группу - и дали команду выдернут результат в файл.....Я правильно же понимаю? )))

Добавлено через 3 минуты
Karen87, вот этот скрипт рабочий. Можете у себя проверить. Но он предполагает вывод членов группы из одной ОУ.
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# вывести пользователей из группы, находящихся в конкретном OU. Без учета вложенных групп.
cls
$csv = 'c:\Script\grTwoFactor.csv'
# Группы
$grpname1 =  "*TwoFactor-K*"
 
Set-Content -Path $csv -Value 'GroupName;UserName;sAMAccountName;UserWorkstations;Enabled;DistinguishedName' -Encoding UTF8 -Force
 
foreach ($member in (Get-ADUser -SearchBase "OU=Users,OU=7-*,DC=test,DC=test1,DC=LOCAL" -Filter {SamaccountName -Like '*'} -Properties MemberOf, sAMAccountName, UserWorkstations |
?{($_.MemberOf -like $grpname1) -or ($_.MemberOf -like $grpname2)}))
{
 
foreach ($ADgroup in ($member.MemberOf | ?{($_ -like $grpname1)} | Get-ADGroup | ?{($_.name -like $grpname1) }))
    {
    Add-Content -Path $csv -Value ($ADgroup.Name,$member.Name,$member.sAMAccountName,$member.UserWorkstations,$Member.Enabled,$member.DistinguishedName  -join ';') -Encoding UTF8
    }
 
}
Write-Host 'Завершено...' -ForegroundColor Blue
0
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
04.06.2021, 13:02
Цитата Сообщение от Scrat2020 Посмотреть сообщение
Т.е. Вы загнали ОУ-шки в массив - затем указали группу - и дали команду выдернут результат в файл.....Я правильно же понимаю? )))
Именно так

Добавлено через 1 минуту
Вы напишите ещё раз, что конкретно нужно получить
1
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46
04.06.2021, 13:07  [ТС]
на данный момент я этот скрипт использую для поиска по всему домену.
То есть убираю OU=Users, оставляю только "DC=, DC=,DC=LOCAL"
Затем в полученном файле делаю фильтр (ручками) по полю: DistinGuishedName - и таким полуавтоматическим методом получаю сколь угодно, и какие угодно ОУ-шки.
А так хочется красоту навести...)))Указал нужные ОУ-шки и вытащил все что угодна из них, хоть хосты, хоть юзеров, хоть группы....ляпота.

Добавлено через 3 минуты
Цитата Сообщение от Karen87 Посмотреть сообщение
Вы напишите ещё раз, что конкретно нужно получить
Нужно получить из $oui = @("OU=Users,OU=3-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=4-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=5-*,DC=*,DC=*,DC=LOCAL") - членов указанной группы "Office365"
0
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
04.06.2021, 13:09
Scrat2020, теперь понял. Чуть позже напишу скрипт
1
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46
04.06.2021, 13:20  [ТС]
Цитата Сообщение от Karen87 Посмотреть сообщение
Scrat2020, теперь понял. Чуть позже напишу скрипт
Спасибо! Премного благодарен за оказанную помощь.

Добавлено через 1 минуту
Цитата Сообщение от Scrat2020 Посмотреть сообщение
Scrat2020, теперь понял. Чуть позже напишу скрипт
. Может мой скрипт за основу возьмете?)))
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# вывести пользователей из группы, находящихся в конкретном OU. Без учета вложенных групп.
cls
$csv = 'c:\Script\grTwoFactor.csv'
# Группы
$grpname1 =  "*TwoFactor-K*"
 
Set-Content -Path $csv -Value 'GroupName;UserName;sAMAccountName;UserWorkstations;Enabled;DistinguishedName' -Encoding UTF8 -Force
 
foreach ($member in (Get-ADUser -SearchBase "OU=Users,OU=7-*,DC=test,DC=test1,DC=LOCAL" -Filter {SamaccountName -Like '*'} -Properties MemberOf, sAMAccountName, UserWorkstations |
?{($_.MemberOf -like $grpname1) -or ($_.MemberOf -like $grpname2)}))
{
 
foreach ($ADgroup in ($member.MemberOf | ?{($_ -like $grpname1)} | Get-ADGroup | ?{($_.name -like $grpname1) }))
    {
    Add-Content -Path $csv -Value ($ADgroup.Name,$member.Name,$member.sAMAccountName,$member.UserWorkstations,$Member.Enabled,$member.DistinguishedName  -join ';') -Encoding UTF8
    }
 
}
Write-Host 'Завершено...' -ForegroundColor Blue
0
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
04.06.2021, 14:10
Лучший ответ Сообщение было отмечено Fors1k как решение

Решение

Scrat2020, пробуйте:
PowerShell
1
2
3
4
5
6
7
8
$ous=@("OU=Users,OU=3-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=4-*,DC=*,DC=*,DC=LOCAL", "OU=Users,OU=5-*,DC=*,DC=*,DC=LOCAL")
$group='Office365e3-GP'
$users=(Get-ADGroupMember $group).samaccountname
foreach ($user in $users) {
    foreach ($ou in $ous) {
        Get-ADUser -Filter {samaccountname -eq $user} -SearchBase $ou -Properties name | Select-Object -Property name | Export-Csv C:\Script\ous_gr.csv -NoTypeInformation -Append
    }
}
1
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46
04.06.2021, 16:59  [ТС]
Karen87, СУПЕР!!! Спасибо большое! Немного добавил в select:
Code
1
Select-Object [B]@{n='GroupName';e={$group}}[/B],Name,SamAccountName, distinguishedname| Export-Csv "C:\Script\ous_gr1.csv" -NoTypeInformation -Append -Encoding utf8 -Delimiter ";"
Добавлено через 2 минуты
не так вставил что ли?)) вот это лишнее - [/B], [B]

Добавлено через 1 минуту
Тему можно закрывать! СПАСИБО!!!
0
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
04.06.2021, 17:02
Цитата Сообщение от Scrat2020 Посмотреть сообщение
СУПЕР!!! Спасибо большое!
Да не за что
0
2 / 1 / 1
Регистрация: 03.10.2020
Сообщений: 46
04.06.2021, 17:06  [ТС]
Ну как это не за что? ))). Есть за что. За труд, за терпение. Здоровья и удачи нам Всем! Еще раз мои благодарности.
0
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
04.06.2021, 18:27
Scrat2020, спасибо, взаимно)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.06.2021, 18:27

Связка группы пользователей и инфоблока с группой пользователей
Добрый ден. Такой вопрос. Необходимо сделать связку пользователей и инфоблока с группами пользователей. В зависимости от группы...

Выгрузка в CSV пользователей из АД с фильтром
Здравствуйте, коллеги! Руководство поставило очень срочную задачу: вывести в CSV список пользователей из AD, у которых пустой...

Выгрузка пользователей из Active Directory
Доброго дня, товарищи! Возникла задача: По списку ФИО получить LoginName. К примеру, список: Результирующая таблица: ...

Авторизация пользователей и выгрузка в Excel
Здравствуйте! Подскажите, как реализовать контроль за тем кто вводит данные? Я сделала окно авторизации, авторизация проходит успешно и...

Сравнение пользователей по DisplayName и выгрузка в csv
Добрый день! Подскажите в написании скрипта. Есть файл txt c табельными номерами, ФИО и тд. Хочу импортировать его и по ФИО найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru