Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Поиск групп AD начинающихся на ... (http://forum.oszone.net/showthread.php?t=295970)

SkyNezu 24-02-2015 09:17 2475139

Поиск групп AD начинающихся на ...
 
Добрый день.
Дано: Active Directory с огромным количеством пользователей и групп.
Необходимо:
1. Найти все группы в АД, начинающиеся на "CP-AUF".
2. Выгрузить список пользователей из этих групп (с полями: ФИО, имя в домене, организация).

Кто может помочь с п.1? Не могу догнать как это сделать.

Kazun 24-02-2015 09:36 2475144

PowerShell + модуль Active Directory:
Код:

Get-ADGroup -Filter {Name -like "CP-AUF*"} | Get-ADGroupMember -Recursive | Get-ADUser -Properties displayname,organization | Select Name,DisplayName,Organization

SkyNezu 24-02-2015 12:47 2475209

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

Kazun 24-02-2015 13:28 2475224

Get-ADGroup -Filter {Name -like "CP-AUF*"} -SearchBase "OU=MyGroups,DC=Contoso,DC=Com"

SkyNezu 24-02-2015 13:38 2475228

Спасибо, разобрался.

При попытке выгрузить в csv выдает ошибку:
Код:

Get-ADGroup : Сервер вернул следующую ошибку: недопустимый контекст перечисления.
строка:1 знак:12
+ Get-ADGroup <<<< -Filter {Name -like "lol*"} -searchbase "dc=example,dc=com" | Get-ADGroupMember -Recursive | Get-ADUser -Properties displayname,Company | Select Name,DisplayName,Company >>d:\2.csv
    + CategoryInfo : NotSpecified: (:) [Get-ADGroup], ADException
    + FullyQualifiedErrorId : Сервер вернул следующую ошибку: недопустимый контекст перечисления.,Microsoft.ActiveDirectory.Management.Commands.GetADGroup

Нашел вот эту тему - https://social.technet.microsoft.com...orum=scrlangru
Так и не понял как автор решил проблему. Это ведь ваш ответ оказался правильным? Не подтолкнете и меня к тому что нужно сделать?

Kazun 24-02-2015 13:59 2475238

Команда возвращает данные?
Код:

Get-ADGroup -Filter {Name -like "CP-AUF*"} -SearchBase "OU=MyGroups,DC=Contoso,DC=Com" -ResultPageSize 10

SkyNezu 24-02-2015 14:40 2475255

Долго делал запрос в этот раз и все равно вывел ошибку. Только в первый раз он вывел >3k записей в csv, а сейчас >17k записей.

Kazun 24-02-2015 14:52 2475264

Тогда, пробовать ADSI:
Код:

$Searcher = [adsisearcher]"(&(objectClass=group)(name=CF-AUF*))"
$Searcher.PageSize = 200
$Searcher.SearchScope = "subtree"
$Searcher.SearchRoot = [ADSI]"LDAP://OU=MyGroups,DC=Contoso,DC=Com"

$Attributes = "samaccountname"
ForEach($Attribute in $Attributes)
{
    $Searcher.PropertiesToLoad.Add($Attribute) | Out-Null
}

$Results =  $Searcher.FindAll()


SkyNezu 25-02-2015 06:26 2475535

Честно говоря не совсем догнал как его использовать

Kazun 25-02-2015 15:49 2475742

Результат находится в перменной $Results , сам код можно копировать прямо в консоль с требуемыми изменениями OU.


Время: 09:25.

Время: 09:25.
© OSzone.net 2001-