Class CfnFirewallRuleGroup.FirewallRuleProperty.Builder
java.lang.Object
software.amazon.awscdk.services.route53resolver.CfnFirewallRuleGroup.FirewallRuleProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnFirewallRuleGroup.FirewallRuleProperty>
- Enclosing interface:
CfnFirewallRuleGroup.FirewallRuleProperty
@Stability(Stable)
public static final class CfnFirewallRuleGroup.FirewallRuleProperty.Builder
extends Object
implements software.amazon.jsii.Builder<CfnFirewallRuleGroup.FirewallRuleProperty>
A builder for
CfnFirewallRuleGroup.FirewallRuleProperty
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionSets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getAction()
blockOverrideDnsType
(String blockOverrideDnsType) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideDnsType()
blockOverrideDomain
(String blockOverrideDomain) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideDomain()
blockOverrideTtl
(Number blockOverrideTtl) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideTtl()
blockResponse
(String blockResponse) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockResponse()
build()
Builds the configured instance.firewallDomainListId
(String firewallDomainListId) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getFirewallDomainListId()
firewallDomainRedirectionAction
(String firewallDomainRedirectionAction) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getPriority()
Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getQtype()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
action
Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getAction()
- Parameters:
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: -ALLOW
- Permit the request to go through. This parameter is required.ALERT
- Permit the request to go through but send an alert to the logs.BLOCK
- Disallow the request. If this is specified,thenBlockResponse
must also be specified.
if
BlockResponse
isOVERRIDE
, then all of the followingOVERRIDE
attributes must be specified:BlockOverrideDnsType
BlockOverrideDomain
BlockOverrideTtl
- Returns:
this
-
firewallDomainListId
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder firewallDomainListId(String firewallDomainListId) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getFirewallDomainListId()
- Parameters:
firewallDomainListId
- The ID of the domain list that's used in the rule. This parameter is required.- Returns:
this
-
priority
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder priority(Number priority) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getPriority()
- Parameters:
priority
- The priority of the rule in the rule group. This parameter is required. This value must be unique within the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.- Returns:
this
-
blockOverrideDnsType
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder blockOverrideDnsType(String blockOverrideDnsType) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideDnsType()
- Parameters:
blockOverrideDnsType
- The DNS record's type. This determines the format of the record value that you provided inBlockOverrideDomain
. Used for the rule actionBLOCK
with aBlockResponse
setting ofOVERRIDE
.- Returns:
this
-
blockOverrideDomain
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder blockOverrideDomain(String blockOverrideDomain) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideDomain()
- Parameters:
blockOverrideDomain
- The custom DNS record to send back in response to the query. Used for the rule actionBLOCK
with aBlockResponse
setting ofOVERRIDE
.- Returns:
this
-
blockOverrideTtl
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder blockOverrideTtl(Number blockOverrideTtl) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockOverrideTtl()
- Parameters:
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 actionBLOCK
with aBlockResponse
setting ofOVERRIDE
.- Returns:
this
-
blockResponse
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder blockResponse(String blockResponse) Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getBlockResponse()
- Parameters:
blockResponse
- The way that you want DNS Firewall to block the request. Used for the rule action settingBLOCK
.NODATA
- Respond indicating that the query was successful, but no response is available for it.NXDOMAIN
- Respond indicating that the domain name that's in the query doesn't exist.OVERRIDE
- Provide a custom override in the response. This option requires custom handling details in the rule'sBlockOverride*
settings.
- Returns:
this
-
firewallDomainRedirectionAction
@Stability(Stable) public CfnFirewallRuleGroup.FirewallRuleProperty.Builder firewallDomainRedirectionAction(String firewallDomainRedirectionAction) - Parameters:
firewallDomainRedirectionAction
- How you want the the rule to evaluate DNS redirection in the DNS redirection chain, such as CNAME, or DNAME.Inspect_Redirection_Domain
(Default) inspects all domains in the redirection chain. The individual domains in the redirection chain must be added to the domain list.Trust_Redirection_Domain
inspects only the first domain in the redirection chain. You don't need to add the subsequent domains in the domain in the redirection list to the domain list.- Returns:
this
-
qtype
Sets the value ofCfnFirewallRuleGroup.FirewallRuleProperty.getQtype()
- Parameters:
qtype
- The DNS query type you want the rule to evaluate. Allowed values are;.- A: Returns an IPv4 address.
- AAAA: Returns an Ipv6 address.
- CAA: Restricts CAs that can create SSL/TLS certifications for the domain.
- CNAME: Returns another domain name.
- DS: Record that identifies the DNSSEC signing key of a delegated zone.
- MX: Specifies mail servers.
- NAPTR: Regular-expression-based rewriting of domain names.
- NS: Authoritative name servers.
- PTR: Maps an IP address to a domain name.
- SOA: Start of authority record for the zone.
- SPF: Lists the servers authorized to send emails from a domain.
- SRV: Application specific values that identify servers.
- TXT: Verifies email senders and application-specific values.
- A query type you define by using the DNS type ID, for example 28 for AAAA. The values must be defined as TYPE NUMBER , where the NUMBER can be 1-65334, for example, TYPE28. For more information, see List of DNS record types .
- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<CfnFirewallRuleGroup.FirewallRuleProperty>
- Returns:
- a new instance of
CfnFirewallRuleGroup.FirewallRuleProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-