Восстановление баз данных SQL с помощью расширения пользовательских сценариев AzureRM
Я пытаюсь загрузить и восстановить резервные копии базы данных на сервере SQL с расширением настраиваемого сценария AzureRM, загрузка файлов выполняется нормально, но восстановление не удается при отказе в доступе ("для базы данных" master "), я предполагаю, что это потому, что сценарий выполняется как локальный системная учетная запись и не имеет разрешений.
Для многих других действий, которые я выполняю в рамках автоматизации Azure, я могу передать объект учетных данных для обработки этого материала без сохранения секретов (т. Е. Результат получения get-credential в качестве аргумента), но Set-AzureRmCustomScriptExtension допускает только аргументы тип "строка"
Как я могу установить командлет restore-sqldatabasebackup в этом пользовательском расширении сценария, чтобы использовать существующего пользователя, у которого есть разрешение на это?
1 ответ
Ну , вы можете просто построить учетный объект "на лету":
$cred = [pscredential]::new('administrator',(ConvertTo-SecureString -String '!Q2w3e4r' -AsPlainText -Force))
здесь вы можете использовать переменные и передавать их в расширение собственного скрипта. другой вариант - предоставить локальной системе разрешение на восстановление баз;)