Show / Hide Table of Contents

Enum SslPolicy

Elastic Load Balancing provides the following security policies for Application Load Balancers.

Namespace: Amazon.CDK.AWS.ElasticLoadBalancingV2
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public enum SslPolicy
Syntax (vb)
Public Enum SslPolicy
Remarks

We recommend the Recommended policy for general use. You can use the ForwardSecrecy policy if you require Forward Secrecy (FS).

You can use one of the TLS policies to meet compliance and security standards that require disabling certain TLS protocol versions, or to support legacy clients that require deprecated ciphers.

See: https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html

ExampleMetadata: infused

Examples
using Amazon.CDK.AWS.CertificateManager;
             using Amazon.CDK.AWS.EC2;
             using Amazon.CDK.AWS.ECS;
             using Amazon.CDK.AWS.ElasticLoadBalancingV2;
             using Amazon.CDK.AWS.Route53;

             var vpc = new Vpc(this, "Vpc", new VpcProps { MaxAzs = 1 });
             var loadBalancedFargateService = new ApplicationMultipleTargetGroupsFargateService(this, "myService", new ApplicationMultipleTargetGroupsFargateServiceProps {
                 Cluster = new Cluster(this, "EcsCluster", new ClusterProps { Vpc = vpc }),
                 MemoryLimitMiB = 256,
                 TaskImageOptions = new ApplicationLoadBalancedTaskImageProps {
                     Image = ContainerImage.FromRegistry("amazon/amazon-ecs-sample")
                 },
                 EnableExecuteCommand = true,
                 LoadBalancers = new [] { new ApplicationLoadBalancerProps {
                     Name = "lb",
                     IdleTimeout = Duration.Seconds(400),
                     DomainName = "api.example.com",
                     DomainZone = new PublicHostedZone(this, "HostedZone", new PublicHostedZoneProps { ZoneName = "example.com" }),
                     Listeners = new [] { new ApplicationListenerProps {
                         Name = "listener",
                         Protocol = ApplicationProtocol.HTTPS,
                         Certificate = Certificate.FromCertificateArn(this, "Cert", "helloworld"),
                         SslPolicy = SslPolicy.TLS12_EXT
                     } }
                 }, new ApplicationLoadBalancerProps {
                     Name = "lb2",
                     IdleTimeout = Duration.Seconds(120),
                     DomainName = "frontend.com",
                     DomainZone = new PublicHostedZone(this, "HostedZone", new PublicHostedZoneProps { ZoneName = "frontend.com" }),
                     Listeners = new [] { new ApplicationListenerProps {
                         Name = "listener2",
                         Protocol = ApplicationProtocol.HTTPS,
                         Certificate = Certificate.FromCertificateArn(this, "Cert2", "helloworld"),
                         SslPolicy = SslPolicy.TLS12_EXT
                     } }
                 } },
                 TargetGroups = new [] { new ApplicationTargetProps {
                     ContainerPort = 80,
                     Listener = "listener"
                 }, new ApplicationTargetProps {
                     ContainerPort = 90,
                     PathPattern = "a/b/c",
                     Priority = 10,
                     Listener = "listener"
                 }, new ApplicationTargetProps {
                     ContainerPort = 443,
                     Listener = "listener2"
                 }, new ApplicationTargetProps {
                     ContainerPort = 80,
                     PathPattern = "a/b/c",
                     Priority = 10,
                     Listener = "listener2"
                 } }
             });

Synopsis

Fields

FIPS_TLS13_10

TLS1.0 through 1.3 with all ciphers.

FIPS_TLS13_10_PQ

TLS 1.0 through 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_11

TLS1.1 through 1.3 with all ciphers.

FIPS_TLS13_12

TLS 1.2 and 1.3 with ECDHE SHA/GCM ciphers, excluding SHA1 ciphers.

FIPS_TLS13_12_EXT0

TLS 1.2 and 1.3 with all ECDHE ciphers.

FIPS_TLS13_12_EXT0_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_EXT1

TLS 1.2 and 1.3 with all AES and ECDHE ciphers excluding SHA1 ciphers.

FIPS_TLS13_12_EXT1_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_EXT2

TLS 1.2 and 1.3 with all ciphers.

FIPS_TLS13_12_EXT2_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_RES

TLS 1.2 and 1.3 with AES and ECDHE GCM/SHA ciphers.

FIPS_TLS13_12_RES_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_13

TLS 1.3 only with AES 128 and 256 GCM SHA ciphers.

FIPS_TLS13_13_PQ

TLS 1.3 only with post-quantum hybrid key exchange using ML-KEM.

FORWARD_SECRECY

Forward secrecy ciphers only.

FORWARD_SECRECY_TLS11

Forward secrecy ciphers only with TLS1.1 and 1.2.

FORWARD_SECRECY_TLS12

Forward secrecy ciphers and TLS1.2 only.

FORWARD_SECRECY_TLS12_RES

Strong forward secrecy ciphers and TLS1.2 only.

FORWARD_SECRECY_TLS12_RES_GCM

Strong foward secrecy ciphers and TLV1.2 only (2020 edition). Same as FORWARD_SECRECY_TLS12_RES, but only supports GCM versions of the TLS ciphers.

LEGACY

Support for DES-CBC3-SHA.

RECOMMENDED

The recommended policy for http listeners.

RECOMMENDED_TLS

The recommended security policy for TLS listeners. This is the default policy for listeners created using the AWS Management Console.

TLS11

TLS1.1 and 1.2 with all ciphers.

TLS12

TLS1.2 only and no SHA ciphers.

TLS12_EXT

TLS1.2 only with all ciphers.

TLS13_10

TLS1.0 through 1.3 with all ciphers.

TLS13_10_PQ

TLS 1.0 through 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_11

TLS1.1 through 1.3 with all ciphers.

TLS13_12_EXT1_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_EXT2_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_PQ

TLS 1.3 and 1.2 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_RES_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_13

TLS1.3 only.

TLS13_13_PQ

TLS 1.3 only with post-quantum hybrid key exchange using ML-KEM.

TLS13_EXT1

TLS1.2 and 1.3 and no SHA ciphers.

TLS13_EXT2

TLS1.2 and 1.3 with all ciphers.

TLS13_RES

TLS1.2 and 1.3.

Fields

Name Description
FIPS_TLS13_10

TLS1.0 through 1.3 with all ciphers.

FIPS_TLS13_10_PQ

TLS 1.0 through 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_11

TLS1.1 through 1.3 with all ciphers.

FIPS_TLS13_12

TLS 1.2 and 1.3 with ECDHE SHA/GCM ciphers, excluding SHA1 ciphers.

FIPS_TLS13_12_EXT0

TLS 1.2 and 1.3 with all ECDHE ciphers.

FIPS_TLS13_12_EXT0_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_EXT1

TLS 1.2 and 1.3 with all AES and ECDHE ciphers excluding SHA1 ciphers.

FIPS_TLS13_12_EXT1_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_EXT2

TLS 1.2 and 1.3 with all ciphers.

FIPS_TLS13_12_EXT2_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_12_RES

TLS 1.2 and 1.3 with AES and ECDHE GCM/SHA ciphers.

FIPS_TLS13_12_RES_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

FIPS_TLS13_13

TLS 1.3 only with AES 128 and 256 GCM SHA ciphers.

FIPS_TLS13_13_PQ

TLS 1.3 only with post-quantum hybrid key exchange using ML-KEM.

FORWARD_SECRECY

Forward secrecy ciphers only.

FORWARD_SECRECY_TLS11

Forward secrecy ciphers only with TLS1.1 and 1.2.

FORWARD_SECRECY_TLS12

Forward secrecy ciphers and TLS1.2 only.

FORWARD_SECRECY_TLS12_RES

Strong forward secrecy ciphers and TLS1.2 only.

FORWARD_SECRECY_TLS12_RES_GCM

Strong foward secrecy ciphers and TLV1.2 only (2020 edition). Same as FORWARD_SECRECY_TLS12_RES, but only supports GCM versions of the TLS ciphers.

LEGACY

Support for DES-CBC3-SHA.

RECOMMENDED

The recommended policy for http listeners.

RECOMMENDED_TLS

The recommended security policy for TLS listeners. This is the default policy for listeners created using the AWS Management Console.

TLS11

TLS1.1 and 1.2 with all ciphers.

TLS12

TLS1.2 only and no SHA ciphers.

TLS12_EXT

TLS1.2 only with all ciphers.

TLS13_10

TLS1.0 through 1.3 with all ciphers.

TLS13_10_PQ

TLS 1.0 through 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_11

TLS1.1 through 1.3 with all ciphers.

TLS13_12_EXT1_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_EXT2_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_PQ

TLS 1.3 and 1.2 with post-quantum hybrid key exchange using ML-KEM.

TLS13_12_RES_PQ

TLS 1.2 and 1.3 with post-quantum hybrid key exchange using ML-KEM.

TLS13_13

TLS1.3 only.

TLS13_13_PQ

TLS 1.3 only with post-quantum hybrid key exchange using ML-KEM.

TLS13_EXT1

TLS1.2 and 1.3 and no SHA ciphers.

TLS13_EXT2

TLS1.2 and 1.3 with all ciphers.

TLS13_RES

TLS1.2 and 1.3.

Back to top Generated by DocFX