Поделиться через


Войдите в Azure в интерактивном режиме с помощью Azure CLI

Интерактивные имена входа в Azure обеспечивают более интуитивно понятный и гибкий интерфейс пользователя. С помощью Azure CLI можно выполнить проверку подлинности в Azure непосредственно с помощью команды az login . Эта команда полезна для задач ad-hoc управления и для сред, требующих ручного входа, таких как сценарии с многофакторной проверкой подлинности (MFA). Этот метод упрощает доступ к тестированию скриптов, обучению и оперативному управлению без необходимости предварительной настройки учетных записей служб или других неинтерактивных методов аутентификации.

Это важно

Начиная с сентября 2025 г. корпорация Майкрософт потребует многофакторной проверки подлинности (MFA) для Azure CLI и других средств командной строки. Это изменение применяется только к идентификациям пользователей Microsoft Entra ID и не влияет на удостоверения рабочих процессов, такие как учетные записи служб или управляемые удостоверения.

Если вы используете az login с именем пользователя и паролем для аутентификации скриптов или автоматизированных рабочих процессов, сейчас пришло время перейти на учетную запись рабочей нагрузки. Для получения дополнительной информации, см. статью «Влияние многофакторной аутентификации на Azure CLI в сценариях автоматизации».

Предпосылки

Интерактивный вход

Для интерактивного входа используйте команду az login . Начиная с Azure CLI версии 2.61.0, Azure CLI использует Менеджер веб-учетных записей (WAM) в Windows и вход через браузер в Linux и macOS по умолчанию.

az login

Селектор подписки

Начиная с Azure CLI версии 2.61.0, если у вас есть доступ к нескольким подпискам, вам будет предложено выбрать подписку Azure во время входа, как показано в следующем примере.

Retrieving subscriptions for the selection...

[Tenant and subscription selection]

No    Subscription name                     Subscription ID                           Tenant name
----  ------------------------------------  ----------------------------------------  --------------
[1]   Facility Services Subscription        00000000-0000-0000-0000-000000000000      Contoso
[2]   Finance Department Subscription       00000000-0000-0000-0000-000000000000      Contoso
[3]   Human Resources Subscription          00000000-0000-0000-0000-000000000000      Contoso
[4] * Information Technology Subscription   00000000-0000-0000-0000-000000000000      Contoso

The default is marked with an *; the default tenant is 'Contoso' and subscription is
'Information Technology Subscription' (00000000-0000-0000-0000-000000000000).

Select a subscription and tenant (Type a number or Enter for no changes): 2

Tenant: Contoso
Subscription: Finance Department Subscription (00000000-0000-0000-0000-000000000000)

[Announcements] With the new Azure CLI login experience, you can select the subscription you want to
use more easily. Learn more about it and its configuration at
https://go.microsoft.com/fwlink/?linkid=2271236

If you encounter any problems, open an issue at https://aka.ms/azclibug

При следующем входе в систему ранее выбранные арендатор и подписка помечаются по умолчанию со звездочкой (*) рядом с их номером. Эта маркировка позволяет нажать клавишу ВВОД, чтобы выбрать подписку по умолчанию.

Команды по умолчанию выполняются на выбранной подписке. Используйте az account set для изменения подписки из командной строки в любое время. Дополнительные сведения см. в статье "Управление подписками Azure с помощью Azure CLI".

Ниже приведены некоторые рекомендации по селектору подписок, которые следует учитывать:

  • Селектор подписки доступен только в 64-разрядной версии Windows, Linux или macOS.
  • Селектор подписки доступен только при использовании az login команды.
  • Вам не предлагается выбрать подписку при входе в систему с помощью учетной записи службы или управляемой учетной записи.

Если вы хотите отключить функцию селектора подписок, задайте для свойства конфигурации core.login_experience_v2 значение off.

az config set core.login_experience_v2=off
az login

Вход с помощью диспетчера веб-учетных записей (WAM) в Windows

Начиная с версии Azure CLI 2.61.0, диспетчер веб-учетных записей (WAM) — это метод проверки подлинности по умолчанию в Windows. WAM — это компонент Windows 10+, который выступает в качестве брокера проверки подлинности. Брокер проверки подлинности — это приложение, работающее на компьютере пользователя. Он управляет процессами аутентификации и поддержкой токенов для подключенных учетных записей.

Использование WAM имеет несколько преимуществ:

Если возникла проблема и вы хотите вернуться к предыдущему методу проверки подлинности на основе браузера, задайте для свойства конфигурации core.enable_broker_on_windows значение false.

az account clear
az config set core.enable_broker_on_windows=false
az login

WAM доступен в Windows 10 и более поздних версиях, а также в Windows Server 2019 и более поздних версий.

Вход с помощью браузера

Azure CLI по умолчанию использует метод проверки подлинности на основе браузера, если одно из следующих условий имеет значение true:

  • Операционная система (ОС) — Linux, macOS или ОС Windows ранее, чем Windows 10 или Windows Server 2019.
  • Для core.enable_broker_on_windows свойства конфигурации задано значение false.

Чтобы войти в браузер, выполните следующие действия.

  1. Выполните команду az login.

    az login
    

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

    В противном случае он инициирует поток кода устройства и указывает вам открыть страницу в браузере по адресу https://aka.ms/devicelogin. Затем введите код, отображаемый в терминале.

    Если веб-браузер недоступен или не удается открыть веб-браузер, вы можете принудительно применить поток кода устройства с помощью az login --use-device-code.

  2. Выполните вход в браузере с помощью учетных данных.

Вход с учетными данными в командной строке

Укажите учетные данные пользователя Azure в командной строке. Этот метод проверки подлинности следует использовать только при интерактивной работе с Azure CLI. Для приложений рабочего уровня используйте служебную учетную запись или управляемое удостоверение.

Этот подход не работает с учетными записями Майкрософт или учетными записями, имеющими многофакторную проверку подлинности (MFA). Вы получаете сообщение об интерактивной проверке подлинности .

az login --user <username> --password <password>

Это важно

Чтобы не отображать пароль в терминале при интерактивном использовании az login , используйте read -s команду в Bash.

read -sp "Azure password: " AZ_PASS && echo && az login -u <username> -p $AZ_PASS

В PowerShell используйте командлет Get-Credential.

$AzCred = Get-Credential -UserName <username>
az login -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password

Вход с помощью другого клиента

Вы можете выбрать арендатора для входа с помощью аргумента --tenant. Значение этого аргумента может быть доменом или идентификатором .onmicrosoft.com объекта Azure для клиента. Интерактивные методы входа и методы входа через командную строку работают с --tenant.

В определённых средах и начиная с версии Azure CLI 2.61.0, сначала необходимо отключить селектор подписки, установив для свойства конфигурации core.login_experience_v2 значение off.

# disable the subscription selector (v. 2.61.0 and up)
az config set core.login_experience_v2=off

# login with a tenant ID
az login --tenant 00000000-0000-0000-0000-000000000000

Чтобы повторно создать селектор подписки, выполните команду az config set core.login_experience_v2=on. Дополнительные сведения о селекторе подписки см. в разделе интерактивного входа .

После входа в систему, если вы хотите изменить активного арендатора, см. : как изменить активного арендатора.

Вход с помощью --scope

az login --scope https://management.core.windows.net//.default

Выйти

Чтобы выйти из Azure, используйте команду az logout .

az logout

Очистка кэша подписки

Чтобы обновить список подписок, используйте команду az account clear . Чтобы просмотреть обновленный список, необходимо войти еще раз.

az account clear

az login

Очистка кэша подписок технически не совпадает с процессом выхода из Azure. При очистке кэша подписок, однако, команды Azure CLI, включая az account set, не могут выполняться, пока не выполнен повторный вход.

Маркеры обновления

При входе с помощью учетной записи пользователя Azure CLI создает и сохраняет маркер обновления проверки подлинности. Так как маркеры доступа действительны только в течение короткого периода времени, маркер обновления выдается одновременно с маркером доступа. При необходимости клиентское приложение может обменять этот токен обновления на новый токен доступа. Дополнительную информацию о сроке действия и истечении токенов см. в разделе Платформа удостоверений Microsoft.

Используйте команду az account get-access-token для получения токена доступа:

# get access token for the active subscription
az account get-access-token

# get access token for a specific subscription
az account get-access-token --subscription "<subscription ID or name>"

Ниже приведены дополнительные сведения о датах окончания срока действия маркера доступа:

  • Даты окончания срока действия обновляются в формате, поддерживаемом Azure CLI на основе MSAL.
  • Начиная с версии Azure CLI 2.54.0, az account get-access-token возвращает свойство expires_on вместе со свойством expiresOn, указывающим время истечения срока действия токена.
  • Свойство expires_on представляет временную метку POSIX, а свойство expiresOn представляет локальную дату и время.
  • Свойство expiresOn не отображает "перехода", когда заканчивается летнее время. Это может привести к проблемам в странах или регионах, где используется летнее время. Для получения дополнительной информации о "складке" см. в PEP 495 — разрешение неоднозначностей местного времени.
  • Для подчиненных приложений рекомендуется использовать expires_on свойство, так как он использует универсальный код времени (UTC).

Пример выходных данных:

{
  "accessToken": "...",
  "expiresOn": "2023-10-31 21:59:10.000000",
  "expires_on": 1698760750,
  "subscription": "...",
  "tenant": "...",
  "tokenType": "Bearer"
}

Устранение неполадок

Подключение для этого сайта не безопасно

Если браузер по умолчанию — Microsoft Edge, при попытке входа в Azure в интерактивном az loginрежиме может возникнуть следующая ошибка: "Подключение для этого сайта не безопасно." Чтобы устранить эту проблему, посетите edge://net-internals/#hsts в Microsoft Edge. Добавьте localhost в раздел "Удалить политику безопасности домена" и нажмите кнопку "Удалить".

Требуется интерактивная проверка подлинности

Это сообщение появляется при использовании удостоверения пользователя для проверки подлинности в Azure, и требуется многофакторная проверка подлинности. Решение — использовать идентификатор рабочей нагрузки, например учетную запись службы или управляемое удостоверение для проверки подлинности в Azure.

Сбой проверки подлинности у арендатора

Эта ошибка возникает, когда одно удостоверение пользователя Entra принадлежит нескольким клиентам Azure. Azure CLI выполняет циклы по арендаторам, к которым у вас есть доступ, и пытается пройти проверку подлинности. Чтобы войти в систему с выбранным арендатором --tenant, используйте параметр. Дополнительные сведения см. в разделе "Вход с помощью другого клиента".

Дальнейшие шаги