Package com.pulumi.aws.wafregional
Class WebAclAssociation
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.wafregional.WebAclAssociation
-
public class WebAclAssociation extends com.pulumi.resources.CustomResourceManages an association with WAF Regional Web ACL. > **Note:** An Application Load Balancer can only be associated with one WAF Regional WebACL. ## Example Usage ### Application Load Balancer Association
## Import Using `pulumi import`, import WAF Regional Web ACL Association using their `web_acl_id:resource_arn`. For example: ```sh $ pulumi import aws:wafregional/webAclAssociation:WebAclAssociation foo web_acl_id:resource_arn ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.wafregional.IpSet; import com.pulumi.aws.wafregional.IpSetArgs; import com.pulumi.aws.wafregional.inputs.IpSetIpSetDescriptorArgs; import com.pulumi.aws.wafregional.Rule; import com.pulumi.aws.wafregional.RuleArgs; import com.pulumi.aws.wafregional.inputs.RulePredicateArgs; import com.pulumi.aws.wafregional.WebAcl; import com.pulumi.aws.wafregional.WebAclArgs; import com.pulumi.aws.wafregional.inputs.WebAclDefaultActionArgs; import com.pulumi.aws.wafregional.inputs.WebAclRuleArgs; import com.pulumi.aws.wafregional.inputs.WebAclRuleActionArgs; import com.pulumi.aws.ec2.Vpc; import com.pulumi.aws.ec2.VpcArgs; import com.pulumi.aws.AwsFunctions; import com.pulumi.aws.inputs.GetAvailabilityZonesArgs; import com.pulumi.aws.ec2.Subnet; import com.pulumi.aws.ec2.SubnetArgs; import com.pulumi.aws.alb.LoadBalancer; import com.pulumi.aws.alb.LoadBalancerArgs; import com.pulumi.aws.wafregional.WebAclAssociation; import com.pulumi.aws.wafregional.WebAclAssociationArgs; import java.util.ArrayList; import java.util.Arrays; 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()) .name("tfIPSet") .build()); var foo = new Rule("foo", RuleArgs.builder() .predicates(RulePredicateArgs.builder() .dataId(ipset.id()) .negated(false) .type("IPMatch") .build()) .name("tfWAFRule") .metricName("tfWAFRule") .build()); var fooWebAcl = new WebAcl("fooWebAcl", WebAclArgs.builder() .defaultAction(WebAclDefaultActionArgs.builder() .type("ALLOW") .build()) .rules(WebAclRuleArgs.builder() .action(WebAclRuleActionArgs.builder() .type("BLOCK") .build()) .priority(1) .ruleId(foo.id()) .build()) .name("foo") .metricName("foo") .build()); var fooVpc = new Vpc("fooVpc", VpcArgs.builder() .cidrBlock("10.1.0.0/16") .build()); final var available = AwsFunctions.getAvailabilityZones(GetAvailabilityZonesArgs.builder() .build()); var fooSubnet = new Subnet("fooSubnet", SubnetArgs.builder() .vpcId(fooVpc.id()) .cidrBlock("10.1.1.0/24") .availabilityZone(available.names()[0]) .build()); var bar = new Subnet("bar", SubnetArgs.builder() .vpcId(fooVpc.id()) .cidrBlock("10.1.2.0/24") .availabilityZone(available.names()[1]) .build()); var fooLoadBalancer = new LoadBalancer("fooLoadBalancer", LoadBalancerArgs.builder() .internal(true) .subnets( fooSubnet.id(), bar.id()) .build()); var fooWebAclAssociation = new WebAclAssociation("fooWebAclAssociation", WebAclAssociationArgs.builder() .resourceArn(fooLoadBalancer.arn()) .webAclId(fooWebAcl.id()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description WebAclAssociation(java.lang.String name)WebAclAssociation(java.lang.String name, WebAclAssociationArgs args)WebAclAssociation(java.lang.String name, WebAclAssociationArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static WebAclAssociationget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, WebAclAssociationState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>resourceArn()com.pulumi.core.Output<java.lang.String>webAclId()
-
-
-
Constructor Detail
-
WebAclAssociation
public WebAclAssociation(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
WebAclAssociation
public WebAclAssociation(java.lang.String name, WebAclAssociationArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
WebAclAssociation
public WebAclAssociation(java.lang.String name, WebAclAssociationArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
resourceArn
public com.pulumi.core.Output<java.lang.String> resourceArn()
- Returns:
- ARN of the resource to associate with. For example, an Application Load Balancer or API Gateway Stage.
-
webAclId
public com.pulumi.core.Output<java.lang.String> webAclId()
- Returns:
- The ID of the WAF Regional WebACL to create an association.
-
get
public static WebAclAssociation get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable WebAclAssociationState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-