Нужна помощь в разборе переменной из CSV.
Я пытаюсь создать скрипт ниже. Я пытаюсь выполнить сброс пароля учетной записи службы на основе файла CSV, а затем мне нужно использовать Invoke-Command
для редактирования реестра с паролем. Это для авто-логинов.
Я могу заставить скрипт сбросить пароль и поместить переменную в реестр, но она помещает в каталог всю строку, а не только пароль. Мне нужно выяснить, как разобрать его, чтобы просто передать пароль.
Речь идет о коде внутри Invoke-Command
скриптового блока.
Сначала я пытался использовать эту команду, используя $account.password
, но переменная не выдвигалась, кто-то упомянул команду $using
, которая как минимум выдвинула переменную, но все ее переменные, имя компьютера, имя учетной записи и пароль.
Import-Module ActiveDirectory
$Resetpassword = Import-Csv "c:\UserList.csv"
foreach ($Account in $Resetpassword) {
$Account.sAMAccountName
$Account.Password
$Account.computer
Set-ADAccountPassword -Identity $Account.sAMAccountName -NewPassword (ConvertTo-SecureString $Account.Password -AsPlainText -force) -Reset
Invoke-Command -computername $Account.computer -UseSSL -Scriptblock {
Set-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" "Test" -Value "$using:Account.Password" -Type string
}
}