Atualmente estou aprendendo a criar ambientes azuis usando cmdlets do PowerShell Resource Management.
A maneira clássica de trabalhar não teve problemas, eu poderia usar Add-AzureAccount
e permitiria que eu acessasse minhas assinaturas.
No entanto, com os novos cmdlets do Resource Manager, quando uso Add-AzureRmAccount
, obtenho um dos dois erros.
Ao usar credenciais armazenadas usando $Cred = Get-Credentials
e, em seguida, efetuando login usando Add-AzureRmAccount -Credential $cred
, recebo o seguinte erro:
Accessing ws metadata exchange failed.
Ao usar o prompt de login. O que significa que eu apenas digito Add-AzureRmAccount
e me encaminha para a página SSO da minha empresa. Em que eu logar com sucesso. Eu recebo o seguinte erro:
An error occurred while sending the request.
Quando tentei usar o cmdlet de casa, usando o vpn para me conectar ao mesmo laptop que eu estava usando antes. Posso me conectar perfeitamente usando Add-AzureRmAccount
e seguindo os prompts de logon. O uso do percentual $cred
armazenado ainda falha com o erro de troca de metadados.
Estou assumindo que o método de credenciais armazenadas está falhando porque não pode redirecionar para o SSO sem o prompt interativo.
No entanto, não sei ao certo o que pode estar causando falha no logon interativo, pois posso alcançar claramente o SSO, e o cmdlet Add-AzureAccount
funciona na mesma máquina.
Qual é a diferença entre os cmdlets Add-AzureAccount
e Add-AzureRmAccount
que podem estar causando isso?
ATUALIZAÇÃO:
O erro de rastreamento completo da pilha é:
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
Parece que meu erro está relacionado ao firewall.
Não sei por que o único comando ( Add-AzureRmAccount
) encontra o erro, enquanto a versão anterior ( Add-AzureAccount
) não o faz.