Microsoft. Reglas de servidores SQL/firewall

Definición de recurso Bicep

El tipo de recurso servers/firewallRules se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un Microsoft. Recurso Sql/servers/firewallRules, añade el siguiente Bicep a tu plantilla.

resource symbolicname 'Microsoft.Sql/servers/firewallRules@2025-02-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    endIpAddress: 'string'
    startIpAddress: 'string'
  }
}

Valores de propiedad

Microsoft. Reglas de Sql/servidores/firewall

Name Description Value
name El nombre del recurso string (obligatorio)
parent En Bicep, puedes especificar el recurso padre para un recurso hijo. Solo tiene que agregar esta propiedad cuando el recurso secundario se declara fuera del recurso primario.

Para obtener más información, consulte recurso secundario fuera del recurso primario.
Nombre simbólico del recurso de tipo: servidores
properties Propiedades de recursos. ServerFirewallRuleProperties

ServerFirewallRuleProperties

Name Description Value
endIpAddress Dirección IP final de la regla de firewall. Debe tener el formato IPv4. Debe ser mayor o igual que startIpAddress. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string
startIpAddress Dirección IP inicial de la regla de firewall. Debe tener el formato IPv4. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string

Ejemplos de uso

Muestras de Bicep

Un ejemplo básico de cómo desplegar la regla de firewall de Azure SQL.

param resourceName string = 'acctest0001'
param location string = 'westeurope'
@secure()
@description('The administrator login password for the SQL server')
param administratorLoginPassword string

resource server 'Microsoft.Sql/servers@2021-02-01-preview' = {
  name: resourceName
  location: location
  properties: {
    administratorLogin: 'msincredible'
    administratorLoginPassword: null
    minimalTlsVersion: '1.2'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    version: '12.0'
  }
}

resource firewallRule 'Microsoft.Sql/servers/firewallRules@2020-11-01-preview' = {
  parent: server
  name: resourceName
  properties: {
    endIpAddress: '255.255.255.255'
    startIpAddress: '0.0.0.0'
  }
}

Azure Quickstart Samples

Las siguientes plantillas de inicio rápido Azure contienen Bicep ejemplos para desplegar este tipo de recurso.

Archivo Bicep Description
Despliega la analítica deportiva en Azure Arquitectura Crea una cuenta de almacenamiento de Azure con ADLS Gen 2 habilitada, una instancia de Azure Data Factory con servicios vinculados para la cuenta de almacenamiento (y la Azure SQL Database si está desplegada), y una instancia de Azure Databricks. AAD identity for the user deploying the template and the managed identity for the ADF instance will be granted the Storage Blob Data Contributor role on the storage account. También hay opciones para desplegar una instancia de Azure Key Vault, una Azure SQL Database y un Azure Event Hub (para casos de uso en streaming). Cuando se despliega un Azure Key Vault, la identidad gestionada por la fábrica de datos y la identidad AAD del usuario que despliega la plantilla recibirán el rol de usuario de Key Vault Secrets.
Provisiona una aplicación web con una base de datos SQL Esta plantilla aprovisiona una aplicación web, una instancia de SQL Database, la configuración de escalabilidad automática, las reglas de alerta y App Insights. Configura una cadena de conexión en la aplicación web para la base de datos.
Sonarqube Docker Web App en Linux con Azure SQL Esta plantilla despliega Sonarqube en un contenedor Linux de Azure App Service web usando la imagen oficial de Sonarqube y respaldado por un Azure SQL Server.
SQL servidor lógico Esta plantilla le permite crear un servidor lógico de SQL.
Aplicación Web con Identidad Gestionada, SQL Server y ΑΙ Ejemplo sencillo para desplegar infraestructura de Azure para app + datos + identidad gestionada + monitorización

Definición de recursos de plantilla de ARM

El tipo de recurso servers/firewallRules se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un Microsoft. Recurso Sql/servers/firewallRules, añade el siguiente JSON a tu plantilla.

{
  "type": "Microsoft.Sql/servers/firewallRules",
  "apiVersion": "2025-02-01-preview",
  "name": "string",
  "properties": {
    "endIpAddress": "string",
    "startIpAddress": "string"
  }
}

Valores de propiedad

Microsoft. Reglas de Sql/servidores/firewall

Name Description Value
apiVersion La versión de api '2025-02-01-preestreno'
name El nombre del recurso string (obligatorio)
properties Propiedades de recursos. ServerFirewallRuleProperties
type El tipo de recurso 'Microsoft. Reglas de Sql/servidores/firewall'

ServerFirewallRuleProperties

Name Description Value
endIpAddress Dirección IP final de la regla de firewall. Debe tener el formato IPv4. Debe ser mayor o igual que startIpAddress. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string
startIpAddress Dirección IP inicial de la regla de firewall. Debe tener el formato IPv4. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string

Ejemplos de uso

Plantillas de inicio rápido de Azure

Las siguientes plantillas Azure Quickstart despliegan este tipo de recurso.

Template Description
Despliega un nuevo SQL Elastic Pool

Despliega en Azure
Esta plantilla te permite desplegar un nuevo SQL Elastic Pool con su nuevo SQL Server asociado y nuevas bases de datos SQL para asignarle.
Despliega la analítica deportiva en Azure Arquitectura

Despliega en Azure
Crea una cuenta de almacenamiento de Azure con ADLS Gen 2 habilitada, una instancia de Azure Data Factory con servicios vinculados para la cuenta de almacenamiento (y la Azure SQL Database si está desplegada), y una instancia de Azure Databricks. AAD identity for the user deploying the template and the managed identity for the ADF instance will be granted the Storage Blob Data Contributor role on the storage account. También hay opciones para desplegar una instancia de Azure Key Vault, una Azure SQL Database y un Azure Event Hub (para casos de uso en streaming). Cuando se despliega un Azure Key Vault, la identidad gestionada por la fábrica de datos y la identidad AAD del usuario que despliega la plantilla recibirán el rol de usuario de Key Vault Secrets.
Provisiona una aplicación web con una base de datos SQL

Despliega en Azure
Esta plantilla aprovisiona una aplicación web, una instancia de SQL Database, la configuración de escalabilidad automática, las reglas de alerta y App Insights. Configura una cadena de conexión en la aplicación web para la base de datos.
Sonarqube Docker Web App en Linux con Azure SQL

Despliega en Azure
Esta plantilla despliega Sonarqube en un contenedor Linux de Azure App Service web usando la imagen oficial de Sonarqube y respaldado por un Azure SQL Server.
SQL servidor lógico

Despliega en Azure
Esta plantilla le permite crear un servidor lógico de SQL.
Aplicación Web con Identidad Gestionada, SQL Server y ΑΙ

Despliega en Azure
Ejemplo sencillo para desplegar infraestructura de Azure para app + datos + identidad gestionada + monitorización

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso servers/firewallRules se puede implementar con operaciones destinadas a:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un Microsoft. Recurso Sql/servers/firewallRules, añade el siguiente Terraform a tu plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/firewallRules@2025-02-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      endIpAddress = "string"
      startIpAddress = "string"
    }
  }
}

Valores de propiedad

Microsoft. Reglas de Sql/servidores/firewall

Name Description Value
name El nombre del recurso string (obligatorio)
parent_id Identificador del recurso que es el elemento primario de este recurso. Identificador del recurso de tipo: servidores
properties Propiedades de recursos. ServerFirewallRuleProperties
type El tipo de recurso "Microsoft. Sql/servidores/firewallRules@2025-02-01-previsualización"

ServerFirewallRuleProperties

Name Description Value
endIpAddress Dirección IP final de la regla de firewall. Debe tener el formato IPv4. Debe ser mayor o igual que startIpAddress. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string
startIpAddress Dirección IP inicial de la regla de firewall. Debe tener el formato IPv4. Valor de uso '0.0.0.0' para todas las direcciones IP internas de Azure. string

Ejemplos de uso

Ejemplos de Terraform

Un ejemplo básico de cómo desplegar la regla de firewall de Azure SQL.

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

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
}

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            = "msincredible"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "firewallRule" {
  type      = "Microsoft.Sql/servers/firewallRules@2020-11-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  body = {
    properties = {
      endIpAddress   = "255.255.255.255"
      startIpAddress = "0.0.0.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Un ejemplo básico de cómo desplegar la regla de firewall de Azure SQL.

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

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
}

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            = "msincredible"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "firewallRule" {
  type      = "Microsoft.Sql/servers/firewallRules@2020-11-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  body = {
    properties = {
      endIpAddress   = "255.255.255.255"
      startIpAddress = "0.0.0.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}