Partilhar via


Microsoft.Sql servers/databases/securityAlertPolicies 2022-02-01-preview

Definição de recursos do bíceps

O tipo de recurso servers/databases/securityAlertPolicies pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Sql/servers/databases/securityAlertPolicies, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.Sql/servers/databases/securityAlertPolicies@2022-02-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    disabledAlerts: [
      'string'
    ]
    emailAccountAdmins: bool
    emailAddresses: [
      'string'
    ]
    retentionDays: int
    state: 'string'
    storageAccountAccessKey: 'string'
    storageEndpoint: 'string'
  }
}

Valores de propriedade

Microsoft.Sql/servers/databases/securityAlertPolicies

Name Description Value
name O nome do recurso 'default' (obrigatório)
elemento principal No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte recurso filho fora do recurso pai.
Nome simbólico para recurso do tipo: servidores/bancos de dados
properties Propriedades do recurso. SecurityAlertsPolicyProperties

SecurityAlertsPolicyProperties

Name Description Value
disabledAlerts Especifica uma matriz de alertas que estão desabilitados. Os valores permitidos são: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action Brute_Force string[]
emailAccountAdmins Especifica que o alerta é enviado aos administradores de conta. bool
emailAddresses Especifica uma matriz de endereços de email para os quais o alerta é enviado. string[]
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria de Deteção de Ameaças. int
state Especifica o estado da política, se ela está habilitada ou desabilitada ou se uma política ainda não foi aplicada no banco de dados específico. 'Disabled'
'Ativado' (obrigatório)
storageAccountAccessKey Especifica a chave identificador da conta de armazenamento de auditoria de Deteção de Ameaças. cadeia (de caracteres)
storageEndpoint Especifica o ponto de extremidade de armazenamento de blob (por exemplo, https://MyAccount.blob.core.windows.net). Esse armazenamento de blob armazenará todos os logs de auditoria de Deteção de Ameaças. cadeia (de caracteres)

Definição de recurso de modelo ARM

O tipo de recurso servers/databases/securityAlertPolicies pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Sql/servers/databases/securityAlertPolicies, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.Sql/servers/databases/securityAlertPolicies",
  "apiVersion": "2022-02-01-preview",
  "name": "string",
  "properties": {
    "disabledAlerts": [ "string" ],
    "emailAccountAdmins": "bool",
    "emailAddresses": [ "string" ],
    "retentionDays": "int",
    "state": "string",
    "storageAccountAccessKey": "string",
    "storageEndpoint": "string"
  }
}

Valores de propriedade

Microsoft.Sql/servers/databases/securityAlertPolicies

Name Description Value
apiVersion A versão api '2022-02-01-preview'
name O nome do recurso 'default' (obrigatório)
properties Propriedades do recurso. SecurityAlertsPolicyProperties
tipo O tipo de recurso 'Microsoft.Sql/servers/databases/securityAlertPolicies'

SecurityAlertsPolicyProperties

Name Description Value
disabledAlerts Especifica uma matriz de alertas que estão desabilitados. Os valores permitidos são: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action Brute_Force string[]
emailAccountAdmins Especifica que o alerta é enviado aos administradores de conta. bool
emailAddresses Especifica uma matriz de endereços de email para os quais o alerta é enviado. string[]
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria de Deteção de Ameaças. int
state Especifica o estado da política, se ela está habilitada ou desabilitada ou se uma política ainda não foi aplicada no banco de dados específico. 'Disabled'
'Ativado' (obrigatório)
storageAccountAccessKey Especifica a chave identificador da conta de armazenamento de auditoria de Deteção de Ameaças. cadeia (de caracteres)
storageEndpoint Especifica o ponto de extremidade de armazenamento de blob (por exemplo, https://MyAccount.blob.core.windows.net). Esse armazenamento de blob armazenará todos os logs de auditoria de Deteção de Ameaças. cadeia (de caracteres)

Exemplos de uso

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso servers/databases/securityAlertPolicies pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Sql/servers/databases/securityAlertPolicies, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/databases/securityAlertPolicies@2022-02-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      disabledAlerts = [
        "string"
      ]
      emailAccountAdmins = bool
      emailAddresses = [
        "string"
      ]
      retentionDays = int
      state = "string"
      storageAccountAccessKey = "string"
      storageEndpoint = "string"
    }
  }
}

Valores de propriedade

Microsoft.Sql/servers/databases/securityAlertPolicies

Name Description Value
name O nome do recurso 'default' (obrigatório)
parent_id A ID do recurso que é o pai para este recurso. ID para recurso do tipo: servidores/bancos de dados
properties Propriedades do recurso. SecurityAlertsPolicyProperties
tipo O tipo de recurso "Microsoft.Sql/servers/databases/securityAlertPolicies@2022-02-01-preview"

SecurityAlertsPolicyProperties

Name Description Value
disabledAlerts Especifica uma matriz de alertas que estão desabilitados. Os valores permitidos são: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action Brute_Force string[]
emailAccountAdmins Especifica que o alerta é enviado aos administradores de conta. bool
emailAddresses Especifica uma matriz de endereços de email para os quais o alerta é enviado. string[]
retentionDays Especifica o número de dias a serem mantidos nos logs de auditoria de Deteção de Ameaças. int
state Especifica o estado da política, se ela está habilitada ou desabilitada ou se uma política ainda não foi aplicada no banco de dados específico. 'Disabled'
'Ativado' (obrigatório)
storageAccountAccessKey Especifica a chave identificador da conta de armazenamento de auditoria de Deteção de Ameaças. cadeia (de caracteres)
storageEndpoint Especifica o ponto de extremidade de armazenamento de blob (por exemplo, https://MyAccount.blob.core.windows.net). Esse armazenamento de blob armazenará todos os logs de auditoria de Deteção de Ameaças. cadeia (de caracteres)

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação de diretivas de alerta de segurança de bancos de dados do SQL Server.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
    azurerm = {
      source = "hashicorp/azurerm"
    }
  }
}

provider "azurerm" {
  features {
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

variable "administrator_login_password" {
  type        = string
  description = "The administrator login password for the SQL server"
  sensitive   = true
}

data "azurerm_client_config" "current" {
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2021-02-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_id" "publicMaintenanceConfiguration" {
  type      = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
  parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  name      = "SQL_Default"
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Sql/servers/databases@2021-02-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      autoPauseDelay                   = 0
      createMode                       = "Default"
      elasticPoolId                    = ""
      highAvailabilityReplicaCount     = 0
      isLedgerOn                       = false
      licenseType                      = "LicenseIncluded"
      maintenanceConfigurationId       = data.azapi_resource_id.publicMaintenanceConfiguration.id
      minCapacity                      = 0
      readScale                        = "Disabled"
      requestedBackupStorageRedundancy = "Geo"
      zoneRedundant                    = false
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_update_resource" "securityAlertPolicy" {
  type      = "Microsoft.Sql/servers/databases/securityAlertPolicies@2020-11-01-preview"
  parent_id = azapi_resource.database.id
  name      = "default"
  body = {
    properties = {
      state = "Disabled"
    }
  }
  response_export_values = ["*"]
}

Um exemplo básico de implantação de diretivas de alerta de segurança de bancos de dados do SQL Server.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
    azurerm = {
      source = "hashicorp/azurerm"
    }
  }
}

provider "azurerm" {
  features {
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

variable "administrator_login_password" {
  type        = string
  description = "The administrator login password for the SQL server"
  sensitive   = true
}

data "azurerm_client_config" "current" {
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2021-02-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_id" "publicMaintenanceConfiguration" {
  type      = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
  parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  name      = "SQL_Default"
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Sql/servers/databases@2021-02-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      autoPauseDelay                   = 0
      createMode                       = "Default"
      elasticPoolId                    = ""
      highAvailabilityReplicaCount     = 0
      isLedgerOn                       = false
      licenseType                      = "LicenseIncluded"
      maintenanceConfigurationId       = data.azapi_resource_id.publicMaintenanceConfiguration.id
      minCapacity                      = 0
      readScale                        = "Disabled"
      requestedBackupStorageRedundancy = "Geo"
      zoneRedundant                    = false
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_update_resource" "securityAlertPolicy" {
  type      = "Microsoft.Sql/servers/databases/securityAlertPolicies@2020-11-01-preview"
  parent_id = azapi_resource.database.id
  name      = "default"
  body = {
    properties = {
      state = "Disabled"
    }
  }
  response_export_values = ["*"]
}