Powershell Azure: термин Get-AutomationConnection не распознается как имя командлета, функции, файла сценария или работающей программы.

Я пытаюсь подключиться к соединению «Запуск от имени» Azure в рамках сценария Powershell, который выполняет резервное копирование базы данных.

Этот сценарий пытается вызвать Get-AutomationConnection

Как видно на скриншоте, Get-Module действительно возвращает то, что показывает Azure / Azure.Storage и AzureRM.

Какой модуль мне нужно дополнительно импортировать, чтобы это работало?

введите здесь описание изображения


person Peter PitLock    schedule 25.04.2017    source источник
comment
почти уверен, что get-automationconnection используется в модулях Runbook только для внутреннего извлечения данных из службы автоматизации Azure. Чего вы пытаетесь достичь?   -  person 4c74356b41    schedule 25.04.2017
comment
Я вижу, вы входите в ARM. Вы пробовали Get-AzureRMAutomationConnection?   -  person Niels    schedule 25.04.2017
comment
gallery.technet.microsoft.com/scriptcenter/ - Я думал, что могу заставить Powershell работать локально, затем загрузить его в лазурь и запустить как функцию. Попытка запустить powershell из ссылки на Резервное копирование баз данных SQL Azure в хранилище BLOB-объектов   -  person Peter PitLock    schedule 25.04.2017
comment
@PeterPitLock Сценарий выполняется в Azure Runbook, вы должны запустить New-AzureRmAutomationConnection на своем локальном компьютере.   -  person Shui shengbao    schedule 25.04.2017
comment
Спасибо, Уолтер, знаете ли вы, можно ли это сделать (функция Azure в Powershell для резервного копирования SQL Azure в SQL Blob)? Теперь проблема в моих знаниях о входе в систему. Я думаю скорее пойти по этому пути: cmatskas .com /   -  person Peter PitLock    schedule 25.04.2017
comment
@PeterPitLock Извините, у меня это плохо получается. Если возможно, вы можете задать новый вопрос по этому поводу. Вы можете обратиться к этой ссылке: [Резервное копирование нескольких баз данных в хранилище BLOB-объектов Azure - PowerShell] (docs.microsoft.com/en-us/sql/relational-databases/). Если мой ответ полезен, не забудьте принять его.   -  person Shui shengbao    schedule 26.04.2017


Ответы (2)


Если вы хотите подключиться к соединению «Запуск от имени» Azure из Windows PowerShell, вы должны использовать _ 1_.

$ConnectionAssetName = "AzureRunAsConnection"
$ConnectionFieldValues = @{"ApplicationId" = $Application.ApplicationId; "TenantId" = $TenantID.TenantId; "CertificateThumbprint" = $Cert.Thumbprint; "SubscriptionId" = $SubscriptionId}
New-AzureRmAutomationConnection -ResourceGroupName $ResourceGroup -AutomationAccountName $AutomationAccountName -Name $ConnectionAssetName -ConnectionTypeName AzureServicePrincipal -ConnectionFieldValues $ConnectionFieldValues 

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

Get-AutomationConnection выполняется внутри модуля Runbook Azure.

См. ресурсы подключения в службе автоматизации Azure.

person Shui shengbao    schedule 25.04.2017

Если вы хотите, чтобы функциональные возможности модулей Runbook были аналогичны локальным, вы можете установить AzureAutomationAuthoringToolkit. Это даст вам очень похожую функциональность. У меня есть один сценарий, который входит в систему с использованием субъекта-службы, независимо от того, работает ли он локально или в модуле Runbook Azure. При локальной работе он использует ресурсы, предоставляемые AAATK, которые имитируют модуль Runbook.

Я пробовал использовать версию Get-AutomationConnection, которая поставляется с агентом мониторинга Microsoft (гибридный рабочий), но с тех пор я прочитал, что она отличается от той, которая поставляется с AzureAutomationAuthoringToolkit, подробно описанной в разделе Известные проблемы в readme для GitHub. Я не мог заставить его работать, поэтому я вернулся к версии AAATK.

person woter324    schedule 23.06.2017
comment
AzureAutomationAuthoringToolkit не поддерживает Powershell 7! - person Gill-Bates; 23.07.2021
comment
Этому ответу больше 4 лет! Дела немного продвинулись. AAATK был расширением для PowerShell ISE. ISE не работает с PS 6.x или 7.x. AAATK больше не поддерживается, так как есть множество других инструментов, которые его заменили. - person woter324; 24.07.2021