Powershell безопасное преобразование строк - PullRequest
0 голосов
/ 15 февраля 2012

Привет, я пытаюсь сделать это

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) и пытаться преобразовать мой пароль в защищенную строку, и, судя по всему, с этим не справляюсь. Просьба помочь TKS Я пошел по этой ссылке, и там был полезный код, но проблема была в том, что когда я щелкнул правой кнопкой мыши на своих зарегистрированных серверах и увидел свойства, я вижу, что это в режиме проверки подлинности Windows, а не в режиме проверки подлинности SQL

1 Ответ

0 голосов
/ 15 февраля 2012

Попробуйте присвоить значение на $ 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)) }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...