Package com.pulumi.aws.elb
Class ListenerPolicy
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.elb.ListenerPolicy
-
public class ListenerPolicy extends com.pulumi.resources.CustomResourceAttaches a load balancer policy to an ELB Listener. ## Example Usage ### Custom Policy
This example shows how to customize the TLS settings of an HTTPS listener. ### AWS Predefined Security Policypackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import com.pulumi.aws.elb.LoadBalancerPolicy; import com.pulumi.aws.elb.LoadBalancerPolicyArgs; import com.pulumi.aws.elb.inputs.LoadBalancerPolicyPolicyAttributeArgs; import com.pulumi.aws.elb.ListenerPolicy; import com.pulumi.aws.elb.ListenerPolicyArgs; 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 wu_tang = new LoadBalancer("wu-tang", LoadBalancerArgs.builder() .listeners(LoadBalancerListenerArgs.builder() .instancePort(443) .instanceProtocol("http") .lbPort(443) .lbProtocol("https") .sslCertificateId("arn:aws:iam::000000000000:server-certificate/wu-tang.net") .build()) .name("wu-tang") .availabilityZones("us-east-1a") .tags(Map.of("Name", "wu-tang")) .build()); var wu_tang_ssl = new LoadBalancerPolicy("wu-tang-ssl", LoadBalancerPolicyArgs.builder() .policyAttributes( LoadBalancerPolicyPolicyAttributeArgs.builder() .name("ECDHE-ECDSA-AES128-GCM-SHA256") .value("true") .build(), LoadBalancerPolicyPolicyAttributeArgs.builder() .name("Protocol-TLSv1.2") .value("true") .build()) .loadBalancerName(wu_tang.name()) .policyName("wu-tang-ssl") .policyTypeName("SSLNegotiationPolicyType") .build()); var wu_tang_listener_policies_443 = new ListenerPolicy("wu-tang-listener-policies-443", ListenerPolicyArgs.builder() .loadBalancerName(wu_tang.name()) .loadBalancerPort(443) .policyNames(wu_tang_ssl.policyName()) .build()); } }
This example shows how to add a [Predefined Security Policy for ELBs](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-security-policy-table.html)package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.elb.LoadBalancer; import com.pulumi.aws.elb.LoadBalancerArgs; import com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs; import com.pulumi.aws.elb.LoadBalancerPolicy; import com.pulumi.aws.elb.LoadBalancerPolicyArgs; import com.pulumi.aws.elb.inputs.LoadBalancerPolicyPolicyAttributeArgs; import com.pulumi.aws.elb.ListenerPolicy; import com.pulumi.aws.elb.ListenerPolicyArgs; 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 wu_tang = new LoadBalancer("wu-tang", LoadBalancerArgs.builder() .listeners(LoadBalancerListenerArgs.builder() .instancePort(443) .instanceProtocol("http") .lbPort(443) .lbProtocol("https") .sslCertificateId("arn:aws:iam::000000000000:server-certificate/wu-tang.net") .build()) .name("wu-tang") .availabilityZones("us-east-1a") .tags(Map.of("Name", "wu-tang")) .build()); var wu_tang_ssl_tls_1_1 = new LoadBalancerPolicy("wu-tang-ssl-tls-1-1", LoadBalancerPolicyArgs.builder() .policyAttributes(LoadBalancerPolicyPolicyAttributeArgs.builder() .name("Reference-Security-Policy") .value("ELBSecurityPolicy-TLS-1-1-2017-01") .build()) .loadBalancerName(wu_tang.name()) .policyName("wu-tang-ssl") .policyTypeName("SSLNegotiationPolicyType") .build()); var wu_tang_listener_policies_443 = new ListenerPolicy("wu-tang-listener-policies-443", ListenerPolicyArgs.builder() .loadBalancerName(wu_tang.name()) .loadBalancerPort(443) .policyNames(wu_tang_ssl_tls_1_1.policyName()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description ListenerPolicy(java.lang.String name)ListenerPolicy(java.lang.String name, ListenerPolicyArgs args)ListenerPolicy(java.lang.String name, ListenerPolicyArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ListenerPolicyget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, ListenerPolicyState 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>loadBalancerName()com.pulumi.core.Output<java.lang.Integer>loadBalancerPort()com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>>policyNames()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>triggers()
-
-
-
Constructor Detail
-
ListenerPolicy
public ListenerPolicy(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
ListenerPolicy
public ListenerPolicy(java.lang.String name, ListenerPolicyArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
ListenerPolicy
public ListenerPolicy(java.lang.String name, ListenerPolicyArgs 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
-
loadBalancerName
public com.pulumi.core.Output<java.lang.String> loadBalancerName()
- Returns:
- The load balancer to attach the policy to.
-
loadBalancerPort
public com.pulumi.core.Output<java.lang.Integer> loadBalancerPort()
- Returns:
- The load balancer listener port to apply the policy to.
-
policyNames
public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> policyNames()
- Returns:
- List of Policy Names to apply to the backend server.
-
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.
-
triggers
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> triggers()
- Returns:
- Map of arbitrary keys and values that, when changed, will trigger an update.
-
get
public static ListenerPolicy get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable ListenerPolicyState 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.
-
-