使用带 2FA 的 Microsoft Azure 从命令行切换租户

Switch tenants from the command line using Microsoft Azure with 2FA

我正在尝试从我的 Windows 10 计算机上的命令行界面切换租户。

提供的答案 here 似乎根本不起作用

我也试过以下方法

az logout 
az login --use-device-code (because of 2FA) 
az login --username [my user name] -t [tenant id] 
az login --tenant [tenant id] 
az login --tenant [tenant name] 
az account set --subscription [subscription id] 

所有这些命令都已成功完成,但是,当我执行 运行 Get-AzSubscription 命令时,我仍然看到我使用的租户的 tenentID 与我要登录的租户不同。

在 Windows 10 PC 上开发云原生应用程序时,如何使用带有 2FA 的 Microsoft Azure 从命令行界面成功切换租户?

您不应使用 Get-AzSubscription 获取订阅信息。

Get-AzSubscription 在 Az.Accounts Powershell 模块中。

但是 az login 在 Azure CLI 模块中。使用 az login 切换租户不会影响 Get-AzSubscription.

的结果

使用az login --allow-no-subscriptions --tenant xxxx.onmicrosoft.com登录后即可看到租户信息。

您还可以使用 az account show 获取订阅的详细信息和租户信息。