none
небольшой вопрос RRS feed

  • Вопрос

  • Доброго всем времени. Подскажите пож-та как в командлете "Get-ADUser -SearchBase" искать сразу в нескольких OU, к примеру 2 или 3. 
    9 декабря 2014 г. 14:01

Ответы

  • $x=@('ou=ou1,dc=domain,dc=local','ou=ou2,dc=domain,dc=local')

    $x | foreach {get-aduser -searchbase $_ -f .....}


    9 декабря 2014 г. 14:10
  • Get-ADUser в конечном итоге преобразуется в Ldap запрос. Ldap запрос может содержать:

    1. search base (the distinguished name) - начало поиска
    2. search scope (Base,OneLevel,Subtree)
    3. filter
    4. attributes - набор атрибутов
    5. controls
    Т.к. в searchbase нельзя указать несколько значений, то и несколько OU нет возможности указать. Фильтр distinguishedname не поддерживает wildcard, значит поиск тоже нельзя произвести по нескольким OU. Использовать атрибут OU нельзя,т.к. не всегда определен.

    • Изменено KazunEditor 9 декабря 2014 г. 15:31
    • Помечено в качестве ответа KazunEditor 12 декабря 2014 г. 5:50
    9 декабря 2014 г. 15:22
    Отвечающий
  • Get-ADUser -f '*' | Where-Object {($_.distinguishedname -like "*OU=ou1,DC=domain,DC=local") -or ($_.distinguishedname -like "*OU=ou2,DC=domian,DC=local")}

    А первый вариант-то чем не устраивает?

    • Помечено в качестве ответа KazunEditor 12 декабря 2014 г. 5:50
    9 декабря 2014 г. 14:40

Все ответы

  • $x=@('ou=ou1,dc=domain,dc=local','ou=ou2,dc=domain,dc=local')

    $x | foreach {get-aduser -searchbase $_ -f .....}


    9 декабря 2014 г. 14:10
  • а еще варианты ?
    9 декабря 2014 г. 14:13
  • Get-ADUser -f '*' | Where-Object {($_.distinguishedname -like "*OU=ou1,DC=domain,DC=local") -or ($_.distinguishedname -like "*OU=ou2,DC=domian,DC=local")}

    А первый вариант-то чем не устраивает?

    • Помечено в качестве ответа KazunEditor 12 декабря 2014 г. 5:50
    9 декабря 2014 г. 14:40
  • устраивает всем. а почему нельзя "get-aduser -searchbase {(("ou=ou1,dc=domain,dc=net") -or ("ou=ou2,dc=domain,dc=net"))} 
    9 декабря 2014 г. 15:13
  • потому что в параметр -searchbase можно указать лишь 1 путь, это не фильтр чтобы указывать там условия с операторами аля -or.

    9 декабря 2014 г. 15:17
  • Get-ADUser в конечном итоге преобразуется в Ldap запрос. Ldap запрос может содержать:

    1. search base (the distinguished name) - начало поиска
    2. search scope (Base,OneLevel,Subtree)
    3. filter
    4. attributes - набор атрибутов
    5. controls
    Т.к. в searchbase нельзя указать несколько значений, то и несколько OU нет возможности указать. Фильтр distinguishedname не поддерживает wildcard, значит поиск тоже нельзя произвести по нескольким OU. Использовать атрибут OU нельзя,т.к. не всегда определен.

    • Изменено KazunEditor 9 декабря 2014 г. 15:31
    • Помечено в качестве ответа KazunEditor 12 декабря 2014 г. 5:50
    9 декабря 2014 г. 15:22
    Отвечающий