Add-AzureRmAccount:序列不包含任何元素(不适用于Gmail帐户)



>我用我的个人电子邮件ID创建了一个'免费试用'帐户,这是一个Gmail ID。我收到错误:

Add-AzureRmAccount : 序列不包含任何元素 行:1 字符:1 + Add-AzureRmAccount -Credential $cred + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (:) [Add-AzureRmAccount], AadAuthenticationFailedException + FullQualifiedErrorId : Microsoft.Azure.Commands.Profile.AddAzureRMAccountCommand

我正在运行的代码是

$username = "abc@gmail.com"
$password = "something"
$secpass = $password | ConvertTo-SecureString -AsPlainText -Force
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $secpass
Add-AzureRmAccount -Credential $cred

是否有某些类型的帐户/订阅应该像这样登录?

Windows Live ID 凭据不能用于非交互式登录。此错误消息被描述为此问题的一部分,该问题已引发,因为它需要改进。

我认为你要么需要使用Login-AzureRmAccount以交互方式登录,要么需要创建用于登录的服务主体,根据本指南:https://learn.microsoft.com/en-us/powershell/azure/authenticate-azureps?view=azurermps-4.2.0

使用服务主体登录

服务主体提供了一种创建非交互式的方法 可用于操作资源的帐户。服务主体 类似于可以使用 Azure Active 应用规则的用户帐户 目录。通过向服务授予所需的最低权限 校长,您可以确保您的自动化脚本更加出色 安全。

  1. 如果还没有服务主体,请创建一个。

  2. 使用服务主体登录:

    Login-AzureRmAccount -ServicePrincipal -ApplicationId  "http://my-app" -Credential $pscredential -TenantId $tenantid
    

最新更新