aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationListenerProps

interface ApplicationListenerProps

LanguageType name
.NETAmazon.CDK.AWS.ElasticLoadBalancingV2.ApplicationListenerProps
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awselasticloadbalancingv2#ApplicationListenerProps
Javasoftware.amazon.awscdk.services.elasticloadbalancingv2.ApplicationListenerProps
Pythonaws_cdk.aws_elasticloadbalancingv2.ApplicationListenerProps
TypeScript (source)aws-cdk-lib » aws_elasticloadbalancingv2 » ApplicationListenerProps

Properties for defining a standalone ApplicationListener.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_elasticloadbalancingv2 as elbv2 } from 'aws-cdk-lib';

declare const applicationLoadBalancer: elbv2.ApplicationLoadBalancer;
declare const applicationTargetGroup: elbv2.ApplicationTargetGroup;
declare const listenerAction: elbv2.ListenerAction;
declare const listenerCertificate: elbv2.ListenerCertificate;
const applicationListenerProps: elbv2.ApplicationListenerProps = {
  loadBalancer: applicationLoadBalancer,

  // the properties below are optional
  certificates: [listenerCertificate],
  defaultAction: listenerAction,
  defaultTargetGroups: [applicationTargetGroup],
  open: false,
  port: 123,
  protocol: elbv2.ApplicationProtocol.HTTP,
  sslPolicy: elbv2.SslPolicy.RECOMMENDED_TLS,
};

Properties

NameTypeDescription
loadBalancerIApplicationLoadBalancerThe load balancer to attach this listener to.
certificates?IListenerCertificate[]Certificate list of ACM cert ARNs.
defaultAction?ListenerActionDefault action to take for requests to this listener.
defaultTargetGroups?IApplicationTargetGroup[]Default target groups to load balance to.
open?booleanAllow anyone to connect to the load balancer on the listener port.
port?numberThe port on which the listener listens for requests.
protocol?ApplicationProtocolThe protocol to use.
sslPolicy?SslPolicyThe security policy that defines which ciphers and protocols are supported.

loadBalancer

Type: IApplicationLoadBalancer

The load balancer to attach this listener to.


certificates?

Type: IListenerCertificate[] (optional, default: No certificates.)

Certificate list of ACM cert ARNs.

You must provide exactly one certificate if the listener protocol is HTTPS or TLS.


defaultAction?

Type: ListenerAction (optional, default: None.)

Default action to take for requests to this listener.

This allows full control of the default action of the load balancer, including Action chaining, fixed responses and redirect responses.

See the ListenerAction class for all options.

Cannot be specified together with defaultTargetGroups.


defaultTargetGroups?

Type: IApplicationTargetGroup[] (optional, default: None.)

Default target groups to load balance to.

All target groups will be load balanced to with equal weight and without stickiness. For a more complex configuration than that, use either defaultAction or addAction().

Cannot be specified together with defaultAction.


open?

Type: boolean (optional, default: true)

Allow anyone to connect to the load balancer on the listener port.

If this is specified, the load balancer will be opened up to anyone who can reach it. For internal load balancers this is anyone in the same VPC. For public load balancers, this is anyone on the internet.

If you want to be more selective about who can access this load balancer, set this to false and use the listener's connections object to selectively grant access to the load balancer on the listener port.


port?

Type: number (optional, default: Determined from protocol if known.)

The port on which the listener listens for requests.


protocol?

Type: ApplicationProtocol (optional, default: Determined from port if known.)

The protocol to use.


sslPolicy?

Type: SslPolicy (optional, default: The current predefined security policy.)

The security policy that defines which ciphers and protocols are supported.