Package com.pulumi.aws.elb
Class LoadBalancerPolicy
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.elb.LoadBalancerPolicy
-
public class LoadBalancerPolicy extends com.pulumi.resources.CustomResourceProvides a load balancer policy, which can be attached to an ELB listener or backend server. ## Example Usagepackage 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.std.StdFunctions; import com.pulumi.std.inputs.FileArgs; import com.pulumi.aws.elb.LoadBalancerBackendServerPolicy; import com.pulumi.aws.elb.LoadBalancerBackendServerPolicyArgs; 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_ca_pubkey_policy = new LoadBalancerPolicy("wu-tang-ca-pubkey-policy", LoadBalancerPolicyArgs.builder() .policyAttributes(LoadBalancerPolicyPolicyAttributeArgs.builder() .name("PublicKey") .value(StdFunctions.file(FileArgs.builder() .input("wu-tang-pubkey") .build()).result()) .build()) .loadBalancerName(wu_tang.name()) .policyName("wu-tang-ca-pubkey-policy") .policyTypeName("PublicKeyPolicyType") .build()); var wu_tang_root_ca_backend_auth_policy = new LoadBalancerPolicy("wu-tang-root-ca-backend-auth-policy", LoadBalancerPolicyArgs.builder() .policyAttributes(LoadBalancerPolicyPolicyAttributeArgs.builder() .name("PublicKeyPolicyName") .value(wu_tang_root_ca_pubkey_policy.policyName()) .build()) .loadBalancerName(wu_tang.name()) .policyName("wu-tang-root-ca-backend-auth-policy") .policyTypeName("BackendServerAuthenticationPolicyType") .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_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_backend_auth_policies_443 = new LoadBalancerBackendServerPolicy("wu-tang-backend-auth-policies-443", LoadBalancerBackendServerPolicyArgs.builder() .loadBalancerName(wu_tang.name()) .instancePort(443) .policyNames(wu_tang_root_ca_backend_auth_policy.policyName()) .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()); } }
-
-
Constructor Summary
Constructors Constructor Description LoadBalancerPolicy(java.lang.String name)LoadBalancerPolicy(java.lang.String name, LoadBalancerPolicyArgs args)LoadBalancerPolicy(java.lang.String name, LoadBalancerPolicyArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LoadBalancerPolicyget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, LoadBalancerPolicyState 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.util.List<LoadBalancerPolicyPolicyAttribute>>policyAttributes()com.pulumi.core.Output<java.lang.String>policyName()com.pulumi.core.Output<java.lang.String>policyTypeName()com.pulumi.core.Output<java.lang.String>region()
-
-
-
Constructor Detail
-
LoadBalancerPolicy
public LoadBalancerPolicy(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
LoadBalancerPolicy
public LoadBalancerPolicy(java.lang.String name, LoadBalancerPolicyArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
LoadBalancerPolicy
public LoadBalancerPolicy(java.lang.String name, LoadBalancerPolicyArgs 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 on which the policy is defined.
-
policyAttributes
public com.pulumi.core.Output<java.util.List<LoadBalancerPolicyPolicyAttribute>> policyAttributes()
- Returns:
- Policy attribute to apply to the policy.
-
policyName
public com.pulumi.core.Output<java.lang.String> policyName()
- Returns:
- The name of the load balancer policy.
-
policyTypeName
public com.pulumi.core.Output<java.lang.String> policyTypeName()
- Returns:
- The policy type.
-
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.
-
get
public static LoadBalancerPolicy get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable LoadBalancerPolicyState 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.
-
-