Powershell безопасное преобразование строк
Привет я пытаюсь сделать это
Import-Csv C:\sl.csv |$pass = convertto-securestring "abc123"-asplaintext -force | ForEach-Object {New-Item $(Encode-Sqlname $_.Name) -ItemType Registration -Value ("server=$($_.Name);integrated security=true") -Credential (New-Object System.Management.Automation.PSCredential("sa", $pass)) }
но получаю ошибку вот так
Expressions are only allowed as the first element of a pipeline.
At line:1 char:29
+ Import-Csv C:\sl.csv |$pass <<<< = convertto-securestring "abc123"-asplaintext -fo
rce | ForEach-Object {New-Item $(Encode-Sqlname $_.Name) -ItemType Registration -Value ("server=$($_.Name);integrated security=true") -Credential (New-Object System.Management.Automation.PSCredential("sa", $pass)) }
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ExpressionsMustBeFirstInPipeline
Я в основном хочу иметь возможность добавить имя пользователя и пароль (использовать проверку подлинности sql) и пытаться преобразовать мой пароль в securestring и не могу сделать хорошую работу из-за этого. Просьба помочь tks Я пошел по этой ссылке, и код там был полезен, но проблема была, когда я щелкаю правой кнопкой мыши на своих зарегистрированных серверах и вижу свойства, которые я вижу, что это в режиме проверки подлинности Windows, а не в режиме проверки подлинности SQL
1 ответ
Попробуйте присвоить значение на $pass перед конвейером:
$pass = convertto-securestring "abc123"-asplaintext -force
Import-Csv C:\sl.csv | ForEach-Object {New-Item $(Encode-Sqlname $_.Name) -ItemType Registration -Value ("server=$($_.Name);integrated security=true") -Credential (New-Object System.Management.Automation.PSCredential("sa", $pass)) }