ApplicationListenerProps Struct
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';
import { aws_elasticloadbalancingv2 as interfaces_elasticloadbalancingv2 } from 'aws-cdk-lib/interfaces';
declare const applicationLoadBalancer: elbv2.ApplicationLoadBalancer;
declare const applicationTargetGroup: elbv2.ApplicationTargetGroup;
declare const listenerAction: elbv2.ListenerAction;
declare const listenerCertificate: elbv2.ListenerCertificate;
declare const trustStoreRef: interfaces_elasticloadbalancingv2.ITrustStoreRef;
const applicationListenerProps: elbv2.ApplicationListenerProps = {
loadBalancer: applicationLoadBalancer,
// the properties below are optional
certificates: [listenerCertificate],
defaultAction: listenerAction,
defaultTargetGroups: [applicationTargetGroup],
mutualAuthentication: {
advertiseTrustStoreCaNames: false,
ignoreClientCertificateExpiry: false,
mutualAuthenticationMode: elbv2.MutualAuthenticationMode.OFF,
trustStore: trustStoreRef,
},
open: false,
port: 123,
protocol: elbv2.ApplicationProtocol.HTTP,
sslPolicy: elbv2.SslPolicy.RECOMMENDED_TLS,
};
Properties
certificatesIListenerCertificate[]certificatestyping.List[IListenerCertificate]certificatesList<IListenerCertificate>CertificatesIListenerCertificate[]Certificates*[]IListenerCertificate#Default: No certificates.
You must provide exactly one certificate if the listener protocol is HTTPS or TLS.
defaultActionListenerActiondefault_actionListenerActiondefaultActionListenerActionDefaultActionListenerActionDefaultActionListenerAction= None.#notes
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.
defaultTargetGroupsIApplicationTargetGroup[]default_target_groupstyping.List[IApplicationTargetGroup]defaultTargetGroupsList<IApplicationTargetGroup>DefaultTargetGroupsIApplicationTargetGroup[]DefaultTargetGroups*[]IApplicationTargetGroup= None.#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.
loadBalancerIApplicationLoadBalancerload_balancerIApplicationLoadBalancerloadBalancerIApplicationLoadBalancerLoadBalancerIApplicationLoadBalancerLoadBalancerIApplicationLoadBalancerrequired#mutualAuthenticationMutualAuthenticationmutual_authenticationMutualAuthenticationmutualAuthenticationMutualAuthenticationMutualAuthenticationMutualAuthenticationMutualAuthenticationMutualAuthentication#Default: No mutual authentication configuration
notes
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.
Default: Determined from protocol if known.
protocolApplicationProtocolprotocolApplicationProtocolprotocolApplicationProtocolProtocolApplicationProtocolProtocolApplicationProtocol#Default: Determined from port if known.