UpdateFirewallRule - Amazon Route 53

UpdateFirewallRule

Updates the configuration of a DNS firewall rule.

Request Syntax

PATCH /firewall-rules/firewallRuleId HTTP/1.1 Content-type: application/json { "action": "string", "blockOverrideDnsType": "string", "blockOverrideDomain": "string", "blockOverrideTtl": number, "blockResponse": "string", "clientToken": "string", "confidenceThreshold": "string", "description": "string", "dnsAdvancedProtection": "string", "name": "string", "priority": number }

URI Request Parameters

The request uses the following URI parameters.

firewallRuleId

The ID of the DNS Firewall rule.

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [-.a-zA-Z0-9]+

Required: Yes

Request Body

The request accepts the following data in JSON format.

action

The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule.

Type: String

Valid Values: ALLOW | ALERT | BLOCK

Required: No

blockOverrideDnsType

The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: String

Valid Values: CNAME

Required: No

blockOverrideDomain

The custom DNS record to send back in response to the query. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: \*?[-a-zA-Z0-9.]+

Required: No

blockOverrideTtl

The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: Integer

Valid Range: Minimum value of 0. Maximum value of 604800.

Required: No

blockResponse

The way that you want DNS Firewall to block the request. Used for the rule action setting BLOCK.

Type: String

Valid Values: NODATA | NXDOMAIN | OVERRIDE

Required: No

clientToken

A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same clientToken has the same result every time.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Required: Yes

confidenceThreshold

The confidence threshold for DNS Firewall Advanced. You must provide this value when you create a DNS Firewall Advanced rule.

Type: String

Valid Values: LOW | MEDIUM | HIGH

Required: No

description

The description for the Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Required: No

dnsAdvancedProtection

The type of the DNS Firewall Advanced rule. Valid values are DGA and DNS_TUNNELING.

Type: String

Valid Values: DGA | DNS_TUNNELING

Required: No

name

The name of the DNS Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: (?!^[0-9]+$)([a-zA-Z0-9-_/' ']+)

Required: No

priority

The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.

Type: Long

Valid Range: Minimum value of 1. Maximum value of 10000.

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "action": "string", "blockOverrideDnsType": "string", "blockOverrideDomain": "string", "blockOverrideTtl": number, "blockResponse": "string", "confidenceThreshold": "string", "createdAt": "string", "description": "string", "dnsAdvancedProtection": "string", "dnsViewId": "string", "firewallDomainListId": "string", "id": "string", "name": "string", "priority": number, "queryType": "string", "status": "string", "updatedAt": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

action

The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list, or a threat in a DNS Firewall Advanced rule.

Type: String

Valid Values: ALLOW | ALERT | BLOCK

blockOverrideDnsType

The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: String

Valid Values: CNAME

blockOverrideDomain

The custom DNS record to send back in response to the query. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: \*?[-a-zA-Z0-9.]+

blockOverrideTtl

The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Used for the rule action BLOCK with a BlockResponse setting of OVERRIDE.

Type: Integer

Valid Range: Minimum value of 0. Maximum value of 604800.

blockResponse

The way that you want DNS Firewall to block the request. Used for the rule action setting BLOCK.

Type: String

Valid Values: NODATA | NXDOMAIN | OVERRIDE

confidenceThreshold

The confidence threshold for DNS Firewall Advanced. You must provide this value when you create a DNS Firewall Advanced rule.

Type: String

Valid Values: LOW | MEDIUM | HIGH

createdAt

The time and date the Firewall rule was created.

Type: Timestamp

description

The description of the Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

dnsAdvancedProtection

The type of the DNS Firewall Advanced rule. Valid values are DGA and DNS_TUNNELING.

Type: String

Valid Values: DGA | DNS_TUNNELING

dnsViewId

The ID of the DNS view the Firewall rule is associated with.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [-.a-zA-Z0-9]+

firewallDomainListId

The ID of the domain list associated with the Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [-.a-zA-Z0-9]+

id

The ID of the Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [-.a-zA-Z0-9]+

name

The name of the Firewall rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: (?!^[0-9]+$)([a-zA-Z0-9-_/' ']+)

priority

The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.

Type: Long

Valid Range: Minimum value of 1. Maximum value of 10000.

queryType

The DNS query type you want the rule to evaluate.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 16.

status

The operational status of the firewall rule.

Type: String

Valid Values: CREATING | OPERATIONAL | UPDATING | DELETING

updatedAt

The time and date the rule was updated.

Type: Timestamp

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You don't have permission to perform this operation. Check your IAM permissions and try again.

HTTP Status Code: 403

ConflictException

The request conflicts with the current state of the resource. This can occur when trying to modify a resource that is not in a valid state for the requested operation.

resourceId

The ID of the conflicting resource.

resourceType

The type of the conflicting resource.

HTTP Status Code: 409

InternalServerException

An internal server error occurred. Try again later.

retryAfterSeconds

Number of seconds in which the caller can retry the request.

HTTP Status Code: 500

ResourceNotFoundException

The specified resource was not found. Verify the resource ID and try again.

resourceId

The unique ID of the resource referenced in the failed request.

resourceType

The resource type of the resource referenced in the failed request.

HTTP Status Code: 404

ThrottlingException

The request was throttled due to too many requests. Wait a moment and try again.

quotaCode

The quota code recognized by the AWS Service Quotas service.

retryAfterSeconds

Number of seconds in which the caller can retry the request.

serviceCode

The code for the AWS service that owns the quota.

HTTP Status Code: 429

ValidationException

The input parameters are invalid. Check the parameter values and try again.

fieldList

The list of fields that aren't valid.

reason

Reason the request failed validation.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: