Share via


Firewall Rules - Create Or Update

Creates a new cluster firewall rule or updates an existing cluster firewall rule.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/{clusterName}/firewallRules/{firewallRuleName}?api-version=2023-03-02-preview

URI Parameters

Name In Required Type Description
clusterName
path True

string

minLength: 3
maxLength: 40
pattern: ^(?![0-9]+$)(?!-)[a-z0-9-]{3,40}(?

The name of the cluster.

firewallRuleName
path True

string

pattern: ^[-\w\._]+$

The name of the cluster firewall rule.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

subscriptionId
path True

string (uuid)

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

minLength: 1

The API version to use for this operation.

Request Body

Name Required Type Description
properties.endIpAddress True

string

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])$

The end IP address of the cluster firewall rule. Must be IPv4 format.

properties.startIpAddress True

string

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])$

The start IP address of the cluster firewall rule. Must be IPv4 format.

Responses

Name Type Description
200 OK

FirewallRule

Resource 'FirewallRule' update operation succeeded

201 Created

FirewallRule

Resource 'FirewallRule' create operation succeeded

Headers

  • Azure-AsyncOperation: string
  • Location: string
Other Status Codes

ErrorResponse

An unexpected error response.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

Create a firewall rule of the cluster

Sample request

PUT https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/pgtestsvc4/firewallRules/rule1?api-version=2023-03-02-preview

{
  "properties": {
    "endIpAddress": "255.255.255.255",
    "startIpAddress": "0.0.0.0"
  }
}

Sample response

{
  "name": "rule1",
  "type": "Microsoft.DBforPostgreSQL/serverGroupsv2/firewallRules",
  "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/pgtestsvc4/firewallRules/rule1",
  "properties": {
    "endIpAddress": "255.255.255.255",
    "provisioningState": "InProgress",
    "startIpAddress": "0.0.0.0"
  },
  "systemData": {
    "createdAt": "2020-01-01T17:18:19.1234567Z",
    "createdBy": "user1",
    "createdByType": "User",
    "lastModifiedAt": "2020-01-02T17:18:19.1234567Z",
    "lastModifiedBy": "user2",
    "lastModifiedByType": "User"
  }
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforPostgreSQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-03-02-preview
Location: https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforPostgreSQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-03-02-preview
{
  "name": "rule1",
  "type": "Microsoft.DBforPostgreSQL/serverGroupsv2/firewallRules",
  "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/pgtestsvc4/firewallRules/rule1",
  "properties": {
    "endIpAddress": "255.255.255.255",
    "provisioningState": "InProgress",
    "startIpAddress": "0.0.0.0"
  },
  "systemData": {
    "createdAt": "2020-01-01T17:18:19.1234567Z",
    "createdBy": "user1",
    "createdByType": "User",
    "lastModifiedAt": "2020-01-02T17:18:19.1234567Z",
    "lastModifiedBy": "user2",
    "lastModifiedByType": "User"
  }
}

Definitions

Name Description
createdByType

The type of identity that created the resource.

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

FirewallRule

Represents a cluster firewall rule.

ProvisioningState

The current provisioning state.

systemData

Metadata pertaining to creation and last modification of the resource.

createdByType

The type of identity that created the resource.

Value Description
User
Application
ManagedIdentity
Key

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

Represents a cluster firewall rule.

Name Type Description
id

string (arm-id)

Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"

name

string

The name of the resource

properties.endIpAddress

string

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])$

The end IP address of the cluster firewall rule. Must be IPv4 format.

properties.provisioningState

ProvisioningState

Provisioning state of the firewall rule.

properties.startIpAddress

string

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])$

The start IP address of the cluster firewall rule. Must be IPv4 format.

systemData

systemData

Azure Resource Manager metadata containing createdBy and modifiedBy information.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ProvisioningState

The current provisioning state.

Value Description
Succeeded
Canceled
InProgress
Failed

systemData

Metadata pertaining to creation and last modification of the resource.

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC).

createdBy

string

The identity that created the resource.

createdByType

createdByType

The type of identity that created the resource.

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

The identity that last modified the resource.

lastModifiedByType

createdByType

The type of identity that last modified the resource.