你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
以交互方式登录到 Azure PowerShell
Azure 的交互式登录提供更直观、更灵活的用户体验。 使用 Azure PowerShell 进行交互式登录可让用户直接通过 PowerShell 界面向 Azure 进行身份验证,这对于临时管理任务和需要手动登录的环境(例如使用多重身份验证 (MFA) 的环境)非常有用。 此方法简化了用于脚本测试、学习和动态管理的访问,无需预先配置服务主体或其他非交互身份验证方法。
先决条件
交互式登录
若要以交互方式登录,请使用 Connect-AzAccount
cmdlet。 从 Az PowerShell 模块版本 12.0.0 开始,Windows 系统默认使用 Web 帐户管理器 (WAM),Linux 和 macOS 系统默认使用基于浏览器的登录。
Connect-AzAccount
- 若要了解有关 WAM 的详细信息,请参阅“Web 客户经理 (WAM)”
- 若要了解有关基于浏览器的登录的详细信息,请参阅“基于浏览器的登录”
登录体验
从 Az PowerShell 模块版本 12.0.0 开始,如果你有权访问多个订阅,系统会提示你选择要用于登录的 Azure 订阅,如下方示例所示。
Please select the account you want to login with.
Retrieving subscriptions for the selection...
WARNING: To override which subscription Connect-AzAccount selects by default, use
`Update-AzConfig -DefaultSubscriptionForLogin 00000000-0000-0000-0000-000000000000`.
Go to https://go.microsoft.com/fwlink/?linkid=2200610 for more information.
[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
Select a tenant and subscription: 2
Subscription name Tenant name
------------------------------------ --------------------------
Finance Department Subscription Contoso
[Announcements]
With the new Azure PowerShell 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.
Share your feedback regarding your experience with `Connect-AzAccount` at: https://aka.ms/azloginfeedback
If you encounter any problem, please open an issue at: https://aka.ms/azpsissue
Subscription name Tenant
----------------- ------
Finance Department Subscription Contoso
下次登录时,之前选择的租户和订阅被标记为默认值,其编号旁边带有星号 (*
),并用青色突出显示。 这样,你可以按 Enter 选择默认租户或键入数字以选择其他租户和订阅。
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
'Finance Department Subscription (00000000-0000-0000-0000-000000000000)'.
Select a tenant and subscription (type a number or Enter to accept default): 4
Subscription name Tenant name
------------------------------------ --------------------------
Information Technology Subscription Contoso
默认情况下,命令将针对此订阅运行。 若要更改活动订阅,请使用 Set-AzContext
cmdlet。 有关详细信息,请参阅 Azure PowerShell 上下文对象。
为登录配置默认订阅
若要防止每次以交互方式登录时,系统提示你选择订阅,请使用 Update-AzConfig
cmdlet 设置默认订阅,如以下示例所示。
Update-AzConfig -DefaultSubscriptionForLogin '<subscription name or id>'
禁用新的登录体验
若要禁用新的登录体验,请使用 Update-AzConfig
cmdlet,如以下示例所示。
Update-AzConfig -LoginExperienceV2 Off
当新的登录体验被禁用并且你有权访问多个订阅时,你会登录到 Azure 返回的第一个订阅。 默认情况下,命令将针对此订阅运行。 若要更改会话的活动订阅,请使用 Set-AzContext
cmdlet。 若要更改活动订阅,并使其在同一系统上的会话之间持久保留,请使用 Select-AzContext
cmdlet。
Web 帐户管理器 (WAM)
从 Az PowerShell 模块版本 12.0.0 开始,Azure PowerShell 基于 Windows 的系统的默认登录身份验证方法是 Web 帐户管理器 (WAM)。
WAM 是充当身份验证代理的 Windows 10+ 组件。 身份验证代理是在你的系统上运行的应用程序,用于管理联网帐户的身份验证握手和令牌维护。
WAM 的优点
使用 WAM 具有以下几个好处:
- 安全性增强。 请参阅条件访问:令牌保护(预览版)。
- 支持 Windows Hello、条件访问策略和 FIDO 密钥。
- 简化的单一登录。
- Windows 附带的 Bug 修复和增强功能。
WAM 的限制
在目前的开发阶段,WAM 还存在一些已知的局限性:
WAM 在 Windows 10 及更高版本以及 Windows Server 2019 及更高版本上可用。 在 Linux、macOS 和早期版本的 Windows 上,Azure PowerShell 会自动默认使用基于浏览器的登录。
目前不支持使用 WAM 登录到国家云。
Microsoft 帐户(例如 @outlook.com 或 @live.com))在使用 MFA 时必须指定 Tenant 参数。
Connect-AzAccount -Tenant 00000000-0000-0000-0000-000000000000
禁用 WAM
若要在 Windows 10 及更高版本或 Windows Server 2019 及更高版本上使用基于浏览器的登录,对于 Az 12.0.0 及更高版本,必须为 Azure PowerShell 禁用 WAM。 使用以下命令禁用 WAM 并返回到基于浏览器的登录(Az 12.0.0 版本之前的默认设置)。
Update-AzConfig -EnableLoginByWam $false
基于浏览器的登录
基于浏览器的登录是 Linux、macOS 和 Windows 10 或 Windows Server 2019 之前的 Windows 系统的默认交互式登录方式。 从 Az PowerShell 模块版本 12.0.0 开始,必须为 Azure PowerShell 禁用 WAM,才能在基于 Windows 的系统上使用基于浏览器的登录(Az 12.0.0 之前的默认设置)。
使用 Connect-AzAccount
cmdlet 以交互方式登录时,基于浏览器的登录会打开默认 Web 浏览器以加载 Azure 登录页。 在浏览器中使用 Azure 帐户凭据登录。
如果 Azure PowerShell 可以打开默认浏览器,则它会启动授权代码流,并打开默认浏览器来加载 Azure 登录页面。 否则,它会启动设备代码流,后者将指示你打开位于 microsoft.com/devicelogin 的浏览器页面,并输入 PowerShell 会话中显示的代码。
设备代码身份验证
如果 Web 帐户管理器或 Web 浏览器不可用或无法打开,你可以通过指定 UseDeviceAuthentication 参数来强制执行设备代码流。
Connect-AzAccount -UseDeviceAuthentication
登录到其他租户
如果帐户与多个租户关联,则需要在连接时指定 Tenant 参数才能进行登录。 此参数适用于所有登录方法。 登录时,此参数值可以是租户的 Azure 对象 ID(租户 ID),也可以是租户的完全限定的域名。
Connect-AzAccount -Tenant 00000000-0000-0000-0000-000000000000
登录到国家云
国家云(也称为主权云)是 Azure 的物理隔离实例,其设计目的是确保在地理边界内遵守数据驻留、主权和符合性要求。 对于国家云中的帐户,请在登录时使用 Environment 参数设置环境。 此参数适用于所有登录方法。 例如,如果你的帐户位于 Azure 中国世纪互联区域,请使用以下命令:
Connect-AzAccount -Environment AzureChinaCloud
可以通过运行以下命令获取可用国家云环境的列表:
Get-AzEnvironment | Select-Object -Property Name