RuleArgs

data class RuleArgs(val metricName: Output<String>? = null, val name: Output<String>? = null, val predicates: Output<List<RulePredicateArgs>>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<RuleArgs>

Provides a WAF Rule Resource

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.waf.IpSet;
import com.pulumi.aws.waf.IpSetArgs;
import com.pulumi.aws.waf.inputs.IpSetIpSetDescriptorArgs;
import com.pulumi.aws.waf.Rule;
import com.pulumi.aws.waf.RuleArgs;
import com.pulumi.aws.waf.inputs.RulePredicateArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var ipset = new IpSet("ipset", IpSetArgs.builder()
.ipSetDescriptors(IpSetIpSetDescriptorArgs.builder()
.type("IPV4")
.value("192.0.7.0/24")
.build())
.build());
var wafrule = new Rule("wafrule", RuleArgs.builder()
.metricName("tfWAFRule")
.predicates(RulePredicateArgs.builder()
.dataId(ipset.id())
.negated(false)
.type("IPMatch")
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(ipset)
.build());
}
}

Import

WAF rules can be imported using the id, e.g.,

$ pulumi import aws:waf/rule:Rule example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

Constructors

Link copied to clipboard
constructor(metricName: Output<String>? = null, name: Output<String>? = null, predicates: Output<List<RulePredicateArgs>>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard
val metricName: Output<String>? = null

The name or description for the Amazon CloudWatch metric of this rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.

Link copied to clipboard
val name: Output<String>? = null

The name or description of the rule.

Link copied to clipboard
val predicates: Output<List<RulePredicateArgs>>? = null

The objects to include in a rule (documented below).

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Key-value map of resource tags. .If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Functions

Link copied to clipboard
open override fun toJava(): RuleArgs