首页 > 解决方案 > 如何不创建 azurerm_mssql_database_extended_auditing_policy

问题描述

我正在尝试使用 terraform 部署我的基础设施。我有一个 mssql 服务器和数据库并使用 azurerm 2.32

部署 mssql 时出现以下错误

Error: issuing create/update request for SQL Server "itan-mssql-server" Blob Auditing Policies(Resource Group "itan-west-europe-resource-group"): sql.ExtendedServerBlobAuditingPoliciesClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="DataSecurityInvalidUserSuppliedParameter" Message="Invalid parameter 'storageEndpoint'. Value should be a blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net)."

我已经试过了

  1. 在数据库级别定义extended_auditing_policy - 失败
  2. 在服务器级别定义extended_auditing_policy - 失败
  3. 在根级别定义 azurerm_mssql_database_extended_auditing_policy - 失败
  4. 留空 extended_auditing_policy - 失败

全局定义级别如下所示(来自 terraform 文档的 ^C^V 对我的项目进行了调整):


resource "azurerm_mssql_database_extended_auditing_policy" "db-policy" {
  database_id = azurerm_mssql_database.itan-mssql-database.id
  storage_endpoint = azurerm_storage_account.itan_storage_account.primary_blob_endpoint
  storage_account_access_key = azurerm_storage_account.itan_storage_account.primary_access_key
  storage_account_access_key_is_secondary = false
  retention_in_days = 1

  depends_on = [
    azurerm_mssql_database.itan-mssql-database,
    azurerm_storage_account.itan_storage_account]
}

我正在寻找两种可能的解决方案之一:

谢谢!亚雷克

标签: azure-devopsterraformdevopsterraform-provider-azure

解决方案


这是由SQL Extended Auditing Settings API 中的重大更改引起的。请在 terraform provider 中检查这个问题。

作为一种解决方法,您可以尝试从 terraform调用ARM 模板。但是,我不确定他们是否在幕后使用相同或不同的 API。


推荐阅读