从Azure CLI填充客户端ID时出错:未找到授权令牌



当我运行Terraform Plan时,我得到以下错误信息:

构建AzureRM客户端出错:从Azure CLI:未找到授权令牌

我用'az login'命令登录,用'az account set——subscription'命令设置正确的订阅。

我看到了其他帖子,并尝试运行'az帐户get-access-token',它返回accessToken没有任何错误。

terraform {
# backend "azurerm" {
#   key = "terraform.tfstate"
# }
required_version = ">= 0.12"
}
provider "azurerm" {

version                    = "= 1.31.0"
skip_provider_registration = true
}

下面的Terraform和Az cli版本

$ az --version azure-cli                         2.38.0

$ terraform --version
Terraform v0.12.31
+ provider.azurerm v1.31.0

构建AzureRM客户端错误:从Azure CLI填充客户端ID错误:没有发现授权令牌

此错误是由于Terraform azurerm提供程序和CLI的版本导致的。验证由Azure从ADAL切换到MSAL。如果您正在使用最新版本的Azure CLI和旧版本的Terraform的Azurerm,这可能会导致身份验证失败和错误。

要解决此问题,请使用升级版本的azure cli和terrform azurerm提供程序。

terraform {
required_providers {
azurerm = {
source  = "hashicorp/azurerm"
version = "=3.0.0"
}
}
}
# Configure the Microsoft Azure Provider
provider "azurerm" {
features {}
}

Terraform azurerm version link

类似的错误也解决了,你可以检查这个SO线程作者:Ansuman Bal。

最新更新