UpdateFirewallRule
Updates the configuration of a DNS firewall rule.
Important
Route 53 Global Resolver is a global service that supports resolvers in multiple AWS Regions but you must specify the
US East (Ohio) Region to create, update, or otherwise work with Route 53 Global Resolver resources. That is, for example,
specify
--region us-east-2
on AWS CLI commands.
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, DNS_TUNNELING, and DICTIONARY_DGA.
Type: String
Valid Values:
DGA | DNS_TUNNELING | DICTIONARY_DGARequired: 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, DNS_TUNNELING, and DICTIONARY_DGA.
Type: String
Valid Values:
DGA | DNS_TUNNELING | DICTIONARY_DGA - 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
- ServiceQuotaExceededException
-
The request would exceed one or more service quotas. Check your current usage and quotas, then try again.
- quotaCode
-
The quota code recognized by the AWS Service Quotas service.
- resourceId
-
The unique ID of the resource referenced in the failed request.
- resourceType
-
The resource type of the resource referenced in the failed request.
- serviceCode
-
The code for the AWS service that owns the quota.
HTTP Status Code: 402
- 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: