ViewerCertificate class

A complex type that determines the distribution’s SSL/TLS configuration for communicating with viewers.

If the distribution doesn’t use Aliases (also known as alternate domain names or CNAMEs)—that is, if the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net—set CloudFrontDefaultCertificate to true and leave all other fields empty.

If the distribution uses Aliases (alternate domain names or CNAMEs), use the fields in this type to specify the following settings:

  • Which viewers the distribution accepts HTTPS connections from: only viewers that support server name indication (SNI) (recommended), or all viewers including those that don’t support SNI.
    • To accept HTTPS connections from only viewers that support SNI, set SSLSupportMethod to sni-only. This is recommended. Most browsers and clients support SNI.
    • To accept HTTPS connections from all viewers, including those that don’t support SNI, set SSLSupportMethod to vip. This is not recommended, and results in additional monthly charges from CloudFront.
  • The minimum SSL/TLS protocol version that the distribution can use to communicate with viewers. To specify a minimum version, choose a value for MinimumProtocolVersion. For more information, see Security Policy in the Amazon CloudFront Developer Guide.
  • The location of the SSL/TLS certificate, AWS Certificate Manager (ACM) (recommended) or AWS Identity and Access Management (AWS IAM). You specify the location by setting a value in one of the following fields (not both):
    • ACMCertificateArn
    • IAMCertificateId
All distributions support HTTPS connections from viewers. To require viewers to use HTTPS only, or to redirect them from HTTP to HTTPS, use ViewerProtocolPolicy in the CacheBehavior or DefaultCacheBehavior. To specify how CloudFront should use SSL/TLS to communicate with your custom origin, use CustomOriginConfig.

For more information, see Using HTTPS with CloudFront and Using Alternate Domain Names and HTTPS in the Amazon CloudFront Developer Guide.

Constructors

ViewerCertificate({String? aCMCertificateArn, String? certificate, CertificateSource? certificateSource, bool? cloudFrontDefaultCertificate, String? iAMCertificateId, MinimumProtocolVersion? minimumProtocolVersion, SSLSupportMethod? sSLSupportMethod})
ViewerCertificate.fromXml(XmlElement elem)
factory

Properties

aCMCertificateArn String?
If the distribution uses Aliases (alternate domain names or CNAMEs) and the SSL/TLS certificate is stored in AWS Certificate Manager (ACM), provide the Amazon Resource Name (ARN) of the ACM certificate. CloudFront only supports ACM certificates in the US East (N. Virginia) Region (us-east-1).
final
certificate String?
This field is deprecated. Use one of the following fields instead:
final
certificateSource CertificateSource?
This field is deprecated. Use one of the following fields instead:
final
cloudFrontDefaultCertificate bool?
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, set this field to true.
final
hashCode int
The hash code for this object.
no setterinherited
iAMCertificateId String?
If the distribution uses Aliases (alternate domain names or CNAMEs) and the SSL/TLS certificate is stored in AWS Identity and Access Management (AWS IAM), provide the ID of the IAM certificate.
final
minimumProtocolVersion MinimumProtocolVersion?
If the distribution uses Aliases (alternate domain names or CNAMEs), specify the security policy that you want CloudFront to use for HTTPS connections with viewers. The security policy determines two settings:
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sSLSupportMethod SSLSupportMethod?
If the distribution uses Aliases (alternate domain names or CNAMEs), specify which viewers the distribution accepts HTTPS connections from.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
toXml(String elemName, {List<XmlAttribute>? attributes}) → XmlElement

Operators

operator ==(Object other) bool
The equality operator.
inherited