Terraform配置Azure存储账户时default_to_oauth_authentication参数报错
解决Terraform Azure存储账户
default_to_oauth_authentication参数不支持的问题 问题描述
我使用Terraform配置Azure存储账户时,根据官方文档说明,default_to_oauth_authentication参数可强制启用Active Directory/Entra ID认证,但VS Code代码校验工具和terraform plan均提示该参数不被支持。
环境信息
- Terraform v1.9.7 on darwin_arm64
- AzureRM提供商:registry.terraform.io/hashicorp/azurerm v3.0.0
尝试的配置代码
resource "azurerm_storage_account" "example" { # 其他配置项... default_to_oauth_authentication = true }
报错信息
╷ │ Error: Unsupported argument │ │ on terraform.tf line 10, in resource "azurerm_storage_account" "example": │ 10: default_to_oauth_authentication = true │ │ An argument named "default_to_oauth_authentication" is not expected here. ╵
原因分析
default_to_oauth_authentication是AzureRM提供商v3.7.0及以上版本才新增的参数特性,你当前使用的v3.0.0版本发布时间早于该参数的推出时间,因此无法识别该配置项。
解决方案
- 升级AzureRM提供商版本
修改Terraform配置文件(通常为versions.tf)中的提供商版本约束,指定v3.7.0或更高版本:
terraform { required_providers { azurerm = { source = "hashicorp/azurerm" version = ">= 3.7.0" # 也可指定稳定的具体版本如3.80.0 } } }
- 执行升级初始化
在终端运行以下命令,让Terraform下载并启用新版本的AzureRM提供商:
terraform init -upgrade
- 重新验证配置
再次执行terraform plan,此时default_to_oauth_authentication参数即可被正常识别。
内容的提问来源于stack exchange,提问作者MacBetty
相关产品推荐
相关产品推荐

