Как заменить модуль AzureRM на Az в Azure Учетная запись автоматизации - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь использовать Azure Учетная запись автоматизации для запуска некоторых заданий, но я борюсь с установленным модулем AzureRM. Я вручную установил несколько модулей Az, но PowerShell ISE по-прежнему использует AzureRM, например, при попытке установить sh RunAs подключением ниже,

$RunAsConnection = Get-AutomationConnection -Name AzureRunAsConnection;try {$Login=Add-AzureRmAccount -ServicePrincipal
-TenantId $RunAsConnection.TenantId -ApplicationId $RunAsConnection.ApplicationId -CertificateThumbprint $RunAsConnection.CertificateThumbprint -ErrorAction Stop}catch{Sleep 10;$Login=Add-AzureRmAccount -ServicePrincipal -TenantId $RunAsConnection.TenantId -ApplicationId $RunAsConnection.ApplicationId -CertificateThumbprint $RunAsConnection.CertificateThumbprint};Set-AzureRmContext
-SubscriptionId $RunAsConnection.SubscriptionID

Затем мне нужно изменить его вручную, чтобы код ниже, и он работает.

$RunAsConnection = Get-AutomationConnection -Name AzureRunAsConnection;try {$Login=Add-AzureRmAccount -ServicePrincipal -TenantId $RunAsConnection.TenantId -ApplicationId $RunAsConnection.ApplicationId -CertificateThumbprint $RunAsConnection.CertificateThumbprint -ErrorAction Stop}catch{Sleep 10;$Login=Add-AzAccount -ServicePrincipal -TenantId $RunAsConnection.TenantId -ApplicationId $RunAsConnection.ApplicationId -CertificateThumbprint $RunAsConnection.CertificateThumbprint};Set-AzContext -SubscriptionId $RunAsConnection.SubscriptionID

Как это исправить и как заставить учетную запись автоматизации использовать Az вместо Azure RM?

Спасибо!

1 Ответ

1 голос
/ 09 марта 2020

После импорта Az-модуля , вы можете использовать Connect-AzAccount для аутентификации, а затем напрямую использовать другой Az командлет.

В качестве примера используется Get-AzWebApp (необходимо импортировать Az.Websites модулей, как было упомянуто ранее) для получения azure сведений о веб-приложении в журнале автоматизации:

$connection = Get-AutomationConnection -Name AzureRunAsConnection
$connectionResult = Connect-AzAccount -ServicePrincipal -Tenant $connection.TenantID -ApplicationId $connection.ApplicationID -CertificateThumbprint $connection.CertificateThumbprint

#the cmdlet to get azure web app details
Get-AzWebApp -ResourceGroupName xxx
...