Firewall Rules - Create Or Update

Creates or updates a firewall rule.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules/{firewallRuleName}?api-version=2021-02-01-preview

URI Parameters

Name In Required Type Description
firewallRuleName
path True
  • string

The name of the firewall rule.

resourceGroupName
path True
  • string

The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

serverName
path True
  • string

The name of the server.

subscriptionId
path True
  • string

The subscription ID that identifies an Azure subscription.

api-version
query True
  • string

The API version to use for the request.

Request Body

Name Type Description
name
  • string

Resource name.

properties.endIpAddress
  • string

The end IP address of the firewall rule. Must be IPv4 format. Must be greater than or equal to startIpAddress. Use value '0.0.0.0' for all Azure-internal IP addresses.

properties.startIpAddress
  • string

The start IP address of the firewall rule. Must be IPv4 format. Use value '0.0.0.0' for all Azure-internal IP addresses.

Responses

Name Type Description
200 OK

Successfully updated the firewall rule.

201 Created

Successfully created the firewall rule.

Other Status Codes

*** Error Responses: ***

  • 400 InvalidResourceId - Invalid resource identifier.

  • 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.

  • 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.

  • 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.

  • 400 InvalidServerFirewallRuleResourceRequest - The server firewall rule resource request is invalid.

  • 400 InvalidServerFirewallRuleResourceParameters - The server firewall rule resource parameter is invalid.

  • 400 TooManyFirewallRules - The provided firewall rules are over the limit.

  • 400 DenyPublicEndpointEnabled - Unable to create or modify firewall rules when public network interface for the server is disabled. To manage server or database level firewall rules, please enable the public network interface.

  • 400 FirewallRuleInvalidRange - The specified firewall rule range is invalid.

  • 400 FirewallRuleNameTooLong - The provided firewall rule name is too long

  • 400 FirewallRuleNameEmpty - The provided firewall rule name is empty

  • 400 FirewallRuleNotIPv4Address - The provided firewall rule address is not IPv4

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.

Examples

Create a firewall rule max/min
Update a firewall rule max/min

Create a firewall rule max/min

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370?api-version=2021-02-01-preview
{
  "properties": {
    "startIpAddress": "0.0.0.3",
    "endIpAddress": "0.0.0.3"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370",
  "name": "firewallrulecrudtest-5370",
  "type": "Microsoft.Sql/servers/firewallRules",
  "properties": {
    "startIpAddress": "0.0.0.3",
    "endIpAddress": "0.0.0.3"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-5370",
  "name": "firewallrulecrudtest-5370",
  "properties": {
    "startIpAddress": "0.0.0.3",
    "endIpAddress": "0.0.0.3"
  }
}

Update a firewall rule max/min

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927?api-version=2021-02-01-preview
{
  "properties": {
    "startIpAddress": "0.0.0.1",
    "endIpAddress": "0.0.0.1"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927",
  "name": "firewallrulecrudtest-3927",
  "type": "Microsoft.Sql/servers/firewallRules",
  "properties": {
    "startIpAddress": "0.0.0.1",
    "endIpAddress": "0.0.0.1"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/firewallrulecrudtest-12/providers/Microsoft.Sql/servers/firewallrulecrudtest-6285/firewallRules/firewallrulecrudtest-3927",
  "name": "firewallrulecrudtest-3927",
  "type": "Microsoft.Sql/servers/firewallRules",
  "properties": {
    "startIpAddress": "0.0.0.1",
    "endIpAddress": "0.0.0.1"
  }
}

Definitions

FirewallRule

A server firewall rule.

Name Type Description
id
  • string

Resource ID.

name
  • string

Resource name.

properties.endIpAddress
  • string

The end IP address of the firewall rule. Must be IPv4 format. Must be greater than or equal to startIpAddress. Use value '0.0.0.0' for all Azure-internal IP addresses.

properties.startIpAddress
  • string

The start IP address of the firewall rule. Must be IPv4 format. Use value '0.0.0.0' for all Azure-internal IP addresses.

type
  • string

Resource type.