Настройка сценария для запуска при входе пользователя в систему на виртуальной машине Azure через ARM
Я обобщил образ Windows Azure и использую его в шаблоне ARM (менеджер ресурсов Azure) для создания новой виртуальной машины. Во время создания виртуальной машины я выполняю некоторые действия по загрузке, используя расширение Custom Script, которое запускает скрипт Powershell. Он работает хорошо, за исключением нескольких вещей, которые характерны для пользователя, который будет входить в систему на компьютере. Например, я не могу сопоставить сетевой диск или установить политику исключений PowerShell для удаленной подписи для пользователя, который будет входить в систему с помощью расширения пользовательских сценариев.
Есть ли способ выполнить специфичные для пользователя задачи в шаблоне ARM или настроить запуск некоторых сценариев при входе пользователя в систему?
1 ответ
Возможно, немного поздно, но я использую что-то похожее на это:
Тем не менее, мы пока не можем напрямую передать этот скрипт в Custom Script Extension. Расширение Custom Script Extension использует учетную запись NTAUTHORITY\SYSTEM для выполнения сценариев, но учетная запись не имеет необходимых прав для выполнения команд конфигурации SQL. Чтобы обойти это, мы создадим отдельный сценарий начальной загрузки, который олицетворяет учетную запись администратора, прежде чем запускать сценарий.
Вот код, используемый:
$password = ConvertTo-SecureString "[your admin account user password]" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential("$env:COMPUTERNAME\[your admin account]", $password)
$command = $file = $PSScriptRoot + "\CustomScriptSQLPS.ps1"
Enable-PSRemoting –force
Invoke-Command -FilePath $command -Credential $credential -ComputerName $env:COMPUTERNAME
Disable-PSRemoting -Force
Я не знаю, имеет ли отношение удаленное отношение к этому, хотя...
Кредиты Хайши Бай