Azure云中的Terraform计划失败

igetnqfo  于 2022-11-25  发布在  其他
关注(0)|答案(2)|浏览(160)

我尝试在包含tf文件的文件夹上运行Terraform计划,并收到以下错误:
运行计划时出错:发生1个错误:

  • provider.azurerm:无法列出提供程序注册状态,这可能是由于凭据无效或服务主体没有使用资源管理器API的权限,Azure错误:resources.ProvidersClient#List:响应请求失败:状态代码=403 --原始错误:Autorest/ Azure :服务返回错误。状态=403代码=“AuthorizationFailed”消息=“对象ID为”fe 4ae 955 -2326-4459-ab 20-c 095571 d 729 b“的客户端"fe 4ae 955 -2326-4459-ab 20-c 095571 d 729 b”无权在作用域“/subscriptions/5078 eb 0 f-b56 d-”上执行操作“Microsoft.Resources/subscriptions/providers/read”4367-a6 eb-7 b7 d932 a6 a5 a“”的一个字母。
ar7v8xwq

ar7v8xwq1#

这里发生的事情是,您的服务主体在您的订阅范围内没有特定的权限(Microsoft.Resources/subscriptions/providers/read),要么给予他这样做的权限,要么给他一些预定义的角色,如贡献者\所有者。
请注意,贡献者\所有者可能有点矫枉过正,但这取决于您的目标。这绝对是一个更简单的方法,至少可以测试它是否有效,当您确定权限是问题时,您可以通过创建一个自定义角色来缩小权限。
https://learn.microsoft.com/en-us/azure/active-directory/role-based-access-control-configure

g9icjywg

g9icjywg2#

迟做总比不做好(这对我来说解决了完全相同的问题),向提供程序块添加一个option

provider "azurerm" {
  features {}
  skip_provider_registration = true
}

相关问题