aws-sdk-cloudfront 1.57.0 → 1.61.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_xml.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::CloudFront
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestXml)
78
80
 
@@ -119,7 +121,9 @@ module Aws::CloudFront
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::CloudFront
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -275,6 +283,15 @@ module Aws::CloudFront
275
283
  # ** Please note ** When response stubbing is enabled, no HTTP
276
284
  # requests are made, and retries are disabled.
277
285
  #
286
+ # @option options [Boolean] :use_dualstack_endpoint
287
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
288
+ # will be used if available.
289
+ #
290
+ # @option options [Boolean] :use_fips_endpoint
291
+ # When set to `true`, fips compatible endpoints will be used if available.
292
+ # When a `fips` region is used, the region is normalized and this config
293
+ # is set to `true`.
294
+ #
278
295
  # @option options [Boolean] :validate_params (true)
279
296
  # When `true`, request parameters are validated before
280
297
  # sending the request.
@@ -286,7 +303,7 @@ module Aws::CloudFront
286
303
  # seconds to wait when opening a HTTP session before raising a
287
304
  # `Timeout::Error`.
288
305
  #
289
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
290
307
  # number of seconds to wait for response data. This value can
291
308
  # safely be set per-request on the session.
292
309
  #
@@ -302,6 +319,9 @@ module Aws::CloudFront
302
319
  # disables this behaviour. This value can safely be set per
303
320
  # request on the session.
304
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
305
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
306
326
  # HTTP debug output will be sent to the `:logger`.
307
327
  #
@@ -578,7 +598,7 @@ module Aws::CloudFront
578
598
  # items: [
579
599
  # {
580
600
  # header_name: "string", # required
581
- # header_value: "string", # required
601
+ # header_value: "sensitiveStringType", # required
582
602
  # },
583
603
  # ],
584
604
  # },
@@ -673,6 +693,7 @@ module Aws::CloudFront
673
693
  # realtime_log_config_arn: "string",
674
694
  # cache_policy_id: "string",
675
695
  # origin_request_policy_id: "string",
696
+ # response_headers_policy_id: "string",
676
697
  # forwarded_values: {
677
698
  # query_string: false, # required
678
699
  # cookies: { # required
@@ -745,6 +766,7 @@ module Aws::CloudFront
745
766
  # realtime_log_config_arn: "string",
746
767
  # cache_policy_id: "string",
747
768
  # origin_request_policy_id: "string",
769
+ # response_headers_policy_id: "string",
748
770
  # forwarded_values: {
749
771
  # query_string: false, # required
750
772
  # cookies: { # required
@@ -900,6 +922,7 @@ module Aws::CloudFront
900
922
  # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
901
923
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
902
924
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
925
+ # resp.distribution.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
903
926
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
904
927
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
905
928
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -948,6 +971,7 @@ module Aws::CloudFront
948
971
  # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
949
972
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
950
973
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
974
+ # resp.distribution.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
951
975
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
952
976
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
953
977
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -1038,7 +1062,7 @@ module Aws::CloudFront
1038
1062
  # items: [
1039
1063
  # {
1040
1064
  # header_name: "string", # required
1041
- # header_value: "string", # required
1065
+ # header_value: "sensitiveStringType", # required
1042
1066
  # },
1043
1067
  # ],
1044
1068
  # },
@@ -1133,6 +1157,7 @@ module Aws::CloudFront
1133
1157
  # realtime_log_config_arn: "string",
1134
1158
  # cache_policy_id: "string",
1135
1159
  # origin_request_policy_id: "string",
1160
+ # response_headers_policy_id: "string",
1136
1161
  # forwarded_values: {
1137
1162
  # query_string: false, # required
1138
1163
  # cookies: { # required
@@ -1205,6 +1230,7 @@ module Aws::CloudFront
1205
1230
  # realtime_log_config_arn: "string",
1206
1231
  # cache_policy_id: "string",
1207
1232
  # origin_request_policy_id: "string",
1233
+ # response_headers_policy_id: "string",
1208
1234
  # forwarded_values: {
1209
1235
  # query_string: false, # required
1210
1236
  # cookies: { # required
@@ -1369,6 +1395,7 @@ module Aws::CloudFront
1369
1395
  # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
1370
1396
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
1371
1397
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
1398
+ # resp.distribution.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
1372
1399
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
1373
1400
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
1374
1401
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -1417,6 +1444,7 @@ module Aws::CloudFront
1417
1444
  # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
1418
1445
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
1419
1446
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
1447
+ # resp.distribution.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
1420
1448
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
1421
1449
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
1422
1450
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -2051,6 +2079,151 @@ module Aws::CloudFront
2051
2079
  req.send_request(options)
2052
2080
  end
2053
2081
 
2082
+ # Creates a response headers policy.
2083
+ #
2084
+ # A response headers policy contains information about a set of HTTP
2085
+ # response headers and their values. To create a response headers
2086
+ # policy, you provide some metadata about the policy, and a set of
2087
+ # configurations that specify the response headers.
2088
+ #
2089
+ # After you create a response headers policy, you can use its ID to
2090
+ # attach it to one or more cache behaviors in a CloudFront distribution.
2091
+ # When it’s attached to a cache behavior, CloudFront adds the headers in
2092
+ # the policy to HTTP responses that it sends for requests that match the
2093
+ # cache behavior.
2094
+ #
2095
+ # @option params [required, Types::ResponseHeadersPolicyConfig] :response_headers_policy_config
2096
+ # Contains metadata about the response headers policy, and a set of
2097
+ # configurations that specify the response headers.
2098
+ #
2099
+ # @return [Types::CreateResponseHeadersPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2100
+ #
2101
+ # * {Types::CreateResponseHeadersPolicyResult#response_headers_policy #response_headers_policy} => Types::ResponseHeadersPolicy
2102
+ # * {Types::CreateResponseHeadersPolicyResult#location #location} => String
2103
+ # * {Types::CreateResponseHeadersPolicyResult#etag #etag} => String
2104
+ #
2105
+ # @example Request syntax with placeholder values
2106
+ #
2107
+ # resp = client.create_response_headers_policy({
2108
+ # response_headers_policy_config: { # required
2109
+ # comment: "string",
2110
+ # name: "string", # required
2111
+ # cors_config: {
2112
+ # access_control_allow_origins: { # required
2113
+ # quantity: 1, # required
2114
+ # items: ["string"], # required
2115
+ # },
2116
+ # access_control_allow_headers: { # required
2117
+ # quantity: 1, # required
2118
+ # items: ["string"], # required
2119
+ # },
2120
+ # access_control_allow_methods: { # required
2121
+ # quantity: 1, # required
2122
+ # items: ["GET"], # required, accepts GET, POST, OPTIONS, PUT, DELETE, PATCH, HEAD, ALL
2123
+ # },
2124
+ # access_control_allow_credentials: false, # required
2125
+ # access_control_expose_headers: {
2126
+ # quantity: 1, # required
2127
+ # items: ["string"],
2128
+ # },
2129
+ # access_control_max_age_sec: 1,
2130
+ # origin_override: false, # required
2131
+ # },
2132
+ # security_headers_config: {
2133
+ # xss_protection: {
2134
+ # override: false, # required
2135
+ # protection: false, # required
2136
+ # mode_block: false,
2137
+ # report_uri: "string",
2138
+ # },
2139
+ # frame_options: {
2140
+ # override: false, # required
2141
+ # frame_option: "DENY", # required, accepts DENY, SAMEORIGIN
2142
+ # },
2143
+ # referrer_policy: {
2144
+ # override: false, # required
2145
+ # referrer_policy: "no-referrer", # required, accepts no-referrer, no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url
2146
+ # },
2147
+ # content_security_policy: {
2148
+ # override: false, # required
2149
+ # content_security_policy: "string", # required
2150
+ # },
2151
+ # content_type_options: {
2152
+ # override: false, # required
2153
+ # },
2154
+ # strict_transport_security: {
2155
+ # override: false, # required
2156
+ # include_subdomains: false,
2157
+ # preload: false,
2158
+ # access_control_max_age_sec: 1, # required
2159
+ # },
2160
+ # },
2161
+ # custom_headers_config: {
2162
+ # quantity: 1, # required
2163
+ # items: [
2164
+ # {
2165
+ # header: "string", # required
2166
+ # value: "string", # required
2167
+ # override: false, # required
2168
+ # },
2169
+ # ],
2170
+ # },
2171
+ # },
2172
+ # })
2173
+ #
2174
+ # @example Response structure
2175
+ #
2176
+ # resp.response_headers_policy.id #=> String
2177
+ # resp.response_headers_policy.last_modified_time #=> Time
2178
+ # resp.response_headers_policy.response_headers_policy_config.comment #=> String
2179
+ # resp.response_headers_policy.response_headers_policy_config.name #=> String
2180
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.quantity #=> Integer
2181
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items #=> Array
2182
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items[0] #=> String
2183
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.quantity #=> Integer
2184
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items #=> Array
2185
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items[0] #=> String
2186
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.quantity #=> Integer
2187
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items #=> Array
2188
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items[0] #=> String, one of "GET", "POST", "OPTIONS", "PUT", "DELETE", "PATCH", "HEAD", "ALL"
2189
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_credentials #=> Boolean
2190
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.quantity #=> Integer
2191
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items #=> Array
2192
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items[0] #=> String
2193
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_max_age_sec #=> Integer
2194
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.origin_override #=> Boolean
2195
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.override #=> Boolean
2196
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.protection #=> Boolean
2197
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.mode_block #=> Boolean
2198
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.report_uri #=> String
2199
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.override #=> Boolean
2200
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.frame_option #=> String, one of "DENY", "SAMEORIGIN"
2201
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.override #=> Boolean
2202
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.referrer_policy #=> String, one of "no-referrer", "no-referrer-when-downgrade", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"
2203
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.override #=> Boolean
2204
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.content_security_policy #=> String
2205
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_type_options.override #=> Boolean
2206
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.override #=> Boolean
2207
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.include_subdomains #=> Boolean
2208
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.preload #=> Boolean
2209
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.access_control_max_age_sec #=> Integer
2210
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.quantity #=> Integer
2211
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items #=> Array
2212
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].header #=> String
2213
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].value #=> String
2214
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].override #=> Boolean
2215
+ # resp.location #=> String
2216
+ # resp.etag #=> String
2217
+ #
2218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateResponseHeadersPolicy AWS API Documentation
2219
+ #
2220
+ # @overload create_response_headers_policy(params = {})
2221
+ # @param [Hash] params ({})
2222
+ def create_response_headers_policy(params = {}, options = {})
2223
+ req = build_request(:create_response_headers_policy, params)
2224
+ req.send_request(options)
2225
+ end
2226
+
2054
2227
  # This API is deprecated. Amazon CloudFront is deprecating real-time
2055
2228
  # messaging protocol (RTMP) distributions on December 31, 2020. For more
2056
2229
  # information, [read the announcement][1] on the Amazon CloudFront
@@ -2583,6 +2756,47 @@ module Aws::CloudFront
2583
2756
  req.send_request(options)
2584
2757
  end
2585
2758
 
2759
+ # Deletes a response headers policy.
2760
+ #
2761
+ # You cannot delete a response headers policy if it’s attached to a
2762
+ # cache behavior. First update your distributions to remove the response
2763
+ # headers policy from all cache behaviors, then delete the response
2764
+ # headers policy.
2765
+ #
2766
+ # To delete a response headers policy, you must provide the policy’s
2767
+ # identifier and version. To get these values, you can use
2768
+ # `ListResponseHeadersPolicies` or `GetResponseHeadersPolicy`.
2769
+ #
2770
+ # @option params [required, String] :id
2771
+ # The identifier for the response headers policy that you are deleting.
2772
+ #
2773
+ # To get the identifier, you can use `ListResponseHeadersPolicies`.
2774
+ #
2775
+ # @option params [String] :if_match
2776
+ # The version of the response headers policy that you are deleting.
2777
+ #
2778
+ # The version is the response headers policy’s `ETag` value, which you
2779
+ # can get using `ListResponseHeadersPolicies`,
2780
+ # `GetResponseHeadersPolicy`, or `GetResponseHeadersPolicyConfig`.
2781
+ #
2782
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2783
+ #
2784
+ # @example Request syntax with placeholder values
2785
+ #
2786
+ # resp = client.delete_response_headers_policy({
2787
+ # id: "string", # required
2788
+ # if_match: "string",
2789
+ # })
2790
+ #
2791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteResponseHeadersPolicy AWS API Documentation
2792
+ #
2793
+ # @overload delete_response_headers_policy(params = {})
2794
+ # @param [Hash] params ({})
2795
+ def delete_response_headers_policy(params = {}, options = {})
2796
+ req = build_request(:delete_response_headers_policy, params)
2797
+ req.send_request(options)
2798
+ end
2799
+
2586
2800
  # Delete a streaming distribution. To delete an RTMP distribution using
2587
2801
  # the CloudFront API, perform the following steps.
2588
2802
  #
@@ -2993,6 +3207,7 @@ module Aws::CloudFront
2993
3207
  # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
2994
3208
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
2995
3209
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
3210
+ # resp.distribution.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
2996
3211
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
2997
3212
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
2998
3213
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -3041,6 +3256,7 @@ module Aws::CloudFront
3041
3256
  # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
3042
3257
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
3043
3258
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
3259
+ # resp.distribution.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
3044
3260
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
3045
3261
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
3046
3262
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -3187,6 +3403,7 @@ module Aws::CloudFront
3187
3403
  # resp.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
3188
3404
  # resp.distribution_config.default_cache_behavior.cache_policy_id #=> String
3189
3405
  # resp.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
3406
+ # resp.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
3190
3407
  # resp.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
3191
3408
  # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
3192
3409
  # resp.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -3235,6 +3452,7 @@ module Aws::CloudFront
3235
3452
  # resp.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
3236
3453
  # resp.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
3237
3454
  # resp.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
3455
+ # resp.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
3238
3456
  # resp.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
3239
3457
  # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
3240
3458
  # resp.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -3884,6 +4102,167 @@ module Aws::CloudFront
3884
4102
  req.send_request(options)
3885
4103
  end
3886
4104
 
4105
+ # Gets a response headers policy, including metadata (the policy’s
4106
+ # identifier and the date and time when the policy was last modified).
4107
+ #
4108
+ # To get a response headers policy, you must provide the policy’s
4109
+ # identifier. If the response headers policy is attached to a
4110
+ # distribution’s cache behavior, you can get the policy’s identifier
4111
+ # using `ListDistributions` or `GetDistribution`. If the response
4112
+ # headers policy is not attached to a cache behavior, you can get the
4113
+ # identifier using `ListResponseHeadersPolicies`.
4114
+ #
4115
+ # @option params [required, String] :id
4116
+ # The identifier for the response headers policy.
4117
+ #
4118
+ # If the response headers policy is attached to a distribution’s cache
4119
+ # behavior, you can get the policy’s identifier using
4120
+ # `ListDistributions` or `GetDistribution`. If the response headers
4121
+ # policy is not attached to a cache behavior, you can get the identifier
4122
+ # using `ListResponseHeadersPolicies`.
4123
+ #
4124
+ # @return [Types::GetResponseHeadersPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4125
+ #
4126
+ # * {Types::GetResponseHeadersPolicyResult#response_headers_policy #response_headers_policy} => Types::ResponseHeadersPolicy
4127
+ # * {Types::GetResponseHeadersPolicyResult#etag #etag} => String
4128
+ #
4129
+ # @example Request syntax with placeholder values
4130
+ #
4131
+ # resp = client.get_response_headers_policy({
4132
+ # id: "string", # required
4133
+ # })
4134
+ #
4135
+ # @example Response structure
4136
+ #
4137
+ # resp.response_headers_policy.id #=> String
4138
+ # resp.response_headers_policy.last_modified_time #=> Time
4139
+ # resp.response_headers_policy.response_headers_policy_config.comment #=> String
4140
+ # resp.response_headers_policy.response_headers_policy_config.name #=> String
4141
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.quantity #=> Integer
4142
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items #=> Array
4143
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items[0] #=> String
4144
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.quantity #=> Integer
4145
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items #=> Array
4146
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items[0] #=> String
4147
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.quantity #=> Integer
4148
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items #=> Array
4149
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items[0] #=> String, one of "GET", "POST", "OPTIONS", "PUT", "DELETE", "PATCH", "HEAD", "ALL"
4150
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_credentials #=> Boolean
4151
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.quantity #=> Integer
4152
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items #=> Array
4153
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items[0] #=> String
4154
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_max_age_sec #=> Integer
4155
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.origin_override #=> Boolean
4156
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.override #=> Boolean
4157
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.protection #=> Boolean
4158
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.mode_block #=> Boolean
4159
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.report_uri #=> String
4160
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.override #=> Boolean
4161
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.frame_option #=> String, one of "DENY", "SAMEORIGIN"
4162
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.override #=> Boolean
4163
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.referrer_policy #=> String, one of "no-referrer", "no-referrer-when-downgrade", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"
4164
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.override #=> Boolean
4165
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.content_security_policy #=> String
4166
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_type_options.override #=> Boolean
4167
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.override #=> Boolean
4168
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.include_subdomains #=> Boolean
4169
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.preload #=> Boolean
4170
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.access_control_max_age_sec #=> Integer
4171
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.quantity #=> Integer
4172
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items #=> Array
4173
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].header #=> String
4174
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].value #=> String
4175
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].override #=> Boolean
4176
+ # resp.etag #=> String
4177
+ #
4178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetResponseHeadersPolicy AWS API Documentation
4179
+ #
4180
+ # @overload get_response_headers_policy(params = {})
4181
+ # @param [Hash] params ({})
4182
+ def get_response_headers_policy(params = {}, options = {})
4183
+ req = build_request(:get_response_headers_policy, params)
4184
+ req.send_request(options)
4185
+ end
4186
+
4187
+ # Gets a response headers policy configuration.
4188
+ #
4189
+ # To get a response headers policy configuration, you must provide the
4190
+ # policy’s identifier. If the response headers policy is attached to a
4191
+ # distribution’s cache behavior, you can get the policy’s identifier
4192
+ # using `ListDistributions` or `GetDistribution`. If the response
4193
+ # headers policy is not attached to a cache behavior, you can get the
4194
+ # identifier using `ListResponseHeadersPolicies`.
4195
+ #
4196
+ # @option params [required, String] :id
4197
+ # The identifier for the response headers policy.
4198
+ #
4199
+ # If the response headers policy is attached to a distribution’s cache
4200
+ # behavior, you can get the policy’s identifier using
4201
+ # `ListDistributions` or `GetDistribution`. If the response headers
4202
+ # policy is not attached to a cache behavior, you can get the identifier
4203
+ # using `ListResponseHeadersPolicies`.
4204
+ #
4205
+ # @return [Types::GetResponseHeadersPolicyConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4206
+ #
4207
+ # * {Types::GetResponseHeadersPolicyConfigResult#response_headers_policy_config #response_headers_policy_config} => Types::ResponseHeadersPolicyConfig
4208
+ # * {Types::GetResponseHeadersPolicyConfigResult#etag #etag} => String
4209
+ #
4210
+ # @example Request syntax with placeholder values
4211
+ #
4212
+ # resp = client.get_response_headers_policy_config({
4213
+ # id: "string", # required
4214
+ # })
4215
+ #
4216
+ # @example Response structure
4217
+ #
4218
+ # resp.response_headers_policy_config.comment #=> String
4219
+ # resp.response_headers_policy_config.name #=> String
4220
+ # resp.response_headers_policy_config.cors_config.access_control_allow_origins.quantity #=> Integer
4221
+ # resp.response_headers_policy_config.cors_config.access_control_allow_origins.items #=> Array
4222
+ # resp.response_headers_policy_config.cors_config.access_control_allow_origins.items[0] #=> String
4223
+ # resp.response_headers_policy_config.cors_config.access_control_allow_headers.quantity #=> Integer
4224
+ # resp.response_headers_policy_config.cors_config.access_control_allow_headers.items #=> Array
4225
+ # resp.response_headers_policy_config.cors_config.access_control_allow_headers.items[0] #=> String
4226
+ # resp.response_headers_policy_config.cors_config.access_control_allow_methods.quantity #=> Integer
4227
+ # resp.response_headers_policy_config.cors_config.access_control_allow_methods.items #=> Array
4228
+ # resp.response_headers_policy_config.cors_config.access_control_allow_methods.items[0] #=> String, one of "GET", "POST", "OPTIONS", "PUT", "DELETE", "PATCH", "HEAD", "ALL"
4229
+ # resp.response_headers_policy_config.cors_config.access_control_allow_credentials #=> Boolean
4230
+ # resp.response_headers_policy_config.cors_config.access_control_expose_headers.quantity #=> Integer
4231
+ # resp.response_headers_policy_config.cors_config.access_control_expose_headers.items #=> Array
4232
+ # resp.response_headers_policy_config.cors_config.access_control_expose_headers.items[0] #=> String
4233
+ # resp.response_headers_policy_config.cors_config.access_control_max_age_sec #=> Integer
4234
+ # resp.response_headers_policy_config.cors_config.origin_override #=> Boolean
4235
+ # resp.response_headers_policy_config.security_headers_config.xss_protection.override #=> Boolean
4236
+ # resp.response_headers_policy_config.security_headers_config.xss_protection.protection #=> Boolean
4237
+ # resp.response_headers_policy_config.security_headers_config.xss_protection.mode_block #=> Boolean
4238
+ # resp.response_headers_policy_config.security_headers_config.xss_protection.report_uri #=> String
4239
+ # resp.response_headers_policy_config.security_headers_config.frame_options.override #=> Boolean
4240
+ # resp.response_headers_policy_config.security_headers_config.frame_options.frame_option #=> String, one of "DENY", "SAMEORIGIN"
4241
+ # resp.response_headers_policy_config.security_headers_config.referrer_policy.override #=> Boolean
4242
+ # resp.response_headers_policy_config.security_headers_config.referrer_policy.referrer_policy #=> String, one of "no-referrer", "no-referrer-when-downgrade", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"
4243
+ # resp.response_headers_policy_config.security_headers_config.content_security_policy.override #=> Boolean
4244
+ # resp.response_headers_policy_config.security_headers_config.content_security_policy.content_security_policy #=> String
4245
+ # resp.response_headers_policy_config.security_headers_config.content_type_options.override #=> Boolean
4246
+ # resp.response_headers_policy_config.security_headers_config.strict_transport_security.override #=> Boolean
4247
+ # resp.response_headers_policy_config.security_headers_config.strict_transport_security.include_subdomains #=> Boolean
4248
+ # resp.response_headers_policy_config.security_headers_config.strict_transport_security.preload #=> Boolean
4249
+ # resp.response_headers_policy_config.security_headers_config.strict_transport_security.access_control_max_age_sec #=> Integer
4250
+ # resp.response_headers_policy_config.custom_headers_config.quantity #=> Integer
4251
+ # resp.response_headers_policy_config.custom_headers_config.items #=> Array
4252
+ # resp.response_headers_policy_config.custom_headers_config.items[0].header #=> String
4253
+ # resp.response_headers_policy_config.custom_headers_config.items[0].value #=> String
4254
+ # resp.response_headers_policy_config.custom_headers_config.items[0].override #=> Boolean
4255
+ # resp.etag #=> String
4256
+ #
4257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetResponseHeadersPolicyConfig AWS API Documentation
4258
+ #
4259
+ # @overload get_response_headers_policy_config(params = {})
4260
+ # @param [Hash] params ({})
4261
+ def get_response_headers_policy_config(params = {}, options = {})
4262
+ req = build_request(:get_response_headers_policy_config, params)
4263
+ req.send_request(options)
4264
+ end
4265
+
3887
4266
  # Gets information about a specified RTMP distribution, including the
3888
4267
  # distribution configuration.
3889
4268
  #
@@ -3996,7 +4375,7 @@ module Aws::CloudFront
3996
4375
  #
3997
4376
  # You can optionally apply a filter to return only the managed policies
3998
4377
  # created by Amazon Web Services, or only the custom policies created in
3999
- # your account.
4378
+ # your Amazon Web Services account.
4000
4379
  #
4001
4380
  # You can optionally specify the maximum number of items to receive in
4002
4381
  # the response. If the total number of items in the list exceeds the
@@ -4012,7 +4391,8 @@ module Aws::CloudFront
4012
4391
  # * `managed` – Returns only the managed policies created by Amazon Web
4013
4392
  # Services.
4014
4393
  #
4015
- # * `custom` – Returns only the custom policies created in your account.
4394
+ # * `custom` – Returns only the custom policies created in your Amazon
4395
+ # Web Services account.
4016
4396
  #
4017
4397
  # @option params [String] :marker
4018
4398
  # Use this field when paginating results to indicate where to begin in
@@ -4310,6 +4690,7 @@ module Aws::CloudFront
4310
4690
  # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
4311
4691
  # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
4312
4692
  # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
4693
+ # resp.distribution_list.items[0].default_cache_behavior.response_headers_policy_id #=> String
4313
4694
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
4314
4695
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4315
4696
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -4358,6 +4739,7 @@ module Aws::CloudFront
4358
4739
  # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
4359
4740
  # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
4360
4741
  # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
4742
+ # resp.distribution_list.items[0].cache_behaviors.items[0].response_headers_policy_id #=> String
4361
4743
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
4362
4744
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4363
4745
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -4697,6 +5079,7 @@ module Aws::CloudFront
4697
5079
  # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
4698
5080
  # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
4699
5081
  # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
5082
+ # resp.distribution_list.items[0].default_cache_behavior.response_headers_policy_id #=> String
4700
5083
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
4701
5084
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4702
5085
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -4745,6 +5128,7 @@ module Aws::CloudFront
4745
5128
  # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
4746
5129
  # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
4747
5130
  # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
5131
+ # resp.distribution_list.items[0].cache_behaviors.items[0].response_headers_policy_id #=> String
4748
5132
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
4749
5133
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4750
5134
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -4795,6 +5179,62 @@ module Aws::CloudFront
4795
5179
  req.send_request(options)
4796
5180
  end
4797
5181
 
5182
+ # Gets a list of distribution IDs for distributions that have a cache
5183
+ # behavior that’s associated with the specified response headers policy.
5184
+ #
5185
+ # You can optionally specify the maximum number of items to receive in
5186
+ # the response. If the total number of items in the list exceeds the
5187
+ # maximum that you specify, or the default maximum, the response is
5188
+ # paginated. To get the next page of items, send a subsequent request
5189
+ # that specifies the `NextMarker` value from the current response as the
5190
+ # `Marker` value in the subsequent request.
5191
+ #
5192
+ # @option params [String] :marker
5193
+ # Use this field when paginating results to indicate where to begin in
5194
+ # your list of distribution IDs. The response includes distribution IDs
5195
+ # in the list that occur after the marker. To get the next page of the
5196
+ # list, set this field’s value to the value of `NextMarker` from the
5197
+ # current page’s response.
5198
+ #
5199
+ # @option params [Integer] :max_items
5200
+ # The maximum number of distribution IDs that you want to get in the
5201
+ # response.
5202
+ #
5203
+ # @option params [required, String] :response_headers_policy_id
5204
+ # The ID of the response headers policy whose associated distribution
5205
+ # IDs you want to list.
5206
+ #
5207
+ # @return [Types::ListDistributionsByResponseHeadersPolicyIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5208
+ #
5209
+ # * {Types::ListDistributionsByResponseHeadersPolicyIdResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList
5210
+ #
5211
+ # @example Request syntax with placeholder values
5212
+ #
5213
+ # resp = client.list_distributions_by_response_headers_policy_id({
5214
+ # marker: "string",
5215
+ # max_items: 1,
5216
+ # response_headers_policy_id: "string", # required
5217
+ # })
5218
+ #
5219
+ # @example Response structure
5220
+ #
5221
+ # resp.distribution_id_list.marker #=> String
5222
+ # resp.distribution_id_list.next_marker #=> String
5223
+ # resp.distribution_id_list.max_items #=> Integer
5224
+ # resp.distribution_id_list.is_truncated #=> Boolean
5225
+ # resp.distribution_id_list.quantity #=> Integer
5226
+ # resp.distribution_id_list.items #=> Array
5227
+ # resp.distribution_id_list.items[0] #=> String
5228
+ #
5229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByResponseHeadersPolicyId AWS API Documentation
5230
+ #
5231
+ # @overload list_distributions_by_response_headers_policy_id(params = {})
5232
+ # @param [Hash] params ({})
5233
+ def list_distributions_by_response_headers_policy_id(params = {}, options = {})
5234
+ req = build_request(:list_distributions_by_response_headers_policy_id, params)
5235
+ req.send_request(options)
5236
+ end
5237
+
4798
5238
  # List the distributions that are associated with a specified WAF web
4799
5239
  # ACL.
4800
5240
  #
@@ -4905,6 +5345,7 @@ module Aws::CloudFront
4905
5345
  # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
4906
5346
  # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
4907
5347
  # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
5348
+ # resp.distribution_list.items[0].default_cache_behavior.response_headers_policy_id #=> String
4908
5349
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
4909
5350
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4910
5351
  # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -4953,6 +5394,7 @@ module Aws::CloudFront
4953
5394
  # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
4954
5395
  # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
4955
5396
  # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
5397
+ # resp.distribution_list.items[0].cache_behaviors.items[0].response_headers_policy_id #=> String
4956
5398
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
4957
5399
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
4958
5400
  # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -5111,7 +5553,8 @@ module Aws::CloudFront
5111
5553
  req.send_request(options)
5112
5554
  end
5113
5555
 
5114
- # Gets a list of all CloudFront functions in your account.
5556
+ # Gets a list of all CloudFront functions in your Amazon Web Services
5557
+ # account.
5115
5558
  #
5116
5559
  # You can optionally apply a filter to return only the functions that
5117
5560
  # are in the specified stage, either `DEVELOPMENT` or `LIVE`.
@@ -5283,7 +5726,7 @@ module Aws::CloudFront
5283
5726
  #
5284
5727
  # You can optionally apply a filter to return only the managed policies
5285
5728
  # created by Amazon Web Services, or only the custom policies created in
5286
- # your account.
5729
+ # your Amazon Web Services account.
5287
5730
  #
5288
5731
  # You can optionally specify the maximum number of items to receive in
5289
5732
  # the response. If the total number of items in the list exceeds the
@@ -5299,7 +5742,8 @@ module Aws::CloudFront
5299
5742
  # * `managed` – Returns only the managed policies created by Amazon Web
5300
5743
  # Services.
5301
5744
  #
5302
- # * `custom` – Returns only the custom policies created in your account.
5745
+ # * `custom` – Returns only the custom policies created in your Amazon
5746
+ # Web Services account.
5303
5747
  #
5304
5748
  # @option params [String] :marker
5305
5749
  # Use this field when paginating results to indicate where to begin in
@@ -5459,6 +5903,108 @@ module Aws::CloudFront
5459
5903
  req.send_request(options)
5460
5904
  end
5461
5905
 
5906
+ # Gets a list of response headers policies.
5907
+ #
5908
+ # You can optionally apply a filter to get only the managed policies
5909
+ # created by Amazon Web Services, or only the custom policies created in
5910
+ # your Amazon Web Services account.
5911
+ #
5912
+ # You can optionally specify the maximum number of items to receive in
5913
+ # the response. If the total number of items in the list exceeds the
5914
+ # maximum that you specify, or the default maximum, the response is
5915
+ # paginated. To get the next page of items, send a subsequent request
5916
+ # that specifies the `NextMarker` value from the current response as the
5917
+ # `Marker` value in the subsequent request.
5918
+ #
5919
+ # @option params [String] :type
5920
+ # A filter to get only the specified kind of response headers policies.
5921
+ # Valid values are:
5922
+ #
5923
+ # * `managed` – Gets only the managed policies created by Amazon Web
5924
+ # Services.
5925
+ #
5926
+ # * `custom` – Gets only the custom policies created in your Amazon Web
5927
+ # Services account.
5928
+ #
5929
+ # @option params [String] :marker
5930
+ # Use this field when paginating results to indicate where to begin in
5931
+ # your list of response headers policies. The response includes response
5932
+ # headers policies in the list that occur after the marker. To get the
5933
+ # next page of the list, set this field’s value to the value of
5934
+ # `NextMarker` from the current page’s response.
5935
+ #
5936
+ # @option params [Integer] :max_items
5937
+ # The maximum number of response headers policies that you want to get
5938
+ # in the response.
5939
+ #
5940
+ # @return [Types::ListResponseHeadersPoliciesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5941
+ #
5942
+ # * {Types::ListResponseHeadersPoliciesResult#response_headers_policy_list #response_headers_policy_list} => Types::ResponseHeadersPolicyList
5943
+ #
5944
+ # @example Request syntax with placeholder values
5945
+ #
5946
+ # resp = client.list_response_headers_policies({
5947
+ # type: "managed", # accepts managed, custom
5948
+ # marker: "string",
5949
+ # max_items: 1,
5950
+ # })
5951
+ #
5952
+ # @example Response structure
5953
+ #
5954
+ # resp.response_headers_policy_list.next_marker #=> String
5955
+ # resp.response_headers_policy_list.max_items #=> Integer
5956
+ # resp.response_headers_policy_list.quantity #=> Integer
5957
+ # resp.response_headers_policy_list.items #=> Array
5958
+ # resp.response_headers_policy_list.items[0].type #=> String, one of "managed", "custom"
5959
+ # resp.response_headers_policy_list.items[0].response_headers_policy.id #=> String
5960
+ # resp.response_headers_policy_list.items[0].response_headers_policy.last_modified_time #=> Time
5961
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.comment #=> String
5962
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.name #=> String
5963
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.quantity #=> Integer
5964
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items #=> Array
5965
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items[0] #=> String
5966
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.quantity #=> Integer
5967
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items #=> Array
5968
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items[0] #=> String
5969
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.quantity #=> Integer
5970
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items #=> Array
5971
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items[0] #=> String, one of "GET", "POST", "OPTIONS", "PUT", "DELETE", "PATCH", "HEAD", "ALL"
5972
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_credentials #=> Boolean
5973
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.quantity #=> Integer
5974
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items #=> Array
5975
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items[0] #=> String
5976
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.access_control_max_age_sec #=> Integer
5977
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.cors_config.origin_override #=> Boolean
5978
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.override #=> Boolean
5979
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.protection #=> Boolean
5980
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.mode_block #=> Boolean
5981
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.report_uri #=> String
5982
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.override #=> Boolean
5983
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.frame_option #=> String, one of "DENY", "SAMEORIGIN"
5984
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.override #=> Boolean
5985
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.referrer_policy #=> String, one of "no-referrer", "no-referrer-when-downgrade", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"
5986
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.override #=> Boolean
5987
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.content_security_policy #=> String
5988
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.content_type_options.override #=> Boolean
5989
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.override #=> Boolean
5990
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.include_subdomains #=> Boolean
5991
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.preload #=> Boolean
5992
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.access_control_max_age_sec #=> Integer
5993
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.custom_headers_config.quantity #=> Integer
5994
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.custom_headers_config.items #=> Array
5995
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].header #=> String
5996
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].value #=> String
5997
+ # resp.response_headers_policy_list.items[0].response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].override #=> Boolean
5998
+ #
5999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListResponseHeadersPolicies AWS API Documentation
6000
+ #
6001
+ # @overload list_response_headers_policies(params = {})
6002
+ # @param [Hash] params ({})
6003
+ def list_response_headers_policies(params = {}, options = {})
6004
+ req = build_request(:list_response_headers_policies, params)
6005
+ req.send_request(options)
6006
+ end
6007
+
5462
6008
  # List streaming distributions.
5463
6009
  #
5464
6010
  # @option params [String] :marker
@@ -6000,7 +6546,7 @@ module Aws::CloudFront
6000
6546
  # items: [
6001
6547
  # {
6002
6548
  # header_name: "string", # required
6003
- # header_value: "string", # required
6549
+ # header_value: "sensitiveStringType", # required
6004
6550
  # },
6005
6551
  # ],
6006
6552
  # },
@@ -6095,6 +6641,7 @@ module Aws::CloudFront
6095
6641
  # realtime_log_config_arn: "string",
6096
6642
  # cache_policy_id: "string",
6097
6643
  # origin_request_policy_id: "string",
6644
+ # response_headers_policy_id: "string",
6098
6645
  # forwarded_values: {
6099
6646
  # query_string: false, # required
6100
6647
  # cookies: { # required
@@ -6167,6 +6714,7 @@ module Aws::CloudFront
6167
6714
  # realtime_log_config_arn: "string",
6168
6715
  # cache_policy_id: "string",
6169
6716
  # origin_request_policy_id: "string",
6717
+ # response_headers_policy_id: "string",
6170
6718
  # forwarded_values: {
6171
6719
  # query_string: false, # required
6172
6720
  # cookies: { # required
@@ -6324,6 +6872,7 @@ module Aws::CloudFront
6324
6872
  # resp.distribution.distribution_config.default_cache_behavior.realtime_log_config_arn #=> String
6325
6873
  # resp.distribution.distribution_config.default_cache_behavior.cache_policy_id #=> String
6326
6874
  # resp.distribution.distribution_config.default_cache_behavior.origin_request_policy_id #=> String
6875
+ # resp.distribution.distribution_config.default_cache_behavior.response_headers_policy_id #=> String
6327
6876
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.query_string #=> Boolean
6328
6877
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
6329
6878
  # resp.distribution.distribution_config.default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -6372,6 +6921,7 @@ module Aws::CloudFront
6372
6921
  # resp.distribution.distribution_config.cache_behaviors.items[0].realtime_log_config_arn #=> String
6373
6922
  # resp.distribution.distribution_config.cache_behaviors.items[0].cache_policy_id #=> String
6374
6923
  # resp.distribution.distribution_config.cache_behaviors.items[0].origin_request_policy_id #=> String
6924
+ # resp.distribution.distribution_config.cache_behaviors.items[0].response_headers_policy_id #=> String
6375
6925
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
6376
6926
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
6377
6927
  # resp.distribution.distribution_config.cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
@@ -6937,6 +7487,162 @@ module Aws::CloudFront
6937
7487
  req.send_request(options)
6938
7488
  end
6939
7489
 
7490
+ # Updates a response headers policy.
7491
+ #
7492
+ # When you update a response headers policy, the entire policy is
7493
+ # replaced. You cannot update some policy fields independent of others.
7494
+ # To update a response headers policy configuration:
7495
+ #
7496
+ # 1. Use `GetResponseHeadersPolicyConfig` to get the current policy’s
7497
+ # configuration.
7498
+ #
7499
+ # 2. Modify the fields in the response headers policy configuration
7500
+ # that you want to update.
7501
+ #
7502
+ # 3. Call `UpdateResponseHeadersPolicy`, providing the entire response
7503
+ # headers policy configuration, including the fields that you
7504
+ # modified and those that you didn’t.
7505
+ #
7506
+ # @option params [required, Types::ResponseHeadersPolicyConfig] :response_headers_policy_config
7507
+ # A response headers policy configuration.
7508
+ #
7509
+ # @option params [required, String] :id
7510
+ # The identifier for the response headers policy that you are updating.
7511
+ #
7512
+ # @option params [String] :if_match
7513
+ # The version of the response headers policy that you are updating.
7514
+ #
7515
+ # The version is returned in the cache policy’s `ETag` field in the
7516
+ # response to `GetResponseHeadersPolicyConfig`.
7517
+ #
7518
+ # @return [Types::UpdateResponseHeadersPolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7519
+ #
7520
+ # * {Types::UpdateResponseHeadersPolicyResult#response_headers_policy #response_headers_policy} => Types::ResponseHeadersPolicy
7521
+ # * {Types::UpdateResponseHeadersPolicyResult#etag #etag} => String
7522
+ #
7523
+ # @example Request syntax with placeholder values
7524
+ #
7525
+ # resp = client.update_response_headers_policy({
7526
+ # response_headers_policy_config: { # required
7527
+ # comment: "string",
7528
+ # name: "string", # required
7529
+ # cors_config: {
7530
+ # access_control_allow_origins: { # required
7531
+ # quantity: 1, # required
7532
+ # items: ["string"], # required
7533
+ # },
7534
+ # access_control_allow_headers: { # required
7535
+ # quantity: 1, # required
7536
+ # items: ["string"], # required
7537
+ # },
7538
+ # access_control_allow_methods: { # required
7539
+ # quantity: 1, # required
7540
+ # items: ["GET"], # required, accepts GET, POST, OPTIONS, PUT, DELETE, PATCH, HEAD, ALL
7541
+ # },
7542
+ # access_control_allow_credentials: false, # required
7543
+ # access_control_expose_headers: {
7544
+ # quantity: 1, # required
7545
+ # items: ["string"],
7546
+ # },
7547
+ # access_control_max_age_sec: 1,
7548
+ # origin_override: false, # required
7549
+ # },
7550
+ # security_headers_config: {
7551
+ # xss_protection: {
7552
+ # override: false, # required
7553
+ # protection: false, # required
7554
+ # mode_block: false,
7555
+ # report_uri: "string",
7556
+ # },
7557
+ # frame_options: {
7558
+ # override: false, # required
7559
+ # frame_option: "DENY", # required, accepts DENY, SAMEORIGIN
7560
+ # },
7561
+ # referrer_policy: {
7562
+ # override: false, # required
7563
+ # referrer_policy: "no-referrer", # required, accepts no-referrer, no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url
7564
+ # },
7565
+ # content_security_policy: {
7566
+ # override: false, # required
7567
+ # content_security_policy: "string", # required
7568
+ # },
7569
+ # content_type_options: {
7570
+ # override: false, # required
7571
+ # },
7572
+ # strict_transport_security: {
7573
+ # override: false, # required
7574
+ # include_subdomains: false,
7575
+ # preload: false,
7576
+ # access_control_max_age_sec: 1, # required
7577
+ # },
7578
+ # },
7579
+ # custom_headers_config: {
7580
+ # quantity: 1, # required
7581
+ # items: [
7582
+ # {
7583
+ # header: "string", # required
7584
+ # value: "string", # required
7585
+ # override: false, # required
7586
+ # },
7587
+ # ],
7588
+ # },
7589
+ # },
7590
+ # id: "string", # required
7591
+ # if_match: "string",
7592
+ # })
7593
+ #
7594
+ # @example Response structure
7595
+ #
7596
+ # resp.response_headers_policy.id #=> String
7597
+ # resp.response_headers_policy.last_modified_time #=> Time
7598
+ # resp.response_headers_policy.response_headers_policy_config.comment #=> String
7599
+ # resp.response_headers_policy.response_headers_policy_config.name #=> String
7600
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.quantity #=> Integer
7601
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items #=> Array
7602
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_origins.items[0] #=> String
7603
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.quantity #=> Integer
7604
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items #=> Array
7605
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_headers.items[0] #=> String
7606
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.quantity #=> Integer
7607
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items #=> Array
7608
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_methods.items[0] #=> String, one of "GET", "POST", "OPTIONS", "PUT", "DELETE", "PATCH", "HEAD", "ALL"
7609
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_allow_credentials #=> Boolean
7610
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.quantity #=> Integer
7611
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items #=> Array
7612
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_expose_headers.items[0] #=> String
7613
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.access_control_max_age_sec #=> Integer
7614
+ # resp.response_headers_policy.response_headers_policy_config.cors_config.origin_override #=> Boolean
7615
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.override #=> Boolean
7616
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.protection #=> Boolean
7617
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.mode_block #=> Boolean
7618
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.xss_protection.report_uri #=> String
7619
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.override #=> Boolean
7620
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.frame_options.frame_option #=> String, one of "DENY", "SAMEORIGIN"
7621
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.override #=> Boolean
7622
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.referrer_policy.referrer_policy #=> String, one of "no-referrer", "no-referrer-when-downgrade", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"
7623
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.override #=> Boolean
7624
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_security_policy.content_security_policy #=> String
7625
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.content_type_options.override #=> Boolean
7626
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.override #=> Boolean
7627
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.include_subdomains #=> Boolean
7628
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.preload #=> Boolean
7629
+ # resp.response_headers_policy.response_headers_policy_config.security_headers_config.strict_transport_security.access_control_max_age_sec #=> Integer
7630
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.quantity #=> Integer
7631
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items #=> Array
7632
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].header #=> String
7633
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].value #=> String
7634
+ # resp.response_headers_policy.response_headers_policy_config.custom_headers_config.items[0].override #=> Boolean
7635
+ # resp.etag #=> String
7636
+ #
7637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateResponseHeadersPolicy AWS API Documentation
7638
+ #
7639
+ # @overload update_response_headers_policy(params = {})
7640
+ # @param [Hash] params ({})
7641
+ def update_response_headers_policy(params = {}, options = {})
7642
+ req = build_request(:update_response_headers_policy, params)
7643
+ req.send_request(options)
7644
+ end
7645
+
6940
7646
  # Update a streaming distribution.
6941
7647
  #
6942
7648
  # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
@@ -7040,7 +7746,7 @@ module Aws::CloudFront
7040
7746
  params: params,
7041
7747
  config: config)
7042
7748
  context[:gem_name] = 'aws-sdk-cloudfront'
7043
- context[:gem_version] = '1.57.0'
7749
+ context[:gem_version] = '1.61.0'
7044
7750
  Seahorse::Client::Request.new(handlers, context)
7045
7751
  end
7046
7752