Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.route53.inputs.ResolverFirewallRuleState Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.route53.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class ResolverFirewallRuleState extends com.pulumi.resources.ResourceArgs {
public static final ResolverFirewallRuleState Empty = new ResolverFirewallRuleState();
/**
* The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
*
*/
@Import(name="action")
private @Nullable Output action;
/**
* @return The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
*
*/
public Optional> action() {
return Optional.ofNullable(this.action);
}
/**
* The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
*
*/
@Import(name="blockOverrideDnsType")
private @Nullable Output blockOverrideDnsType;
/**
* @return The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
*
*/
public Optional> blockOverrideDnsType() {
return Optional.ofNullable(this.blockOverrideDnsType);
}
/**
* The custom DNS record to send back in response to the query.
*
*/
@Import(name="blockOverrideDomain")
private @Nullable Output blockOverrideDomain;
/**
* @return The custom DNS record to send back in response to the query.
*
*/
public Optional> blockOverrideDomain() {
return Optional.ofNullable(this.blockOverrideDomain);
}
/**
* The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
*
*/
@Import(name="blockOverrideTtl")
private @Nullable Output blockOverrideTtl;
/**
* @return The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
*
*/
public Optional> blockOverrideTtl() {
return Optional.ofNullable(this.blockOverrideTtl);
}
/**
* The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
*
*/
@Import(name="blockResponse")
private @Nullable Output blockResponse;
/**
* @return The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
*
*/
public Optional> blockResponse() {
return Optional.ofNullable(this.blockResponse);
}
/**
* The ID of the domain list that you want to use in the rule.
*
*/
@Import(name="firewallDomainListId")
private @Nullable Output firewallDomainListId;
/**
* @return The ID of the domain list that you want to use in the rule.
*
*/
public Optional> firewallDomainListId() {
return Optional.ofNullable(this.firewallDomainListId);
}
/**
* Evaluate DNS redirection in the DNS redirection chain, such as CNAME, DNAME, ot ALIAS. Valid values are `INSPECT_REDIRECTION_DOMAIN` and `TRUST_REDIRECTION_DOMAIN`. Default value is `INSPECT_REDIRECTION_DOMAIN`.
*
*/
@Import(name="firewallDomainRedirectionAction")
private @Nullable Output firewallDomainRedirectionAction;
/**
* @return Evaluate DNS redirection in the DNS redirection chain, such as CNAME, DNAME, ot ALIAS. Valid values are `INSPECT_REDIRECTION_DOMAIN` and `TRUST_REDIRECTION_DOMAIN`. Default value is `INSPECT_REDIRECTION_DOMAIN`.
*
*/
public Optional> firewallDomainRedirectionAction() {
return Optional.ofNullable(this.firewallDomainRedirectionAction);
}
/**
* The unique identifier of the firewall rule group where you want to create the rule.
*
*/
@Import(name="firewallRuleGroupId")
private @Nullable Output firewallRuleGroupId;
/**
* @return The unique identifier of the firewall rule group where you want to create the rule.
*
*/
public Optional> firewallRuleGroupId() {
return Optional.ofNullable(this.firewallRuleGroupId);
}
/**
* A name that lets you identify the rule, to manage and use it.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return A name that lets you identify the rule, to manage and use it.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
/**
* 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.
*
*/
@Import(name="priority")
private @Nullable Output priority;
/**
* @return 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.
*
*/
public Optional> priority() {
return Optional.ofNullable(this.priority);
}
/**
* The query type you want the rule to evaluate. Additional details can be found [here](https://en.wikipedia.org/wiki/List_of_DNS_record_types)
*
*/
@Import(name="qType")
private @Nullable Output qType;
/**
* @return The query type you want the rule to evaluate. Additional details can be found [here](https://en.wikipedia.org/wiki/List_of_DNS_record_types)
*
*/
public Optional> qType() {
return Optional.ofNullable(this.qType);
}
private ResolverFirewallRuleState() {}
private ResolverFirewallRuleState(ResolverFirewallRuleState $) {
this.action = $.action;
this.blockOverrideDnsType = $.blockOverrideDnsType;
this.blockOverrideDomain = $.blockOverrideDomain;
this.blockOverrideTtl = $.blockOverrideTtl;
this.blockResponse = $.blockResponse;
this.firewallDomainListId = $.firewallDomainListId;
this.firewallDomainRedirectionAction = $.firewallDomainRedirectionAction;
this.firewallRuleGroupId = $.firewallRuleGroupId;
this.name = $.name;
this.priority = $.priority;
this.qType = $.qType;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ResolverFirewallRuleState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private ResolverFirewallRuleState $;
public Builder() {
$ = new ResolverFirewallRuleState();
}
public Builder(ResolverFirewallRuleState defaults) {
$ = new ResolverFirewallRuleState(Objects.requireNonNull(defaults));
}
/**
* @param 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. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
*
* @return builder
*
*/
public Builder action(@Nullable Output action) {
$.action = action;
return this;
}
/**
* @param 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. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
*
* @return builder
*
*/
public Builder action(String action) {
return action(Output.of(action));
}
/**
* @param blockOverrideDnsType The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
*
* @return builder
*
*/
public Builder blockOverrideDnsType(@Nullable Output blockOverrideDnsType) {
$.blockOverrideDnsType = blockOverrideDnsType;
return this;
}
/**
* @param blockOverrideDnsType The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
*
* @return builder
*
*/
public Builder blockOverrideDnsType(String blockOverrideDnsType) {
return blockOverrideDnsType(Output.of(blockOverrideDnsType));
}
/**
* @param blockOverrideDomain The custom DNS record to send back in response to the query.
*
* @return builder
*
*/
public Builder blockOverrideDomain(@Nullable Output blockOverrideDomain) {
$.blockOverrideDomain = blockOverrideDomain;
return this;
}
/**
* @param blockOverrideDomain The custom DNS record to send back in response to the query.
*
* @return builder
*
*/
public Builder blockOverrideDomain(String blockOverrideDomain) {
return blockOverrideDomain(Output.of(blockOverrideDomain));
}
/**
* @param blockOverrideTtl The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
*
* @return builder
*
*/
public Builder blockOverrideTtl(@Nullable Output blockOverrideTtl) {
$.blockOverrideTtl = blockOverrideTtl;
return this;
}
/**
* @param blockOverrideTtl The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
*
* @return builder
*
*/
public Builder blockOverrideTtl(Integer blockOverrideTtl) {
return blockOverrideTtl(Output.of(blockOverrideTtl));
}
/**
* @param blockResponse The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
*
* @return builder
*
*/
public Builder blockResponse(@Nullable Output blockResponse) {
$.blockResponse = blockResponse;
return this;
}
/**
* @param blockResponse The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
*
* @return builder
*
*/
public Builder blockResponse(String blockResponse) {
return blockResponse(Output.of(blockResponse));
}
/**
* @param firewallDomainListId The ID of the domain list that you want to use in the rule.
*
* @return builder
*
*/
public Builder firewallDomainListId(@Nullable Output firewallDomainListId) {
$.firewallDomainListId = firewallDomainListId;
return this;
}
/**
* @param firewallDomainListId The ID of the domain list that you want to use in the rule.
*
* @return builder
*
*/
public Builder firewallDomainListId(String firewallDomainListId) {
return firewallDomainListId(Output.of(firewallDomainListId));
}
/**
* @param firewallDomainRedirectionAction Evaluate DNS redirection in the DNS redirection chain, such as CNAME, DNAME, ot ALIAS. Valid values are `INSPECT_REDIRECTION_DOMAIN` and `TRUST_REDIRECTION_DOMAIN`. Default value is `INSPECT_REDIRECTION_DOMAIN`.
*
* @return builder
*
*/
public Builder firewallDomainRedirectionAction(@Nullable Output firewallDomainRedirectionAction) {
$.firewallDomainRedirectionAction = firewallDomainRedirectionAction;
return this;
}
/**
* @param firewallDomainRedirectionAction Evaluate DNS redirection in the DNS redirection chain, such as CNAME, DNAME, ot ALIAS. Valid values are `INSPECT_REDIRECTION_DOMAIN` and `TRUST_REDIRECTION_DOMAIN`. Default value is `INSPECT_REDIRECTION_DOMAIN`.
*
* @return builder
*
*/
public Builder firewallDomainRedirectionAction(String firewallDomainRedirectionAction) {
return firewallDomainRedirectionAction(Output.of(firewallDomainRedirectionAction));
}
/**
* @param firewallRuleGroupId The unique identifier of the firewall rule group where you want to create the rule.
*
* @return builder
*
*/
public Builder firewallRuleGroupId(@Nullable Output firewallRuleGroupId) {
$.firewallRuleGroupId = firewallRuleGroupId;
return this;
}
/**
* @param firewallRuleGroupId The unique identifier of the firewall rule group where you want to create the rule.
*
* @return builder
*
*/
public Builder firewallRuleGroupId(String firewallRuleGroupId) {
return firewallRuleGroupId(Output.of(firewallRuleGroupId));
}
/**
* @param name A name that lets you identify the rule, to manage and use it.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name A name that lets you identify the rule, to manage and use it.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
/**
* @param 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.
*
* @return builder
*
*/
public Builder priority(@Nullable Output priority) {
$.priority = priority;
return this;
}
/**
* @param 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.
*
* @return builder
*
*/
public Builder priority(Integer priority) {
return priority(Output.of(priority));
}
/**
* @param qType The query type you want the rule to evaluate. Additional details can be found [here](https://en.wikipedia.org/wiki/List_of_DNS_record_types)
*
* @return builder
*
*/
public Builder qType(@Nullable Output qType) {
$.qType = qType;
return this;
}
/**
* @param qType The query type you want the rule to evaluate. Additional details can be found [here](https://en.wikipedia.org/wiki/List_of_DNS_record_types)
*
* @return builder
*
*/
public Builder qType(String qType) {
return qType(Output.of(qType));
}
public ResolverFirewallRuleState build() {
return $;
}
}
}