通过terraform将静态网站部署到Azure-但是由于权限错误而无法访问刀片服务器吗?

时间:2019-09-17 05:44:05

标签: azure-devops terraform terraform-provider-azure

我在Azure Devops中进行了非常基本的terraform部署,该部署定义了存储桶和静态网站。但是,当我进入Azure门户时,静态网站刀片向我显示“访问被拒绝。您没有访问权限”。不过,存储分区的所有其他方面都可用,因此这似乎不是一般的权限问题。

Terraform不支持​​AZ RM中的配置,因此我正在使用local-exec模式来配置静态网站。

我的terraform在DevOps中运行,具有系统连接并作为服务用户运行。但是,我也尝试过破坏存储桶并以用户身份重新运行terraform-这没有任何区别。

我尝试将自己添加到存储桶的IAM中,这也没有任何区别。

存储桶的定义是:

  name                     = "website"
  resource_group_name      = "${azurerm_resource_group.prod.name}"
  location                 = var.region
  account_kind             = "StorageV2"
  account_tier             = "Standard"
  account_replication_type = "LRS"

  provisioner "local-exec" {
    # https://github.com/terraform-providers/terraform-provider-azurerm/issues/1903
    command = "az storage blob service-properties update --account-name ${azurerm_storage_account.website-storage.name} --static-website --index-document index.html --404-document 404.html"
  }
}

我希望能够访问门户网站内的静态网站刀片-是否有某些原因使它不起作用?

1 个答案:

答案 0 :(得分:1)

我还没有发生这种情况的原因。我之前曾尝试删除存储并重新创建,但是我通过门户删除了存储。今天晚上,我尝试在Terraform中重命名资源,这迫使它销毁并重新创建,并且有效。

我以前曾经弄过同名的StorageV1资源/容器/ blob定义;可能是Azure中存在某种“不可见”的东西,这导致了这种怪异...