@Generated(value="software.amazon.awssdk:codegen") public final class ViewerCertificate extends Object implements SdkPojo, Serializable, ToCopyableBuilder<ViewerCertificate.Builder,ViewerCertificate>
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 released after 2010 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.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ViewerCertificate.Builder |
| Modifier and Type | Method and Description |
|---|---|
String |
acmCertificateArn()
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. |
static ViewerCertificate.Builder |
builder() |
String |
certificate()
This field is deprecated.
|
CertificateSource |
certificateSource()
This field is deprecated.
|
String |
certificateSourceAsString()
This field is deprecated.
|
Boolean |
cloudFrontDefaultCertificate()
If the distribution uses the CloudFront domain name such as
d111111abcdef8.cloudfront.net, set this
field to true. |
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
int |
hashCode() |
String |
iamCertificateId()
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. |
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. |
String |
minimumProtocolVersionAsString()
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. |
List<SdkField<?>> |
sdkFields() |
static Class<? extends ViewerCertificate.Builder> |
serializableBuilderClass() |
SSLSupportMethod |
sslSupportMethod()
If the distribution uses
Aliases (alternate domain names or CNAMEs), specify which viewers the
distribution accepts HTTPS connections from. |
String |
sslSupportMethodAsString()
If the distribution uses
Aliases (alternate domain names or CNAMEs), specify which viewers the
distribution accepts HTTPS connections from. |
ViewerCertificate.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcopypublic Boolean cloudFrontDefaultCertificate()
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, set this
field to true.
If the distribution uses Aliases (alternate domain names or CNAMEs), set this field to
false and specify values for the following fields:
ACMCertificateArn or IAMCertificateId (specify a value for one, not both)
MinimumProtocolVersion
SSLSupportMethod
d111111abcdef8.cloudfront.net,
set this field to true.
If the distribution uses Aliases (alternate domain names or CNAMEs), set this field to
false and specify values for the following fields:
ACMCertificateArn or IAMCertificateId (specify a value for one, not both)
MinimumProtocolVersion
SSLSupportMethod
public String iamCertificateId()
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.
If you specify an IAM certificate ID, you must also specify values for MinimumProtocolVerison and
SSLSupportMethod.
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.
If you specify an IAM certificate ID, you must also specify values for
MinimumProtocolVerison and SSLSupportMethod.
public String acmCertificateArn()
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).
If you specify an ACM certificate ARN, you must also specify values for MinimumProtocolVerison and
SSLSupportMethod.
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).
If you specify an ACM certificate ARN, you must also specify values for
MinimumProtocolVerison and SSLSupportMethod.
public SSLSupportMethod sslSupportMethod()
If the distribution uses Aliases (alternate domain names or CNAMEs), specify which viewers the
distribution accepts HTTPS connections from.
sni-only – The distribution accepts HTTPS connections from only viewers that support server name indication (SNI). This is
recommended. Most browsers and clients released after 2010 support SNI.
vip – The distribution accepts HTTPS connections from all viewers including those that don’t support
SNI. This is not recommended, and results in additional monthly charges from CloudFront.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, don’t set
a value for this field.
If the service returns an enum value that is not available in the current SDK version, sslSupportMethod
will return SSLSupportMethod.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available
from sslSupportMethodAsString().
Aliases (alternate domain names or CNAMEs), specify which viewers
the distribution accepts HTTPS connections from.
sni-only – The distribution accepts HTTPS connections from only viewers that support server name indication (SNI). This is
recommended. Most browsers and clients released after 2010 support SNI.
vip – The distribution accepts HTTPS connections from all viewers including those that don’t
support SNI. This is not recommended, and results in additional monthly charges from CloudFront.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net,
don’t set a value for this field.
SSLSupportMethodpublic String sslSupportMethodAsString()
If the distribution uses Aliases (alternate domain names or CNAMEs), specify which viewers the
distribution accepts HTTPS connections from.
sni-only – The distribution accepts HTTPS connections from only viewers that support server name indication (SNI). This is
recommended. Most browsers and clients released after 2010 support SNI.
vip – The distribution accepts HTTPS connections from all viewers including those that don’t support
SNI. This is not recommended, and results in additional monthly charges from CloudFront.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, don’t set
a value for this field.
If the service returns an enum value that is not available in the current SDK version, sslSupportMethod
will return SSLSupportMethod.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available
from sslSupportMethodAsString().
Aliases (alternate domain names or CNAMEs), specify which viewers
the distribution accepts HTTPS connections from.
sni-only – The distribution accepts HTTPS connections from only viewers that support server name indication (SNI). This is
recommended. Most browsers and clients released after 2010 support SNI.
vip – The distribution accepts HTTPS connections from all viewers including those that don’t
support SNI. This is not recommended, and results in additional monthly charges from CloudFront.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net,
don’t set a value for this field.
SSLSupportMethodpublic 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:
The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.
The ciphers that CloudFront can use to encrypt the content that it returns to viewers.
For more information, see Security Policy and Supported Protocols and Ciphers Between Viewers and CloudFront in the Amazon CloudFront Developer Guide.
On the CloudFront console, this setting is called Security Policy.
We recommend that you specify TLSv1.2_2018 unless your viewers are using browsers or devices that
don’t support TLSv1.2.
When you’re using SNI only (you set SSLSupportMethod to sni-only), you must specify
TLSv1 or higher.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net (you set
CloudFrontDefaultCertificate to true), CloudFront automatically sets the security
policy to TLSv1 regardless of the value that you set here.
If the service returns an enum value that is not available in the current SDK version,
minimumProtocolVersion will return MinimumProtocolVersion.UNKNOWN_TO_SDK_VERSION. The raw value
returned by the service is available from minimumProtocolVersionAsString().
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:
The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.
The ciphers that CloudFront can use to encrypt the content that it returns to viewers.
For more information, see Security Policy and Supported Protocols and Ciphers Between Viewers and CloudFront in the Amazon CloudFront Developer Guide.
On the CloudFront console, this setting is called Security Policy.
We recommend that you specify TLSv1.2_2018 unless your viewers are using browsers or devices
that don’t support TLSv1.2.
When you’re using SNI only (you set SSLSupportMethod to sni-only), you must
specify TLSv1 or higher.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net
(you set CloudFrontDefaultCertificate to true), CloudFront automatically sets
the security policy to TLSv1 regardless of the value that you set here.
MinimumProtocolVersionpublic String minimumProtocolVersionAsString()
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:
The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.
The ciphers that CloudFront can use to encrypt the content that it returns to viewers.
For more information, see Security Policy and Supported Protocols and Ciphers Between Viewers and CloudFront in the Amazon CloudFront Developer Guide.
On the CloudFront console, this setting is called Security Policy.
We recommend that you specify TLSv1.2_2018 unless your viewers are using browsers or devices that
don’t support TLSv1.2.
When you’re using SNI only (you set SSLSupportMethod to sni-only), you must specify
TLSv1 or higher.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net (you set
CloudFrontDefaultCertificate to true), CloudFront automatically sets the security
policy to TLSv1 regardless of the value that you set here.
If the service returns an enum value that is not available in the current SDK version,
minimumProtocolVersion will return MinimumProtocolVersion.UNKNOWN_TO_SDK_VERSION. The raw value
returned by the service is available from minimumProtocolVersionAsString().
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:
The minimum SSL/TLS protocol that CloudFront can use to communicate with viewers.
The ciphers that CloudFront can use to encrypt the content that it returns to viewers.
For more information, see Security Policy and Supported Protocols and Ciphers Between Viewers and CloudFront in the Amazon CloudFront Developer Guide.
On the CloudFront console, this setting is called Security Policy.
We recommend that you specify TLSv1.2_2018 unless your viewers are using browsers or devices
that don’t support TLSv1.2.
When you’re using SNI only (you set SSLSupportMethod to sni-only), you must
specify TLSv1 or higher.
If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net
(you set CloudFrontDefaultCertificate to true), CloudFront automatically sets
the security policy to TLSv1 regardless of the value that you set here.
MinimumProtocolVersionpublic String certificate()
This field is deprecated. Use one of the following fields instead:
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
public CertificateSource certificateSource()
This field is deprecated. Use one of the following fields instead:
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
If the service returns an enum value that is not available in the current SDK version, certificateSource
will return CertificateSource.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available
from certificateSourceAsString().
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
CertificateSourcepublic String certificateSourceAsString()
This field is deprecated. Use one of the following fields instead:
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
If the service returns an enum value that is not available in the current SDK version, certificateSource
will return CertificateSource.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available
from certificateSourceAsString().
ACMCertificateArn
IAMCertificateId
CloudFrontDefaultCertificate
CertificateSourcepublic ViewerCertificate.Builder toBuilder()
toBuilder in interface ToCopyableBuilder<ViewerCertificate.Builder,ViewerCertificate>public static ViewerCertificate.Builder builder()
public static Class<? extends ViewerCertificate.Builder> serializableBuilderClass()
public boolean equalsBySdkFields(Object obj)
equalsBySdkFields in interface SdkPojopublic String toString()
Copyright © 2020. All rights reserved.