#azure #azure-powershell
#azure #azure-powershell
Вопрос:
Мне нужно использовать Powershell для некоторых автоматизированных заданий Jenkins. Для выполнения работы мне нужно пройти аутентификацию в качестве участника-службы неинтерактивным способом.
В командной строке Azure это может быть выполнено неинтерактивно с помощью следующей команды:
az login --service-principal -u "$client_id" -p "$client_secret" -t "$tenant_id"
Однако выполнить это с помощью Connect-AzAccount
командлета для Powershell оказывается непросто. Можно ли каким-либо образом достичь того же результата, что и выше, с помощью командлета Powershell? Все параметры, описанные здесь, кажутся только интерактивными.
Буду признателен за любую помощь.
Ответ №1:
Чтобы использовать 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
Комментарии:
1. возможно ли сохранить пароль где-нибудь в хранилище вместо того, чтобы сохранять его локально, поскольку я не хочу сохранять пароль на своем локальном компьютере для входа в azure