Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Bicep resource definition
The flexibleServers/firewallRules resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DBforMySQL/flexibleServers/firewallRules resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DBforMySQL/flexibleServers/firewallRules@2025-06-01-preview' = {
parent: resourceSymbolicName
name: 'string'
properties: {
endIpAddress: 'string'
startIpAddress: 'string'
}
}
Property Values
Microsoft.DBforMySQL/flexibleServers/firewallRules
| Name | Description | Value |
|---|---|---|
| name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][-_a-zA-Z0-9]{0,79}(?<!-)$ (required) |
| parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: flexibleServers |
| properties | The properties of a firewall rule. | FirewallRuleProperties (required) |
FirewallRuleProperties
| Name | Description | Value |
|---|---|---|
| endIpAddress | The end IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
| startIpAddress | The start IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
Usage Examples
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
| Bicep File | Description |
|---|---|
| Deploy MySQL Flexible Server with Entra Authentication | This template provides a way to deploy a Azure database for MySQL Flexible Server with Entra Authentication. |
ARM template resource definition
The flexibleServers/firewallRules resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DBforMySQL/flexibleServers/firewallRules resource, add the following JSON to your template.
{
"type": "Microsoft.DBforMySQL/flexibleServers/firewallRules",
"apiVersion": "2025-06-01-preview",
"name": "string",
"properties": {
"endIpAddress": "string",
"startIpAddress": "string"
}
}
Property Values
Microsoft.DBforMySQL/flexibleServers/firewallRules
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2025-06-01-preview' |
| name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][-_a-zA-Z0-9]{0,79}(?<!-)$ (required) |
| properties | The properties of a firewall rule. | FirewallRuleProperties (required) |
| type | The resource type | 'Microsoft.DBforMySQL/flexibleServers/firewallRules' |
FirewallRuleProperties
| Name | Description | Value |
|---|---|---|
| endIpAddress | The end IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
| startIpAddress | The start IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description |
|---|---|
| Deploy MySQL Flexible Server with Entra Authentication |
This template provides a way to deploy a Azure database for MySQL Flexible Server with Entra Authentication. |
Terraform (AzAPI provider) resource definition
The flexibleServers/firewallRules resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DBforMySQL/flexibleServers/firewallRules resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DBforMySQL/flexibleServers/firewallRules@2025-06-01-preview"
name = "string"
parent_id = "string"
body = {
properties = {
endIpAddress = "string"
startIpAddress = "string"
}
}
}
Property Values
Microsoft.DBforMySQL/flexibleServers/firewallRules
| Name | Description | Value |
|---|---|---|
| name | The resource name | string Constraints: Pattern = ^[a-zA-Z0-9][-_a-zA-Z0-9]{0,79}(?<!-)$ (required) |
| parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: flexibleServers |
| properties | The properties of a firewall rule. | FirewallRuleProperties (required) |
| type | The resource type | "Microsoft.DBforMySQL/flexibleServers/firewallRules@2025-06-01-preview" |
FirewallRuleProperties
| Name | Description | Value |
|---|---|---|
| endIpAddress | The end IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
| startIpAddress | The start IP address of the server firewall rule. Must be IPv4 format. | string Constraints: Pattern = ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ (required) |
Usage Examples
Terraform Samples
A basic example of deploying Firewall Rule for a MySQL Flexible Server.
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 "mysql_administrator_password" {
type = string
description = "The administrator password for the MySQL flexible server"
sensitive = true
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "flexibleServer" {
type = "Microsoft.DBforMySQL/flexibleServers@2021-05-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
administratorLogin = "adminTerraform"
administratorLoginPassword = var.mysql_administrator_password
backup = {
backupRetentionDays = 7
geoRedundantBackup = "Disabled"
}
createMode = ""
dataEncryption = {
type = "SystemManaged"
}
highAvailability = {
mode = "Disabled"
}
network = {
}
version = "5.7"
}
sku = {
name = "Standard_B1s"
tier = "Burstable"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "firewallRule" {
type = "Microsoft.DBforMySQL/flexibleServers/firewallRules@2021-05-01"
parent_id = azapi_resource.flexibleServer.id
name = var.resource_name
body = {
properties = {
endIpAddress = "255.255.255.255"
startIpAddress = "0.0.0.0"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}