Изменить пароль для удаленных серверов из CSV - PullRequest
0 голосов
/ 04 ноября 2019

Вопрос о Powershell.

Я пытаюсь изменить пароль локального пользователя на нескольких удаленных серверах, находящихся в разных доменах. Файл csv содержит 4 столбца: имя сервера, домен, пароль, localuser

Пример:

  • Server1, mydomain.dev, test123, localadmin
  • Server2, mydomain. uat, test123, localadmin
  • Server3, mydomain.prod test123, localadmin

Вот что у меня есть, но, к сожалению, безуспешно:

Import-CSV servers.csv | ForEach-Object {Invoke-Command -ComputerName "$($_.servername).$($_.domain)" `
-Credential "$($_.domain)\$($env:username)" {([adsi]"WinNT://./$_.localuser").SetPassword($_.password)}
    }

Будучи новичком в Powershell, я не знаю, как правильно передать свойства locauser и password внутри {}.

Любая помощь очень ценится!

1 Ответ

0 голосов
/ 04 ноября 2019

Благодаря направлению @GuentherSchmitz у меня сработало следующее.

Import-CSV servers.csv |
   ForEach-Object {Invoke-Command -ComputerName "$($_.servername).$($_.domain)"-Credential "$($_.domain)\$($env:username)" {
   param($l_user,$l_pass) ([adsi]"WinNT://./$l_user").SetPassword("$l_pass")} -ArgumentList $_.localuser,$_.password
   }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...