AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 745104
Accepted
Reaces
Reaces
Asked: 2015-12-25 00:25:09 +0800 CST2015-12-25 00:25:09 +0800 CST 2015-12-25 00:25:09 +0800 CST

Azure Cmdlet Add-AzureRmAccount 无法通过公司线路工作

  • 772

我目前正在学习如何使用 powershell 资源管理 cmdlet 创建 azure 环境。
经典的工作方式没有问题,我可以使用Add-AzureAccount它,它可以让我访问我的订阅。

但是,使用新的资源管理器 cmdlet,当我使用时,Add-AzureRmAccount我会遇到两个错误之一。

当使用存储的凭据$Cred = Get-Credentials,然后使用登录时,Add-AzureRmAccount -Credential $cred我收到以下错误:

访问 ws 元数据交换失败。

使用登录提示时。这意味着我只需输入Add-AzureRmAccount,它就会将我转发到我公司的 SSO 页面。我在其中成功登录。我收到以下错误:

发送请求时出错。

当我尝试在家中使用 cmdlet 时,使用 vpn 连接我之前使用的同一台笔记本电脑。我可以使用Add-AzureRmAccount并遵循登录提示进行完美连接。使用存储的$credentials 仍然失败,并出现元数据交换错误。

我假设存储凭据方法失败,因为它无法在没有交互式提示的情况下重定向到 SSO。
但是我不确定是什么可能导致交互式登录失败,因为我可以清楚地到达 SSO,并且Add-AzureAccountcmdlet 在同一台机器上工作。

可能导致此问题Add-AzureAccount的 cmdlet 和cmdlet之间有什么区别?Add-AzureRmAccount

更新:

完整的堆栈跟踪错误是:

Message        : An error occurred while sending the request.
Data           : {}
InnerException : System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required.
                    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
                    at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
TargetSite     : Void ThrowForNonSuccess(System.Threading.Tasks.Task)
StackTrace     :    at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
                    at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
                    at Microsoft.Azure.Subscriptions.TenantOperationsExtensions.List(ITenantOperations operations)
                    at Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient.ListAccountTenants(AzureAccount
                 account, AzureEnvironment environment, SecureString password, ShowDialog promptBehavior)
                    at Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient.Login(AzureAccount account,
                 AzureEnvironment environment, String tenantId, String subscriptionId, String subscriptionName,
                 SecureString password)
                    at Microsoft.Azure.Commands.Profile.AddAzureRMAccountCommand.ProcessRecord()
                    at System.Management.Automation.Cmdlet.DoProcessRecord()
                    at System.Management.Automation.CommandProcessor.ProcessRecord()
HelpLink       :
Source         : Microsoft.Threading.Tasks
HResult        : -2146233088

看起来我的错误与防火墙有关。
我不确定为什么一个命令 ( Add-AzureRmAccount) 会遇到错误,而旧版本 ( Add-AzureAccount) 不会。

powershell
  • 1 1 个回答
  • 7334 Views

1 个回答

  • Voted
  1. Best Answer
    Reaces
    2015-12-31T03:02:08+08:002015-12-31T03:02:08+08:00

    根据Colyn1337关于差异可能是基于 Web 的 API 的评论。
    并且身份验证错误与代理服务器未正确身份验证有关。

    一个关于stackoverflow的类似问题提供了解决方案,其中一个不同的、也是基于web的api cmdlet有一个类似的错误。
    如答案中所述,我只需在脚本开头添加以下代码:

    [System.Net.WebRequest]::DefaultWebProxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
    
    • 1

相关问题

  • 资源锁和电源外壳

  • 脚本 - 如何断开远程桌面会话?

  • 如何限制向通讯组发送到外部地址?

  • Powershell对值与数组的作用不同?

  • Windows Powershell Vim 键绑定

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve