Невозможно обработать переменную пароля в PowerShell из-за специальных символов

Невозможно обработать переменную пароля в PowerShell из-за специальных символов

Я работаю над скриптом PS для установки агентов VSTS на мои виртуальные машины Azure через конвейер выпуска Azure DevOps.

Здесь, в скрипте ниже, я передаю пароль учетной записи службы, который задают мои клиенты. Скрипт ниже дает сбой, когда пароль состоит из специальных символов, таких как

")';:(

Код:

 .\config.cmd --deploymentgroup --deploymentgroupname DeployGroupSQL --agent $env:COMPUTERNAME --runasservice --windowsLogonAccount $(ServiceAccountUser) 
--windowsLogonPassword **"$(Service_Account_Password)"** --work '_work' 
--adddeploymentgrouptags --deploymentgrouptags $SQL 
--url 'https://dev.azure.com/campusmgmt-product-development/' 
--projectname 'Student' --auth PAT --token u4bq6j******************************bhhyq; 

Я пробовал заключать весь пароль как в двойные, так и в одинарные кавычки, но это не помогло.

Этот пароль учетной записи службы является переменной конвейера и, следовательно, должен передаваться как $(Service_Account_Password).

Можете ли вы подсказать, как мне справиться с этой ситуацией? Я уже пробовал поместить это как строку here-string, Secure-String или параметр скрипта, но это не помогло.

Надеюсь получить скорый ответ, так как это срочно для выпуска моего проекта.

Связанный контент