Class: Aws::CloudFront::Types::CreateDistributionRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::CloudFront::Types::CreateDistributionRequest
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-cloudfront/types.rb
Overview
Note:
When making an API call, you may pass CreateDistributionRequest data as a hash:
{
distribution_config: { # required
caller_reference: "string", # required
aliases: {
quantity: 1, # required
items: ["string"],
},
default_root_object: "string",
origins: { # required
quantity: 1, # required
items: [ # required
{
id: "string", # required
domain_name: "string", # required
origin_path: "string",
custom_headers: {
quantity: 1, # required
items: [
{
header_name: "string", # required
header_value: "string", # required
},
],
},
s3_origin_config: {
origin_access_identity: "string", # required
},
custom_origin_config: {
http_port: 1, # required
https_port: 1, # required
origin_protocol_policy: "http-only", # required, accepts http-only, match-viewer, https-only
origin_ssl_protocols: {
quantity: 1, # required
items: ["SSLv3"], # required, accepts SSLv3, TLSv1, TLSv1.1, TLSv1.2
},
origin_read_timeout: 1,
origin_keepalive_timeout: 1,
},
connection_attempts: 1,
connection_timeout: 1,
origin_shield: {
enabled: false, # required
origin_shield_region: "OriginShieldRegion",
},
},
],
},
origin_groups: {
quantity: 1, # required
items: [
{
id: "string", # required
failover_criteria: { # required
status_codes: { # required
quantity: 1, # required
items: [1], # required
},
},
members: { # required
quantity: 1, # required
items: [ # required
{
origin_id: "string", # required
},
],
},
},
],
},
default_cache_behavior: { # required
target_origin_id: "string", # required
trusted_signers: {
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
trusted_key_groups: {
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
allowed_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
cached_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
},
},
smooth_streaming: false,
compress: false,
lambda_function_associations: {
quantity: 1, # required
items: [
{
lambda_function_arn: "LambdaFunctionARN", # required
event_type: "viewer-request", # required, accepts viewer-request, viewer-response, origin-request, origin-response
include_body: false,
},
],
},
function_associations: {
quantity: 1, # required
items: [
{
function_arn: "FunctionARN", # required
event_type: "viewer-request", # required, accepts viewer-request, viewer-response, origin-request, origin-response
},
],
},
field_level_encryption_id: "string",
realtime_log_config_arn: "string",
cache_policy_id: "string",
origin_request_policy_id: "string",
forwarded_values: {
query_string: false, # required
cookies: { # required
forward: "none", # required, accepts none, whitelist, all
whitelisted_names: {
quantity: 1, # required
items: ["string"],
},
},
headers: {
quantity: 1, # required
items: ["string"],
},
query_string_cache_keys: {
quantity: 1, # required
items: ["string"],
},
},
min_ttl: 1,
default_ttl: 1,
max_ttl: 1,
},
cache_behaviors: {
quantity: 1, # required
items: [
{
path_pattern: "string", # required
target_origin_id: "string", # required
trusted_signers: {
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
trusted_key_groups: {
enabled: false, # required
quantity: 1, # required
items: ["string"],
},
viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https
allowed_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
cached_methods: {
quantity: 1, # required
items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE
},
},
smooth_streaming: false,
compress: false,
lambda_function_associations: {
quantity: 1, # required
items: [
{
lambda_function_arn: "LambdaFunctionARN", # required
event_type: "viewer-request", # required, accepts viewer-request, viewer-response, origin-request, origin-response
include_body: false,
},
],
},
function_associations: {
quantity: 1, # required
items: [
{
function_arn: "FunctionARN", # required
event_type: "viewer-request", # required, accepts viewer-request, viewer-response, origin-request, origin-response
},
],
},
field_level_encryption_id: "string",
realtime_log_config_arn: "string",
cache_policy_id: "string",
origin_request_policy_id: "string",
forwarded_values: {
query_string: false, # required
cookies: { # required
forward: "none", # required, accepts none, whitelist, all
whitelisted_names: {
quantity: 1, # required
items: ["string"],
},
},
headers: {
quantity: 1, # required
items: ["string"],
},
query_string_cache_keys: {
quantity: 1, # required
items: ["string"],
},
},
min_ttl: 1,
default_ttl: 1,
max_ttl: 1,
},
],
},
custom_error_responses: {
quantity: 1, # required
items: [
{
error_code: 1, # required
response_page_path: "string",
response_code: "string",
error_caching_min_ttl: 1,
},
],
},
comment: "CommentType", # required
logging: {
enabled: false, # required
include_cookies: false, # required
bucket: "string", # required
prefix: "string", # required
},
price_class: "PriceClass_100", # accepts PriceClass_100, PriceClass_200, PriceClass_All
enabled: false, # required
viewer_certificate: {
cloud_front_default_certificate: false,
iam_certificate_id: "string",
acm_certificate_arn: "string",
ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021
certificate: "string",
certificate_source: "cloudfront", # accepts cloudfront, iam, acm
},
restrictions: {
geo_restriction: { # required
restriction_type: "blacklist", # required, accepts blacklist, whitelist, none
quantity: 1, # required
items: ["string"],
},
},
web_acl_id: "string",
http_version: "http1.1", # accepts http1.1, http2
is_ipv6_enabled: false,
},
}
The request to create a new distribution.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#distribution_config ⇒ Types::DistributionConfig
The distribution’s configuration information.
Instance Attribute Details
#distribution_config ⇒ Types::DistributionConfig
The distribution’s configuration information.
2078 2079 2080 2081 2082 |
# File 'lib/aws-sdk-cloudfront/types.rb', line 2078 class CreateDistributionRequest < Struct.new( :distribution_config) SENSITIVE = [] include Aws::Structure end |