none
Замена атрибутов пользователей Active directory из CSV файла через Power Shell RRS feed

  • Вопрос

  • Добрый день!!

    Уважаемые  подскажите, дали список на актуализацию учетных данных в AD.

    Каким образом можно будет с помощью powershell заменить атрибуты? Не могу найти подходящий скрипт

    10 июля 2018 г. 9:25

Ответы

  • получается есть список с корректными данными мне его надо вставить в атрибуты пользователей
    import-csv c:\Trash\users.csv | foreach {
        Set-ADUser -Identity $_.SamAccountName -HomePage $_.Homepage -LogonWorkstations $_.Ws
    }
    справка по команде


    The opinion expressed by me is not an official position of Microsoft

    • Помечено в качестве ответа Miracle089 10 июля 2018 г. 10:27
    10 июля 2018 г. 9:56
    Модератор

Все ответы

  • что вам и где нужно заменить?

    подозреваю что вы спрашиваете о get-aduser/set-aduser, но моя дтгадка базируется исключительно на ванговании


    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 9:28
    Модератор
  • смотрите необходимо заменить адрес, город, организацию и т.д. Атрибуты ад я уже нашел. нет понимания написания скрипта)) 
    10 июля 2018 г. 9:31
  • получается есть список с корректными данными мне его надо вставить в атрибуты пользователей
    10 июля 2018 г. 9:32
  • получается есть список с корректными данными мне его надо вставить в атрибуты пользователей
    import-csv c:\Trash\users.csv | foreach {
        Set-ADUser -Identity $_.SamAccountName -HomePage $_.Homepage -LogonWorkstations $_.Ws
    }
    справка по команде


    The opinion expressed by me is not an official position of Microsoft

    • Помечено в качестве ответа Miracle089 10 июля 2018 г. 10:27
    10 июля 2018 г. 9:56
    Модератор
  • а файлик csv какого вида должен быть? Можете показать пример если не сложно. По какому атрибуту будет идти отбор редактируемой учетной записи?))
    10 июля 2018 г. 10:11
  • а файлик csv какого вида должен быть? Можете показать пример если не сложно. По какому атрибуту будет идти отбор редактируемой учетной записи?))

    обычно есть задача и под нее пишут решение, а не наоборот, ну да не суть.

    'SamAccountName','HomePage','WS'
    'ivanov-i','corporn.local','ivanovpc1'
    'petrov-p','vk.com','petrovpc1'


    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 12:05
    Модератор
  • спасибо большое попробую сотворить что нить))
    10 июля 2018 г. 12:26
  • вот если вам не сложно можете написать например хочу два атрибута поменять как это будет выглядеть

    допустим вот эти два атрибута streetAddress, telephoneNumber

    10 июля 2018 г. 12:41
  • вот если вам не сложно можете написать например хочу два атрибута поменять как это будет выглядеть

    допустим вот эти два атрибута streetAddress, telephoneNumber

    открываете справку и поиском находите нужные вам параметры, в частности officephone и streetadress.

    Берете пример из справки или его версию с csv которую я приводил выше и заменяете параметры на те которые вам требуются, в значениях используете $_.streetaddress и $_.officephone и в csv делаете тоже самое в шапке и значениях


    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 13:30
    Модератор
  • вот к примеру так можно будет csv прописать?

    sAMAccountName;streetAddress 

    test.o;1111

    скрипт выглядит так

    import-csv C:\Users\учетка\Desktop\111.csv | foreach 
        Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress $_.Ws

    10 июля 2018 г. 13:39
  • вот к примеру так можно будет csv прописать?

    sAMAccountName;streetAddress 

    test.o;1111

    скрипт выглядит так

    import-csv C:\Users\учетка\Desktop\111.csv | foreach 
        Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress $_.Ws

    да но нет...

    если вы обратите внимание в моем примере у foreach есть  фигурные скобки, которые вы полеряли, в свою очередь $_.Ws вы зачем-то оставили (убрав при этом атрибут в котором он использовался). В придачу ко всему у меня значения в csv разделены запятой (у вас точкой с запятой) и заключены в кавычки (в вашем примере не критично но на такие веши стоит обращать внимание).

    итого, не меняя csv скрипт будет выглядеть так:

    import-csv C:\Users\учетка\Desktop\111.csv -Delimeter ';' | foreach {
        Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress
    }


    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 14:09
    Модератор
  • }
    Import-Csv : A parameter cannot be found that matches parameter name 'Delimeter'.
    At line:1 char:44
    + import-csv C:\Users\***\Desktop\222.csv -Delimeter ';' | foreach {
    +                                            ~~~~~~~~~~
        + CategoryInfo          : InvalidArgument: (:) [Import-Csv], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.ImportCsvCommand

    вот такая байда вышла...

     
    10 июля 2018 г. 14:16
  • очепятка с моей стороны -Delimiter

    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 15:13
    Модератор
  • терь так 

    Set-ADUser : Cannot validate argument on parameter 'Identity'. The argument is null. Provide a valid value for the argument, and then try running the command again.
    At line:2 char:26
    +     Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress
    +                          ~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidData: (:) [Set-ADUser], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.SetADUser

    10 июля 2018 г. 17:03
  • терь так 

    Set-ADUser : Cannot validate argument on parameter 'Identity'. The argument is null. Provide a valid value for the argument, and then try running the command again.
    At line:2 char:26
    +     Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress
    +                          ~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidData: (:) [Set-ADUser], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.SetADUser

    проверяйте что в CSV у вас есть параметр samaccountname

    к слову сказать можете сделать только импорт файла и посмотреть на результат, если разбито правильно по колонкам - норм, если выглядит как каша или колонки неправильно подписаны - правте файл


    The opinion expressed by me is not an official position of Microsoft

    10 июля 2018 г. 17:38
    Модератор
  • Спасибо большое разобрался! скрипт заработал
    11 июля 2018 г. 11:07
  • а нет) с двумя атрибутами прокатило, теперь хочу поменять 8

    на выходе такая ошибка....

    Set-ADUser : A parameter cannot be found that matches parameter name 'teletexTerminalldentifier'.
    At C:\Users\y.ogay\Desktop\тестовый скрипт.ps1:2 char:146
    + ...  $_.department -teletexTerminalldentifier $_.teletexTerminalldentifier -mobile $ ...
    +                    ~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidArgument: (:) [Set-ADUser], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.ActiveDirectory.Management.Commands.SetADUser

    вот сам скрипт

    import-csv C:\Users\учетка\Desktop\322.csv -Delimiter ';' | foreach {
        Set-ADUser -Identity $_.SamAccountName -streetAddress $_.streetAddress -l $_.l -company $_.company -title $_.title -department $_.department -teletexTerminalldentifier $_.teletexTerminalldentifier -mobile $_.mobile -physicalDeliveryOfficeName $_.physicalDeliveryOfficeName
    }

    11 июля 2018 г. 12:13
  • командлет Set-AdUser ничего не знает о параметре teletexTerminalldentifier

    The opinion expressed by me is not an official position of Microsoft

    11 июля 2018 г. 12:53
    Модератор
  • l-атрибут города

    telephoneNumber-номер

    physicalDeliveryOfficeName - кабинет

    вот эти три параметра не меняются в чем может быть причина? что можно сделать чтоб командлет Set-AdUser распознал их?

    11 июля 2018 г. 13:01
  • есть идеи?))
    12 июля 2018 г. 4:06
  • все спасибо все работает, очень помогли
    12 июля 2018 г. 5:08