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 | BLOCKRequired: No
- blockOverrideDnsType
-
The DNS record's type. This determines the format of the record value that you provided in
BlockOverrideDomain. Used for the rule actionBLOCKwith aBlockResponsesetting ofOVERRIDE.Type: String
Valid Values:
CNAMERequired: No
- blockOverrideDomain
-
The custom DNS record to send back in response to the query. Used for the rule action
BLOCKwith aBlockResponsesetting ofOVERRIDE.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
BLOCKwith aBlockResponsesetting ofOVERRIDE.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 | OVERRIDERequired: No
- clientToken
-
A unique, case-sensitive identifier to ensure idempotency. This means that making the same request multiple times with the same
clientTokenhas 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 | HIGHRequired: 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_TUNNELINGRequired: 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 actionBLOCKwith aBlockResponsesetting ofOVERRIDE.Type: String
Valid Values:
CNAME - blockOverrideDomain
-
The custom DNS record to send back in response to the query. Used for the rule action
BLOCKwith aBlockResponsesetting ofOVERRIDE.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
BLOCKwith aBlockResponsesetting ofOVERRIDE.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: