Package-level declarations

Types

Link copied to clipboard
data class CachePolicyConfig(val comment: String? = null, val defaultTtl: Double, val maxTtl: Double, val minTtl: Double, val name: String, val parametersInCacheKeyAndForwardedToOrigin: CachePolicyParametersInCacheKeyAndForwardedToOrigin)

A cache policy configuration. This configuration determines the following:

Link copied to clipboard
data class CachePolicyCookiesConfig(val cookieBehavior: String, val cookies: List<String>? = null)

An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in the cache key and in requests that CloudFront sends to the origin.

Link copied to clipboard
data class CachePolicyHeadersConfig(val headerBehavior: String, val headers: List<String>? = null)

An object that determines whether any HTTP headers (and if so, which headers) are included in the cache key and in requests that CloudFront sends to the origin.

data class CachePolicyParametersInCacheKeyAndForwardedToOrigin(val cookiesConfig: CachePolicyCookiesConfig, val enableAcceptEncodingBrotli: Boolean? = null, val enableAcceptEncodingGzip: Boolean, val headersConfig: CachePolicyHeadersConfig, val queryStringsConfig: CachePolicyQueryStringsConfig)

This object determines the values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer. The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find an object in its cache that matches the request's cache key. If you want to send values to the origin but not include them in the cache key, use `OriginRequestPolicy`.

Link copied to clipboard
data class CachePolicyQueryStringsConfig(val queryStringBehavior: String, val queryStrings: List<String>? = null)

An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in the cache key and in requests that CloudFront sends to the origin.

Link copied to clipboard

Origin access identity configuration. Send a `GET` request to the `/CloudFront API version/CloudFront/identity ID/config` resource.

Link copied to clipboard
data class ContinuousDeploymentPolicyConfig(val enabled: Boolean, val singleHeaderPolicyConfig: ContinuousDeploymentPolicyConfigSingleHeaderPolicyConfigProperties? = null, val singleWeightPolicyConfig: ContinuousDeploymentPolicyConfigSingleWeightPolicyConfigProperties? = null, val stagingDistributionDnsNames: List<String>, val trafficConfig: ContinuousDeploymentPolicyTrafficConfig? = null, val type: ContinuousDeploymentPolicyConfigType? = null)

Contains the configuration for a continuous deployment policy.

This configuration determines which HTTP requests are sent to the staging distribution. If the HTTP request contains a header and value that matches what you specify here, the request is sent to the staging distribution. Otherwise the request is sent to the primary distribution.

This configuration determines the percentage of HTTP requests that are sent to the staging distribution.

data class ContinuousDeploymentPolicySessionStickinessConfig(val idleTtl: Int, val maximumTtl: Int)

Session stickiness provides the ability to define multiple requests from a single viewer as a single session. This prevents the potentially inconsistent experience of sending some of a given user's requests to your staging distribution, while others are sent to your primary distribution. Define the session duration using TTL values.

data class ContinuousDeploymentPolicySingleHeaderConfig(val header: String, val value: String)

Determines which HTTP requests are sent to the staging distribution.

This configuration determines the percentage of HTTP requests that are sent to the staging distribution.

Link copied to clipboard

The traffic configuration of your continuous deployment.

Link copied to clipboard
data class DistributionCacheBehavior(val allowedMethods: List<String>? = null, val cachePolicyId: String? = null, val cachedMethods: List<String>? = null, val compress: Boolean? = null, val defaultTtl: Double? = null, val fieldLevelEncryptionId: String? = null, val forwardedValues: DistributionForwardedValues? = null, val functionAssociations: List<DistributionFunctionAssociation>? = null, val grpcConfig: DistributionGrpcConfig? = null, val lambdaFunctionAssociations: List<DistributionLambdaFunctionAssociation>? = null, val maxTtl: Double? = null, val minTtl: Double? = null, val originRequestPolicyId: String? = null, val pathPattern: String, val realtimeLogConfigArn: String? = null, val responseHeadersPolicyId: String? = null, val smoothStreaming: Boolean? = null, val targetOriginId: String, val trustedKeyGroups: List<String>? = null, val trustedSigners: List<String>? = null, val viewerProtocolPolicy: String)

A complex type that describes how CloudFront processes requests. You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used. For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see Quotas in the Amazon CloudFront Developer Guide. If you don't want to specify any cache behaviors, include only an empty `CacheBehaviors` element. Don't specify an empty individual `CacheBehavior` element, because this is invalid. For more information, see CacheBehaviors. To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty `CacheBehaviors` element. To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution. For more information about cache behaviors, see Cache Behavior Settings in the Amazon CloudFront Developer Guide.

Link copied to clipboard
data class DistributionConfig(val aliases: List<String>? = null, val anycastIpListId: String? = null, val cacheBehaviors: List<DistributionCacheBehavior>? = null, val cnames: List<String>? = null, val comment: String? = null, val connectionMode: DistributionConnectionMode? = null, val continuousDeploymentPolicyId: String? = null, val customErrorResponses: List<DistributionCustomErrorResponse>? = null, val customOrigin: DistributionLegacyCustomOrigin? = null, val defaultCacheBehavior: DistributionDefaultCacheBehavior, val defaultRootObject: String? = null, val enabled: Boolean, val httpVersion: String? = null, val ipv6Enabled: Boolean? = null, val logging: DistributionLogging? = null, val originGroups: DistributionOriginGroups? = null, val origins: List<DistributionOrigin>? = null, val priceClass: String? = null, val restrictions: DistributionRestrictions? = null, val s3Origin: DistributionLegacyS3Origin? = null, val staging: Boolean? = null, val tenantConfig: DistributionConfigTenantConfigProperties? = null, val viewerCertificate: DistributionViewerCertificate? = null, val webAclId: String? = null)

A distribution configuration.

Link copied to clipboard

A distribution tenant configuration.

Link copied to clipboard
data class DistributionCookies(val forward: String, val whitelistedNames: List<String>? = null)

This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. If you want to include cookies in the cache key, use a cache policy. For more information, see Creating cache policies in the Amazon CloudFront Developer Guide. If you want to send cookies to the origin but not include them in the cache key, use an origin request policy. For more information, see Creating origin request policies in the Amazon CloudFront Developer Guide. A complex type that specifies whether you want CloudFront to forward cookies to the origin and, if so, which ones. For more information about forwarding cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies in the Amazon CloudFront Developer Guide.

Link copied to clipboard
data class DistributionCustomErrorResponse(val errorCachingMinTtl: Double? = null, val errorCode: Int, val responseCode: Int? = null, val responsePagePath: String? = null)

A complex type that controls:

Link copied to clipboard
data class DistributionCustomOriginConfig(val httpPort: Int? = null, val httpsPort: Int? = null, val originKeepaliveTimeout: Int? = null, val originProtocolPolicy: String, val originReadTimeout: Int? = null, val originSslProtocols: List<String>? = null)

A custom origin. A custom origin is any origin that is not an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is configured with static website hostingis a custom origin.

Link copied to clipboard
data class DistributionDefaultCacheBehavior(val allowedMethods: List<String>? = null, val cachePolicyId: String? = null, val cachedMethods: List<String>? = null, val compress: Boolean? = null, val defaultTtl: Double? = null, val fieldLevelEncryptionId: String? = null, val forwardedValues: DistributionForwardedValues? = null, val functionAssociations: List<DistributionFunctionAssociation>? = null, val grpcConfig: DistributionGrpcConfig? = null, val lambdaFunctionAssociations: List<DistributionLambdaFunctionAssociation>? = null, val maxTtl: Double? = null, val minTtl: Double? = null, val originRequestPolicyId: String? = null, val realtimeLogConfigArn: String? = null, val responseHeadersPolicyId: String? = null, val smoothStreaming: Boolean? = null, val targetOriginId: String, val trustedKeyGroups: List<String>? = null, val trustedSigners: List<String>? = null, val viewerProtocolPolicy: String)

A complex type that describes the default cache behavior if you don't specify a `CacheBehavior` element or if request URLs don't match any of the values of `PathPattern` in `CacheBehavior` elements. You must create exactly one default cache behavior.

Link copied to clipboard
data class DistributionForwardedValues(val cookies: DistributionCookies? = null, val headers: List<String>? = null, val queryString: Boolean, val queryStringCacheKeys: List<String>? = null)

This field is deprecated. We recommend that you use a cache policy or an origin request policy instead of this field. If you want to include values in the cache key, use a cache policy. For more information, see Creating cache policies in the Amazon CloudFront Developer Guide. If you want to send values to the origin but not include them in the cache key, use an origin request policy. For more information, see Creating origin request policies in the Amazon CloudFront Developer Guide. A complex type that specifies how CloudFront handles query strings, cookies, and HTTP headers.

Link copied to clipboard
data class DistributionFunctionAssociation(val eventType: String? = null, val functionArn: String? = null)

A CloudFront function that is associated with a cache behavior in a CloudFront distribution.

Link copied to clipboard
data class DistributionGeoRestriction(val locations: List<String>? = null, val restrictionType: String)

A complex type that controls the countries in which your content is distributed. CF determines the location of your users using `MaxMind` GeoIP databases. To disable geo restriction, remove the Restrictions property from your stack template.

Link copied to clipboard
data class DistributionGrpcConfig(val enabled: Boolean)

Amazon CloudFront supports gRPC, an open-source remote procedure call (RPC) framework built on HTTP/2. gRPC offers bi-directional streaming and binary protocol that buffers payloads, making it suitable for applications that require low latency communications. To enable your distribution to handle gRPC requests, you must include HTTP/2 as one of the supported `HTTP` versions and allow `HTTP` methods, including `POST`. For more information, see Using gRPC with CloudFront distributions in the Amazon CloudFront Developer Guide.

Link copied to clipboard
data class DistributionLambdaFunctionAssociation(val eventType: String? = null, val includeBody: Boolean? = null, val lambdaFunctionArn: String? = null)

A complex type that contains a Lambda@Edge function association.

Link copied to clipboard
data class DistributionLegacyCustomOrigin(val dnsName: String, val httpPort: Int? = null, val httpsPort: Int? = null, val originProtocolPolicy: String, val originSslProtocols: List<String>)

A custom origin. A custom origin is any origin that is not an S3 bucket, with one exception. An S3 bucket that is configured with static website hostingis a custom origin. This property is legacy. We recommend that you use Origin instead.

Link copied to clipboard
data class DistributionLegacyS3Origin(val dnsName: String, val originAccessIdentity: String? = null)

The origin as an S3 bucket. This property is legacy. We recommend that you use Origin instead.

Link copied to clipboard
data class DistributionLogging(val bucket: String? = null, val includeCookies: Boolean? = null, val prefix: String? = null)

A complex type that specifies whether access logs are written for the distribution. If you already enabled standard logging (legacy) and you want to enable standard logging (v2) to send your access logs to Amazon S3, we recommend that you specify a different Amazon S3 bucket or use a separate path in the same bucket (for example, use a log prefix or partitioning). This helps you keep track of which log files are associated with which logging subscription and prevents log files from overwriting each other. For more information, see Standard logging (access logs) in the Amazon CloudFront Developer Guide.

Link copied to clipboard
data class DistributionOrigin(val connectionAttempts: Int? = null, val connectionTimeout: Int? = null, val customOriginConfig: DistributionCustomOriginConfig? = null, val domainName: String, val id: String, val originAccessControlId: String? = null, val originCustomHeaders: List<DistributionOriginCustomHeader>? = null, val originPath: String? = null, val originShield: DistributionOriginShield? = null, val s3OriginConfig: DistributionS3OriginConfig? = null, val vpcOriginConfig: DistributionVpcOriginConfig? = null)

An origin. An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers. To specify an origin:

Link copied to clipboard
data class DistributionOriginCustomHeader(val headerName: String, val headerValue: String)

A complex type that contains `HeaderName` and `HeaderValue` elements, if any, for this distribution.

Link copied to clipboard
data class DistributionOriginGroup(val failoverCriteria: DistributionOriginGroupFailoverCriteria, val id: String, val members: DistributionOriginGroupMembers, val selectionCriteria: DistributionOriginGroupSelectionCriteria? = null)

An origin group includes two origins (a primary origin and a secondary origin to failover to) and a failover criteria that you specify. You create an origin group to support origin failover in CloudFront. When you create or update a distribution, you can specify the origin group instead of a single origin, and CloudFront will failover from the primary origin to the secondary origin under the failover conditions that you've chosen. Optionally, you can choose selection criteria for your origin group to specify how your origins are selected when your distribution routes viewer requests.

Link copied to clipboard

A complex data type that includes information about the failover criteria for an origin group, including the status codes for which CloudFront will failover from the primary origin to the second origin.

Link copied to clipboard
data class DistributionOriginGroupMember(val originId: String)

An origin in an origin group.

Link copied to clipboard

A complex data type for the origins included in an origin group.

Link copied to clipboard
data class DistributionOriginGroups(val items: List<DistributionOriginGroup>? = null, val quantity: Int)

A complex data type for the origin groups specified for a distribution.

Link copied to clipboard
data class DistributionOriginShield(val enabled: Boolean? = null, val originShieldRegion: String? = null)

CloudFront Origin Shield. Using Origin Shield can help reduce the load on your origin. For more information, see Using Origin Shield in the Amazon CloudFront Developer Guide.

Link copied to clipboard

A list of parameter values to add to the resource. A parameter is specified as a key-value pair. A valid parameter value must exist for any parameter that is marked as required in the multi-tenant distribution.

Link copied to clipboard

A complex type that identifies ways in which you want to restrict distribution of your content.

Link copied to clipboard
data class DistributionS3OriginConfig(val originAccessIdentity: String? = null)

A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin or an S3 bucket that is configured as a website endpoint, use the `CustomOriginConfig` element instead.

Link copied to clipboard
data class DistributionStatusCodes(val items: List<Int>, val quantity: Int)

A complex data type for the status codes that you specify that, when returned by a primary origin, trigger CloudFront to failover to a second origin.

Link copied to clipboard
data class DistributionTenantCertificate(val arn: String? = null)

The ACMlong (ACM) certificate associated with your distribution.

Link copied to clipboard

Customizations for the distribution tenant. For each distribution tenant, you can specify the geographic restrictions, and the Amazon Resource Names (ARNs) for the ACM certificate and WAF web ACL. These are specific values that you can override or disable from the multi-tenant distribution that was used to create the distribution tenant.

Link copied to clipboard
data class DistributionTenantDomainResult(val domain: String? = null, val status: DistributionTenantDomainResultStatus? = null)

The details about the domain result.

The customizations that you specified for the distribution tenant for geographic restrictions.

data class DistributionTenantManagedCertificateRequest(val certificateTransparencyLoggingPreference: DistributionTenantManagedCertificateRequestCertificateTransparencyLoggingPreference? = null, val primaryDomainName: String? = null, val validationTokenHost: DistributionTenantManagedCertificateRequestValidationTokenHost? = null)

An object that represents the request for the Amazon CloudFront managed ACM certificate.

Link copied to clipboard
data class DistributionTenantParameter(val name: String? = null, val value: String? = null)

A list of parameter values to add to the resource. A parameter is specified as a key-value pair. A valid parameter value must exist for any parameter that is marked as required in the multi-tenant distribution.

Link copied to clipboard

The WAF web ACL customization specified for the distribution tenant.

Link copied to clipboard
data class DistributionViewerCertificate(val acmCertificateArn: String? = null, val cloudFrontDefaultCertificate: Boolean? = null, val iamCertificateId: String? = null, val minimumProtocolVersion: String? = null, val sslSupportMethod: String? = null)

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:

Link copied to clipboard
data class DistributionVpcOriginConfig(val originKeepaliveTimeout: Int? = null, val originReadTimeout: Int? = null, val vpcOriginId: String)

An Amazon CloudFront VPC origin configuration.

Link copied to clipboard
data class FunctionConfig(val comment: String, val keyValueStoreAssociations: List<FunctionKeyValueStoreAssociation>? = null, val runtime: String)

Contains configuration information about a CloudFront function.

Link copied to clipboard
data class FunctionKeyValueStoreAssociation(val keyValueStoreArn: String)

The key value store association.

Link copied to clipboard
data class FunctionMetadata(val functionArn: String? = null)

Contains metadata about a CloudFront function.

Link copied to clipboard
data class GetCachePolicyResult(val cachePolicyConfig: CachePolicyConfig? = null, val id: String? = null, val lastModifiedTime: String? = null)
Link copied to clipboard
data class GetCloudFrontOriginAccessIdentityResult(val cloudFrontOriginAccessIdentityConfig: CloudFrontOriginAccessIdentityConfig? = null, val id: String? = null, val s3CanonicalUserId: String? = null)
Link copied to clipboard
data class GetConnectionGroupResult(val anycastIpListId: String? = null, val arn: String? = null, val createdTime: String? = null, val eTag: String? = null, val enabled: Boolean? = null, val id: String? = null, val ipv6Enabled: Boolean? = null, val isDefault: Boolean? = null, val lastModifiedTime: String? = null, val routingEndpoint: String? = null, val status: String? = null, val tags: List<Tag>? = null)
Link copied to clipboard
data class GetContinuousDeploymentPolicyResult(val continuousDeploymentPolicyConfig: ContinuousDeploymentPolicyConfig? = null, val id: String? = null, val lastModifiedTime: String? = null)
Link copied to clipboard
data class GetDistributionResult(val distributionConfig: DistributionConfig? = null, val domainName: String? = null, val id: String? = null, val tags: List<Tag>? = null)
Link copied to clipboard
data class GetDistributionTenantResult(val arn: String? = null, val connectionGroupId: String? = null, val createdTime: String? = null, val customizations: DistributionTenantCustomizations? = null, val distributionId: String? = null, val domainResults: List<DistributionTenantDomainResult>? = null, val domains: List<String>? = null, val eTag: String? = null, val enabled: Boolean? = null, val id: String? = null, val lastModifiedTime: String? = null, val parameters: List<DistributionTenantParameter>? = null, val status: String? = null, val tags: List<Tag>? = null)
Link copied to clipboard
data class GetFunctionResult(val functionArn: String? = null, val functionCode: String? = null, val functionConfig: FunctionConfig? = null, val functionMetadata: FunctionMetadata? = null, val name: String? = null, val stage: String? = null)
Link copied to clipboard
data class GetKeyGroupResult(val id: String? = null, val keyGroupConfig: KeyGroupConfig? = null, val lastModifiedTime: String? = null)
Link copied to clipboard
data class GetKeyValueStoreResult(val arn: String? = null, val comment: String? = null, val id: String? = null, val status: String? = null)
Link copied to clipboard
data class GetMonitoringSubscriptionResult(val monitoringSubscription: MonitoringSubscription? = null)
Link copied to clipboard
data class GetOriginAccessControlResult(val id: String? = null, val originAccessControlConfig: OriginAccessControlConfig? = null)
Link copied to clipboard
data class GetOriginRequestPolicyResult(val id: String? = null, val lastModifiedTime: String? = null, val originRequestPolicyConfig: OriginRequestPolicyConfig? = null)
Link copied to clipboard
data class GetPublicKeyResult(val createdTime: String? = null, val id: String? = null, val publicKeyConfig: PublicKeyConfig? = null)
Link copied to clipboard
data class GetRealtimeLogConfigResult(val arn: String? = null, val endPoints: List<RealtimeLogConfigEndPoint>? = null, val fields: List<String>? = null, val samplingRate: Double? = null)
Link copied to clipboard
data class GetResponseHeadersPolicyResult(val id: String? = null, val lastModifiedTime: String? = null, val responseHeadersPolicyConfig: ResponseHeadersPolicyConfig? = null)
Link copied to clipboard
data class GetVpcOriginResult(val arn: String? = null, val createdTime: String? = null, val id: String? = null, val lastModifiedTime: String? = null, val status: String? = null, val tags: List<Tag>? = null, val vpcOriginEndpointConfig: VpcOriginEndpointConfig? = null)
Link copied to clipboard
data class KeyGroupConfig(val comment: String? = null, val items: List<String>, val name: String)

A key group configuration. A key group contains a list of public keys that you can use with CloudFront signed URLs and signed cookies.

Link copied to clipboard
data class KeyValueStoreImportSource(val sourceArn: String, val sourceType: String)

The import source for the key value store.

Link copied to clipboard
data class MonitoringSubscription(val realtimeMetricsSubscriptionConfig: MonitoringSubscriptionRealtimeMetricsSubscriptionConfig? = null)

A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution.

A subscription configuration for additional CloudWatch metrics.

Link copied to clipboard
data class OriginAccessControlConfig(val description: String? = null, val name: String, val originAccessControlOriginType: String, val signingBehavior: String, val signingProtocol: String)

Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin. This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront. For more information about using a CloudFront origin access control, see Restricting access to an origin in the Amazon CloudFront Developer Guide.

Link copied to clipboard
data class OriginRequestPolicyConfig(val comment: String? = null, val cookiesConfig: OriginRequestPolicyCookiesConfig, val headersConfig: OriginRequestPolicyHeadersConfig, val name: String, val queryStringsConfig: OriginRequestPolicyQueryStringsConfig)

An origin request policy configuration. This configuration determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:

Link copied to clipboard
data class OriginRequestPolicyCookiesConfig(val cookieBehavior: String, val cookies: List<String>? = null)

An object that determines whether any cookies in viewer requests (and if so, which cookies) are included in requests that CloudFront sends to the origin.

Link copied to clipboard
data class OriginRequestPolicyHeadersConfig(val headerBehavior: String, val headers: List<String>? = null)

An object that determines whether any HTTP headers (and if so, which headers) are included in requests that CloudFront sends to the origin.

Link copied to clipboard
data class OriginRequestPolicyQueryStringsConfig(val queryStringBehavior: String, val queryStrings: List<String>? = null)

An object that determines whether any URL query strings in viewer requests (and if so, which query strings) are included in requests that CloudFront sends to the origin.

Link copied to clipboard
data class PublicKeyConfig(val callerReference: String, val comment: String? = null, val encodedKey: String, val name: String)

Configuration information about a public key that you can use with signed URLs and signed cookies, or with field-level encryption.

Link copied to clipboard
data class RealtimeLogConfigEndPoint(val kinesisStreamConfig: RealtimeLogConfigKinesisStreamConfig, val streamType: String)

Contains information about the Amazon Kinesis data stream where you are sending real-time log data for this real-time log configuration.

Link copied to clipboard
data class RealtimeLogConfigKinesisStreamConfig(val roleArn: String, val streamArn: String)

Contains information about the Amazon Kinesis data stream where you are sending real-time log data.

A list of HTTP header names that CloudFront includes as values for the `Access-Control-Allow-Headers` HTTP response header. For more information about the `Access-Control-Allow-Headers` HTTP response header, see Access-Control-Allow-Headers in the MDN Web Docs.

A list of HTTP methods that CloudFront includes as values for the `Access-Control-Allow-Methods` HTTP response header. For more information about the `Access-Control-Allow-Methods` HTTP response header, see Access-Control-Allow-Methods in the MDN Web Docs.

A list of origins (domain names) that CloudFront can use as the value for the `Access-Control-Allow-Origin` HTTP response header. For more information about the `Access-Control-Allow-Origin` HTTP response header, see Access-Control-Allow-Origin in the MDN Web Docs.

A list of HTTP headers that CloudFront includes as values for the `Access-Control-Expose-Headers` HTTP response header. For more information about the `Access-Control-Expose-Headers` HTTP response header, see Access-Control-Expose-Headers in the MDN Web Docs.

Link copied to clipboard
data class ResponseHeadersPolicyConfig(val comment: String? = null, val corsConfig: ResponseHeadersPolicyCorsConfig? = null, val customHeadersConfig: ResponseHeadersPolicyCustomHeadersConfig? = null, val name: String, val removeHeadersConfig: ResponseHeadersPolicyRemoveHeadersConfig? = null, val securityHeadersConfig: ResponseHeadersPolicySecurityHeadersConfig? = null, val serverTimingHeadersConfig: ResponseHeadersPolicyServerTimingHeadersConfig? = null)

A response headers policy configuration. A response headers policy configuration contains metadata about the response headers policy, and configurations for sets of HTTP response headers.

data class ResponseHeadersPolicyContentSecurityPolicy(val contentSecurityPolicy: String, val override: Boolean)

The policy directives and their values that CloudFront includes as values for the `Content-Security-Policy` HTTP response header. For more information about the `Content-Security-Policy` HTTP response header, see Content-Security-Policy in the MDN Web Docs.

Link copied to clipboard

Determines whether CloudFront includes the `X-Content-Type-Options` HTTP response header with its value set to `nosniff`. For more information about the `X-Content-Type-Options` HTTP response header, see X-Content-Type-Options in the MDN Web Docs.

Link copied to clipboard
data class ResponseHeadersPolicyCorsConfig(val accessControlAllowCredentials: Boolean, val accessControlAllowHeaders: ResponseHeadersPolicyAccessControlAllowHeaders, val accessControlAllowMethods: ResponseHeadersPolicyAccessControlAllowMethods, val accessControlAllowOrigins: ResponseHeadersPolicyAccessControlAllowOrigins, val accessControlExposeHeaders: ResponseHeadersPolicyAccessControlExposeHeaders? = null, val accessControlMaxAgeSec: Int? = null, val originOverride: Boolean)

A configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS). CloudFront adds these headers to HTTP responses that it sends for CORS requests that match a cache behavior associated with this response headers policy. For more information about CORS, see Cross-Origin Resource Sharing (CORS) in the MDN Web Docs.

Link copied to clipboard
data class ResponseHeadersPolicyCustomHeader(val header: String, val override: Boolean, val value: String)

An HTTP response header name and its value. CloudFront includes this header in HTTP responses that it sends for requests that match a cache behavior that's associated with this response headers policy.

Link copied to clipboard

A list of HTTP response header names and their values. CloudFront includes these headers in HTTP responses that it sends for requests that match a cache behavior that's associated with this response headers policy.

Link copied to clipboard
data class ResponseHeadersPolicyFrameOptions(val frameOption: String, val override: Boolean)

Determines whether CloudFront includes the `X-Frame-Options` HTTP response header and the header's value. For more information about the `X-Frame-Options` HTTP response header, see X-Frame-Options in the MDN Web Docs.

Link copied to clipboard
data class ResponseHeadersPolicyReferrerPolicy(val override: Boolean, val referrerPolicy: String)

Determines whether CloudFront includes the `Referrer-Policy` HTTP response header and the header's value. For more information about the `Referrer-Policy` HTTP response header, see Referrer-Policy in the MDN Web Docs.

Link copied to clipboard

The name of an HTTP header that CloudFront removes from HTTP responses to requests that match the cache behavior that this response headers policy is attached to.

Link copied to clipboard

A list of HTTP header names that CloudFront removes from HTTP responses to requests that match the cache behavior that this response headers policy is attached to.

data class ResponseHeadersPolicySecurityHeadersConfig(val contentSecurityPolicy: ResponseHeadersPolicyContentSecurityPolicy? = null, val contentTypeOptions: ResponseHeadersPolicyContentTypeOptions? = null, val frameOptions: ResponseHeadersPolicyFrameOptions? = null, val referrerPolicy: ResponseHeadersPolicyReferrerPolicy? = null, val strictTransportSecurity: ResponseHeadersPolicyStrictTransportSecurity? = null, val xssProtection: ResponseHeadersPolicyXssProtection? = null)

A configuration for a set of security-related HTTP response headers. CloudFront adds these headers to HTTP responses that it sends for requests that match a cache behavior associated with this response headers policy.

data class ResponseHeadersPolicyServerTimingHeadersConfig(val enabled: Boolean, val samplingRate: Double? = null)

A configuration for enabling the `Server-Timing` header in HTTP responses sent from CloudFront.

data class ResponseHeadersPolicyStrictTransportSecurity(val accessControlMaxAgeSec: Int, val includeSubdomains: Boolean? = null, val override: Boolean, val preload: Boolean? = null)

Determines whether CloudFront includes the `Strict-Transport-Security` HTTP response header and the header's value. For more information about the `Strict-Transport-Security` HTTP response header, see Strict-Transport-Security in the MDN Web Docs.

Link copied to clipboard
data class ResponseHeadersPolicyXssProtection(val modeBlock: Boolean? = null, val override: Boolean, val protection: Boolean, val reportUri: String? = null)

Determines whether CloudFront includes the `X-XSS-Protection` HTTP response header and the header's value. For more information about the `X-XSS-Protection` HTTP response header, see X-XSS-Protection in the MDN Web Docs.

Link copied to clipboard
data class VpcOriginEndpointConfig(val arn: String, val httpPort: Int? = null, val httpsPort: Int? = null, val name: String, val originProtocolPolicy: String? = null, val originSslProtocols: List<String>? = null)

An Amazon CloudFront VPC origin endpoint configuration.