RuleGroupArgs

data class RuleGroupArgs(val activatedRules: Output<List<RuleGroupActivatedRuleArgs>>? = null, val metricName: Output<String>? = null, val name: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<RuleGroupArgs>

Provides a WAF Rule Group Resource

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.waf.Rule("example", {
name: "example",
metricName: "example",
});
const exampleRuleGroup = new aws.waf.RuleGroup("example", {
name: "example",
metricName: "example",
activatedRules: [{
action: {
type: "COUNT",
},
priority: 50,
ruleId: example.id,
}],
});
import pulumi
import pulumi_aws as aws
example = aws.waf.Rule("example",
name="example",
metric_name="example")
example_rule_group = aws.waf.RuleGroup("example",
name="example",
metric_name="example",
activated_rules=[{
"action": {
"type": "COUNT",
},
"priority": 50,
"rule_id": example.id,
}])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Waf.Rule("example", new()
{
Name = "example",
MetricName = "example",
});
var exampleRuleGroup = new Aws.Waf.RuleGroup("example", new()
{
Name = "example",
MetricName = "example",
ActivatedRules = new[]
{
new Aws.Waf.Inputs.RuleGroupActivatedRuleArgs
{
Action = new Aws.Waf.Inputs.RuleGroupActivatedRuleActionArgs
{
Type = "COUNT",
},
Priority = 50,
RuleId = example.Id,
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := waf.NewRule(ctx, "example", &waf.RuleArgs{
Name: pulumi.String("example"),
MetricName: pulumi.String("example"),
})
if err != nil {
return err
}
_, err = waf.NewRuleGroup(ctx, "example", &waf.RuleGroupArgs{
Name: pulumi.String("example"),
MetricName: pulumi.String("example"),
ActivatedRules: waf.RuleGroupActivatedRuleArray{
&waf.RuleGroupActivatedRuleArgs{
Action: &waf.RuleGroupActivatedRuleActionArgs{
Type: pulumi.String("COUNT"),
},
Priority: pulumi.Int(50),
RuleId: example.ID(),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.waf.Rule;
import com.pulumi.aws.waf.RuleArgs;
import com.pulumi.aws.waf.RuleGroup;
import com.pulumi.aws.waf.RuleGroupArgs;
import com.pulumi.aws.waf.inputs.RuleGroupActivatedRuleArgs;
import com.pulumi.aws.waf.inputs.RuleGroupActivatedRuleActionArgs;
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 example = new Rule("example", RuleArgs.builder()
.name("example")
.metricName("example")
.build());
var exampleRuleGroup = new RuleGroup("exampleRuleGroup", RuleGroupArgs.builder()
.name("example")
.metricName("example")
.activatedRules(RuleGroupActivatedRuleArgs.builder()
.action(RuleGroupActivatedRuleActionArgs.builder()
.type("COUNT")
.build())
.priority(50)
.ruleId(example.id())
.build())
.build());
}
}
resources:
example:
type: aws:waf:Rule
properties:
name: example
metricName: example
exampleRuleGroup:
type: aws:waf:RuleGroup
name: example
properties:
name: example
metricName: example
activatedRules:
- action:
type: COUNT
priority: 50
ruleId: ${example.id}

Import

Using pulumi import, import WAF Rule Group using the id. For example:

$ pulumi import aws:waf/ruleGroup:RuleGroup example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

Constructors

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

Properties

Link copied to clipboard

A list of activated rules, see below

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

A friendly name for the metrics from the rule group

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

Name of the rule group. If omitted, the provider will assign a random, unique name. Conflicts with name_prefix.

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(): RuleGroupArgs