Автоматизация аутентификации в Azure в качестве участника службы с помощью Windows Powershell - PullRequest
0 голосов
/ 09 апреля 2019

Мне нужно использовать Powershell для некоторых автоматизированных заданий Jenkins. Для выполнения этой работы мне необходимо пройти аутентификацию в качестве участника службы неинтерактивным способом.

С помощью интерфейса командной строки Azure это можно сделать неинтерактивно, используя следующую команду:

az login --service-principal -u "$client_id" -p "$client_secret" -t "$tenant_id"

Однако выполнить это с помощью командлета Connect-AzAccount для Powershell довольно сложно. Можно ли в любом случае добиться того же результата, что и выше, с помощью командлета Powershell? Все опции , описанные здесь , кажутся только интерактивными.

Любая помощь будет принята с благодарностью.

1 Ответ

2 голосов
/ 09 апреля 2019

Чтобы использовать Connect-AzAccount для входа в систему не в интерактивном режиме, попробуйте команду, как показано ниже, strong password - ваш клиентский секрет, он отлично работает на моей стороне.

$azureAplicationId ="Azure AD Application Id"
$azureTenantId= "Your Tenant Id"
$azurePassword = ConvertTo-SecureString "strong password" -AsPlainText -Force
$psCred = New-Object System.Management.Automation.PSCredential($azureAplicationId , $azurePassword)
Connect-AzAccount -Credential $psCred -TenantId $azureTenantId  -ServicePrincipal 

enter image description here

...