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=2023-08-01

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

FirewallRule

Successfully updated the firewall rule.

201 Created

FirewallRule

Successfully created the firewall rule.

Other Status Codes

ErrorResponse

*** Error Responses: ***

  • 400 ManagedInstanceStoppingOrStopped - Conflicting operation submitted while instance is in stopping/stopped state

  • 400 ManagedInstanceStarting - Conflicting operation submitted while instance is in starting state

  • 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 FirewallRuleNotIPv4Address - The provided firewall rule address is not IPv4

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

  • 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 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 FirewallRuleNameInvalid - The provided firewall rule name contains special characters.

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

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.

  • 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.

  • 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.

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=2023-08-01

{
  "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=2023-08-01

{
  "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

Name Description
ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

FirewallRule

A server firewall rule.

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

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.