1

我想在 PowerShell 中使用 Az Module 命令创建 AzureProfile.json 文件,以便在我想登录 Azure 以启动\停止我的 VM 的任何时候导入 json 文件。

下面是我用来创建它的命令\脚本,但它给了我错误,如屏幕截图所示。

在此处输入图像描述

我也尝试使用下面的代码,但它给出了同样的错误。

Connect-AzAccount -UseDeviceAuthentication

Save-AzProfile -path "$PSScriptRoot\AzureProfile.json"

警告:无法获取租户“组织”Connect-AzAccount 的令牌:DeviceCodeCredential 身份验证失败:重试 4 次后失败。

4

2 回答 2

1

从错误消息来看,您的帐户身份验证在之后出现的浏览器弹出窗口中似乎失败了Login-AzAccount

我运行了第一组命令,它运行成功。

电源外壳:

在此处输入图像描述

创建的文件:

在此处输入图像描述

请注意,我的PowerShell 版本5.7.0.18831.

于 2021-01-19T09:44:54.367 回答
1

你已经尝试了两个:

  • 连接-AzAccount-UseDeviceAuthentication
  • 登录-AzAccount

交互式和非交互式登录模式。

尝试与 azure 通信时发生错误。我怀疑这可能是机器级别或网络级别(代理/防火墙)的问题

在此处输入图像描述

当 Microsoft 服务存在连接问题时,通常会发生上述问题(在我这里可重现) - 被代理 /firewall/GPO 等阻止...

要进行快速测试,您可以运行以下 PowerShell 命令:

Invoke-WebRequest -Uri "https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode" -Body "client_id=1950a258-227b-4e31-a9cf-717495945fc2&scope=https%3A%2F%2Fmanagement.core.windows.net%2F%2F.default+offline_access+profile+openid" -Method Post

示例成功响应:

在此处输入图像描述

为什么上面的命令?

https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode当您使用Connect-AzAccount -UseDeviceAuthenticationpowershell时,会达到上述端点。

在此处输入图像描述

如果您遇到超时/名称无法解决的问题 - 问题出在网络/机器配置上。

于 2021-01-19T10:16:37.683 回答