Ldap фильтр для нескольких Ou's Powershell - PullRequest
0 голосов
/ 25 октября 2019

Здравствуйте, ребята, все еще довольно плохо знакомы с Powershell и никогда раньше не работали с Ldap -filter, поэтому у меня есть вопрос. Возможно ли получить AD-User из нескольких Ou с одним фильтром Ldap?

OU=D5,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl
OU=D3,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl
OU=G2,OU=General,OU=User,OU=1,DC=test,DC=for-me,DC=nl
OU=C6,OU=Expired,OU=User,OU=1,DC=test,DC=for-me,DC=nl

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

Ответы [ 2 ]

1 голос
/ 25 октября 2019

Вы не можете сделать OU частью фильтра LDAP. Но вы можете сделать OU основой вашего поиска и выполнить несколько поисков.

# an array of OUs, this could also be achieved with e.g. $OUs = Get-Content 'some_file.txt'
$OUs = @(
    "OU=D5,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl"
    "OU=D3,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl"
    "OU=G2,OU=General,OU=User,OU=1,DC=test,DC=for-me,DC=nl"
    "OU=C6,OU=Expired,OU=User,OU=1,DC=test,DC=for-me,DC=nl"
)

foreach ($ou in $OUs) {
    Get-ADUser -SearchBase $ou
}
0 голосов
/ 25 октября 2019

Ну, это не LDAP-запрос, и он может быть подозрительным в очень большой среде, но обычно я предлагаю использовать параметры фильтра Powershell, как показано ниже:

Get-ADUser -Filter  * | Where-Object { $_.DistinguishedName.split(",",2)[1] -in 
    "OU=D5,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl",
    "OU=D3,OU=Standard,OU=User,OU=1,DC=test,DC=for-me,DC=nl",
    "OU=G2,OU=General,OU=User,OU=1,DC=test,DC=for-me,DC=nl",
    "OU=C6,OU=Expired,OU=User,OU=1,DC=test,DC=for-me,DC=nl"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...