aws-sdk-cloudfront 1.128.0 → 1.140.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -731,6 +731,7 @@ module Aws::CloudFront
731
731
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
732
732
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
733
733
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
734
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
734
735
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
735
736
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
736
737
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -863,7 +864,7 @@ module Aws::CloudFront
863
864
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
864
865
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
865
866
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
866
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
867
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
867
868
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
868
869
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
869
870
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -882,6 +883,11 @@ module Aws::CloudFront
882
883
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
883
884
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
884
885
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
886
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
887
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
888
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
889
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
890
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
885
891
  # resp.distribution.alias_icp_recordals #=> Array
886
892
  # resp.distribution.alias_icp_recordals[0].cname #=> String
887
893
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -909,6 +915,20 @@ module Aws::CloudFront
909
915
  # @option params [Types::Tags] :tags
910
916
  # A complex type that contains zero or more `Tag` elements.
911
917
  #
918
+ # @option params [String] :ip_address_type
919
+ # The IP address type for the Anycast static IP list. You can specify
920
+ # one of the following options:
921
+ #
922
+ # * `ipv4` only
923
+ #
924
+ # * `ipv6` only
925
+ #
926
+ # * `dualstack` - Allocate a list of both IPv4 and IPv6 addresses
927
+ #
928
+ # @option params [Array<Types::IpamCidrConfig>] :ipam_cidr_configs
929
+ # A list of IPAM CIDR configurations that specify the IP address ranges
930
+ # and IPAM pool settings for creating the Anycast static IP list.
931
+ #
912
932
  # @return [Types::CreateAnycastIpListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
913
933
  #
914
934
  # * {Types::CreateAnycastIpListResult#anycast_ip_list #anycast_ip_list} => Types::AnycastIpList
@@ -927,6 +947,15 @@ module Aws::CloudFront
927
947
  # },
928
948
  # ],
929
949
  # },
950
+ # ip_address_type: "ipv4", # accepts ipv4, ipv6, dualstack
951
+ # ipam_cidr_configs: [
952
+ # {
953
+ # cidr: "string", # required
954
+ # ipam_pool_arn: "string", # required
955
+ # anycast_ip: "string",
956
+ # status: "provisioned", # accepts provisioned, failed-provision, provisioning, deprovisioned, failed-deprovision, deprovisioning, advertised, failed-advertise, advertising, withdrawn, failed-withdraw, withdrawing
957
+ # },
958
+ # ],
930
959
  # })
931
960
  #
932
961
  # @example Response structure
@@ -935,6 +964,13 @@ module Aws::CloudFront
935
964
  # resp.anycast_ip_list.name #=> String
936
965
  # resp.anycast_ip_list.status #=> String
937
966
  # resp.anycast_ip_list.arn #=> String
967
+ # resp.anycast_ip_list.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
968
+ # resp.anycast_ip_list.ipam_config.quantity #=> Integer
969
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs #=> Array
970
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].cidr #=> String
971
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].ipam_pool_arn #=> String
972
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].anycast_ip #=> String
973
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].status #=> String, one of "provisioned", "failed-provision", "provisioning", "deprovisioned", "failed-deprovision", "deprovisioning", "advertised", "failed-advertise", "advertising", "withdrawn", "failed-withdraw", "withdrawing"
938
974
  # resp.anycast_ip_list.anycast_ips #=> Array
939
975
  # resp.anycast_ip_list.anycast_ips[0] #=> String
940
976
  # resp.anycast_ip_list.ip_count #=> Integer
@@ -1111,6 +1147,79 @@ module Aws::CloudFront
1111
1147
  req.send_request(options)
1112
1148
  end
1113
1149
 
1150
+ # Creates a connection function.
1151
+ #
1152
+ # @option params [required, String] :name
1153
+ # A name for the connection function.
1154
+ #
1155
+ # @option params [required, Types::FunctionConfig] :connection_function_config
1156
+ # Contains configuration information about a CloudFront function.
1157
+ #
1158
+ # @option params [required, String, StringIO, File] :connection_function_code
1159
+ # The code for the connection function.
1160
+ #
1161
+ # @option params [Types::Tags] :tags
1162
+ # A complex type that contains zero or more `Tag` elements.
1163
+ #
1164
+ # @return [Types::CreateConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1165
+ #
1166
+ # * {Types::CreateConnectionFunctionResult#connection_function_summary #connection_function_summary} => Types::ConnectionFunctionSummary
1167
+ # * {Types::CreateConnectionFunctionResult#location #location} => String
1168
+ # * {Types::CreateConnectionFunctionResult#etag #etag} => String
1169
+ #
1170
+ # @example Request syntax with placeholder values
1171
+ #
1172
+ # resp = client.create_connection_function({
1173
+ # name: "FunctionName", # required
1174
+ # connection_function_config: { # required
1175
+ # comment: "string", # required
1176
+ # runtime: "cloudfront-js-1.0", # required, accepts cloudfront-js-1.0, cloudfront-js-2.0
1177
+ # key_value_store_associations: {
1178
+ # quantity: 1, # required
1179
+ # items: [
1180
+ # {
1181
+ # key_value_store_arn: "KeyValueStoreARN", # required
1182
+ # },
1183
+ # ],
1184
+ # },
1185
+ # },
1186
+ # connection_function_code: "data", # required
1187
+ # tags: {
1188
+ # items: [
1189
+ # {
1190
+ # key: "TagKey", # required
1191
+ # value: "TagValue",
1192
+ # },
1193
+ # ],
1194
+ # },
1195
+ # })
1196
+ #
1197
+ # @example Response structure
1198
+ #
1199
+ # resp.connection_function_summary.name #=> String
1200
+ # resp.connection_function_summary.id #=> String
1201
+ # resp.connection_function_summary.connection_function_config.comment #=> String
1202
+ # resp.connection_function_summary.connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
1203
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.quantity #=> Integer
1204
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items #=> Array
1205
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
1206
+ # resp.connection_function_summary.connection_function_arn #=> String
1207
+ # resp.connection_function_summary.status #=> String
1208
+ # resp.connection_function_summary.stage #=> String, one of "DEVELOPMENT", "LIVE"
1209
+ # resp.connection_function_summary.created_time #=> Time
1210
+ # resp.connection_function_summary.last_modified_time #=> Time
1211
+ # resp.location #=> String
1212
+ # resp.etag #=> String
1213
+ #
1214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateConnectionFunction AWS API Documentation
1215
+ #
1216
+ # @overload create_connection_function(params = {})
1217
+ # @param [Hash] params ({})
1218
+ def create_connection_function(params = {}, options = {})
1219
+ req = build_request(:create_connection_function, params)
1220
+ req.send_request(options)
1221
+ end
1222
+
1114
1223
  # Creates a connection group.
1115
1224
  #
1116
1225
  # @option params [required, String] :name
@@ -1314,6 +1423,7 @@ module Aws::CloudFront
1314
1423
  # },
1315
1424
  # vpc_origin_config: {
1316
1425
  # vpc_origin_id: "string", # required
1426
+ # owner_account_id: "string",
1317
1427
  # origin_read_timeout: 1,
1318
1428
  # origin_keepalive_timeout: 1,
1319
1429
  # },
@@ -1526,7 +1636,7 @@ module Aws::CloudFront
1526
1636
  # iam_certificate_id: "ServerCertificateId",
1527
1637
  # acm_certificate_arn: "string",
1528
1638
  # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
1529
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025
1639
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025, TLSv1.2_2025
1530
1640
  # certificate: "string",
1531
1641
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
1532
1642
  # },
@@ -1558,6 +1668,17 @@ module Aws::CloudFront
1558
1668
  # ],
1559
1669
  # },
1560
1670
  # connection_mode: "direct", # accepts direct, tenant-only
1671
+ # viewer_mtls_config: {
1672
+ # mode: "required", # accepts required, optional
1673
+ # trust_store_config: {
1674
+ # trust_store_id: "string", # required
1675
+ # advertise_trust_store_ca_names: false,
1676
+ # ignore_certificate_expiry: false,
1677
+ # },
1678
+ # },
1679
+ # connection_function_association: {
1680
+ # id: "ResourceId", # required
1681
+ # },
1561
1682
  # },
1562
1683
  # })
1563
1684
  #
@@ -1609,6 +1730,7 @@ module Aws::CloudFront
1609
1730
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
1610
1731
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
1611
1732
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
1733
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
1612
1734
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
1613
1735
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
1614
1736
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -1741,7 +1863,7 @@ module Aws::CloudFront
1741
1863
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
1742
1864
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
1743
1865
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
1744
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
1866
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
1745
1867
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
1746
1868
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
1747
1869
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -1760,6 +1882,11 @@ module Aws::CloudFront
1760
1882
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
1761
1883
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
1762
1884
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
1885
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
1886
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
1887
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
1888
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
1889
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
1763
1890
  # resp.distribution.alias_icp_recordals #=> Array
1764
1891
  # resp.distribution.alias_icp_recordals[0].cname #=> String
1765
1892
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -1973,6 +2100,7 @@ module Aws::CloudFront
1973
2100
  # },
1974
2101
  # vpc_origin_config: {
1975
2102
  # vpc_origin_id: "string", # required
2103
+ # owner_account_id: "string",
1976
2104
  # origin_read_timeout: 1,
1977
2105
  # origin_keepalive_timeout: 1,
1978
2106
  # },
@@ -2185,7 +2313,7 @@ module Aws::CloudFront
2185
2313
  # iam_certificate_id: "ServerCertificateId",
2186
2314
  # acm_certificate_arn: "string",
2187
2315
  # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
2188
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025
2316
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025, TLSv1.2_2025
2189
2317
  # certificate: "string",
2190
2318
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
2191
2319
  # },
@@ -2217,6 +2345,17 @@ module Aws::CloudFront
2217
2345
  # ],
2218
2346
  # },
2219
2347
  # connection_mode: "direct", # accepts direct, tenant-only
2348
+ # viewer_mtls_config: {
2349
+ # mode: "required", # accepts required, optional
2350
+ # trust_store_config: {
2351
+ # trust_store_id: "string", # required
2352
+ # advertise_trust_store_ca_names: false,
2353
+ # ignore_certificate_expiry: false,
2354
+ # },
2355
+ # },
2356
+ # connection_function_association: {
2357
+ # id: "ResourceId", # required
2358
+ # },
2220
2359
  # },
2221
2360
  # tags: { # required
2222
2361
  # items: [
@@ -2277,6 +2416,7 @@ module Aws::CloudFront
2277
2416
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
2278
2417
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
2279
2418
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
2419
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
2280
2420
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
2281
2421
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
2282
2422
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -2409,7 +2549,7 @@ module Aws::CloudFront
2409
2549
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
2410
2550
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
2411
2551
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
2412
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
2552
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
2413
2553
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
2414
2554
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
2415
2555
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -2428,6 +2568,11 @@ module Aws::CloudFront
2428
2568
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
2429
2569
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
2430
2570
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
2571
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
2572
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
2573
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
2574
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
2575
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
2431
2576
  # resp.distribution.alias_icp_recordals #=> Array
2432
2577
  # resp.distribution.alias_icp_recordals[0].cname #=> String
2433
2578
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -3639,6 +3784,64 @@ module Aws::CloudFront
3639
3784
  req.send_request(options)
3640
3785
  end
3641
3786
 
3787
+ # Creates a trust store.
3788
+ #
3789
+ # @option params [required, String] :name
3790
+ # A name for the trust store.
3791
+ #
3792
+ # @option params [required, Types::CaCertificatesBundleSource] :ca_certificates_bundle_source
3793
+ # The CA certificates bundle source for the trust store.
3794
+ #
3795
+ # @option params [Types::Tags] :tags
3796
+ # A complex type that contains zero or more `Tag` elements.
3797
+ #
3798
+ # @return [Types::CreateTrustStoreResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3799
+ #
3800
+ # * {Types::CreateTrustStoreResult#trust_store #trust_store} => Types::TrustStore
3801
+ # * {Types::CreateTrustStoreResult#etag #etag} => String
3802
+ #
3803
+ # @example Request syntax with placeholder values
3804
+ #
3805
+ # resp = client.create_trust_store({
3806
+ # name: "string", # required
3807
+ # ca_certificates_bundle_source: { # required
3808
+ # ca_certificates_bundle_s3_location: {
3809
+ # bucket: "string", # required
3810
+ # key: "string", # required
3811
+ # region: "CaCertificatesBundleS3LocationRegionString", # required
3812
+ # version: "string",
3813
+ # },
3814
+ # },
3815
+ # tags: {
3816
+ # items: [
3817
+ # {
3818
+ # key: "TagKey", # required
3819
+ # value: "TagValue",
3820
+ # },
3821
+ # ],
3822
+ # },
3823
+ # })
3824
+ #
3825
+ # @example Response structure
3826
+ #
3827
+ # resp.trust_store.id #=> String
3828
+ # resp.trust_store.arn #=> String
3829
+ # resp.trust_store.name #=> String
3830
+ # resp.trust_store.status #=> String, one of "pending", "active", "failed"
3831
+ # resp.trust_store.number_of_ca_certificates #=> Integer
3832
+ # resp.trust_store.last_modified_time #=> Time
3833
+ # resp.trust_store.reason #=> String
3834
+ # resp.etag #=> String
3835
+ #
3836
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateTrustStore AWS API Documentation
3837
+ #
3838
+ # @overload create_trust_store(params = {})
3839
+ # @param [Hash] params ({})
3840
+ def create_trust_store(params = {}, options = {})
3841
+ req = build_request(:create_trust_store, params)
3842
+ req.send_request(options)
3843
+ end
3844
+
3642
3845
  # Create an Amazon CloudFront VPC origin.
3643
3846
  #
3644
3847
  # @option params [required, Types::VpcOriginEndpointConfig] :vpc_origin_endpoint_config
@@ -3730,6 +3933,7 @@ module Aws::CloudFront
3730
3933
  #
3731
3934
  # resp.vpc_origin.id #=> String
3732
3935
  # resp.vpc_origin.arn #=> String
3936
+ # resp.vpc_origin.account_id #=> String
3733
3937
  # resp.vpc_origin.status #=> String
3734
3938
  # resp.vpc_origin.created_time #=> Time
3735
3939
  # resp.vpc_origin.last_modified_time #=> Time
@@ -3844,6 +4048,33 @@ module Aws::CloudFront
3844
4048
  req.send_request(options)
3845
4049
  end
3846
4050
 
4051
+ # Deletes a connection function.
4052
+ #
4053
+ # @option params [required, String] :id
4054
+ # The connection function's ID.
4055
+ #
4056
+ # @option params [required, String] :if_match
4057
+ # The current version (`ETag` value) of the connection function you are
4058
+ # deleting.
4059
+ #
4060
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4061
+ #
4062
+ # @example Request syntax with placeholder values
4063
+ #
4064
+ # resp = client.delete_connection_function({
4065
+ # id: "ResourceId", # required
4066
+ # if_match: "string", # required
4067
+ # })
4068
+ #
4069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteConnectionFunction AWS API Documentation
4070
+ #
4071
+ # @overload delete_connection_function(params = {})
4072
+ # @param [Hash] params ({})
4073
+ def delete_connection_function(params = {}, options = {})
4074
+ req = build_request(:delete_connection_function, params)
4075
+ req.send_request(options)
4076
+ end
4077
+
3847
4078
  # Deletes a connection group.
3848
4079
  #
3849
4080
  # @option params [required, String] :id
@@ -3905,6 +4136,10 @@ module Aws::CloudFront
3905
4136
 
3906
4137
  # Delete a distribution.
3907
4138
  #
4139
+ # Before you can delete a distribution, you must disable it, which
4140
+ # requires permission to update the distribution. Once deleted, a
4141
+ # distribution cannot be recovered.
4142
+ #
3908
4143
  # @option params [required, String] :id
3909
4144
  # The distribution ID.
3910
4145
  #
@@ -4285,6 +4520,29 @@ module Aws::CloudFront
4285
4520
  req.send_request(options)
4286
4521
  end
4287
4522
 
4523
+ # Deletes the resource policy attached to the CloudFront resource.
4524
+ #
4525
+ # @option params [required, String] :resource_arn
4526
+ # The Amazon Resource Name (ARN) of the CloudFront resource for which
4527
+ # the resource policy should be deleted.
4528
+ #
4529
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4530
+ #
4531
+ # @example Request syntax with placeholder values
4532
+ #
4533
+ # resp = client.delete_resource_policy({
4534
+ # resource_arn: "string", # required
4535
+ # })
4536
+ #
4537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteResourcePolicy AWS API Documentation
4538
+ #
4539
+ # @overload delete_resource_policy(params = {})
4540
+ # @param [Hash] params ({})
4541
+ def delete_resource_policy(params = {}, options = {})
4542
+ req = build_request(:delete_resource_policy, params)
4543
+ req.send_request(options)
4544
+ end
4545
+
4288
4546
  # Deletes a response headers policy.
4289
4547
  #
4290
4548
  # You cannot delete a response headers policy if it's attached to a
@@ -4396,6 +4654,33 @@ module Aws::CloudFront
4396
4654
  req.send_request(options)
4397
4655
  end
4398
4656
 
4657
+ # Deletes a trust store.
4658
+ #
4659
+ # @option params [required, String] :id
4660
+ # The trust store's ID.
4661
+ #
4662
+ # @option params [required, String] :if_match
4663
+ # The current version (`ETag` value) of the trust store you are
4664
+ # deleting.
4665
+ #
4666
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4667
+ #
4668
+ # @example Request syntax with placeholder values
4669
+ #
4670
+ # resp = client.delete_trust_store({
4671
+ # id: "ResourceId", # required
4672
+ # if_match: "string", # required
4673
+ # })
4674
+ #
4675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteTrustStore AWS API Documentation
4676
+ #
4677
+ # @overload delete_trust_store(params = {})
4678
+ # @param [Hash] params ({})
4679
+ def delete_trust_store(params = {}, options = {})
4680
+ req = build_request(:delete_trust_store, params)
4681
+ req.send_request(options)
4682
+ end
4683
+
4399
4684
  # Delete an Amazon CloudFront VPC origin.
4400
4685
  #
4401
4686
  # @option params [required, String] :id
@@ -4457,6 +4742,7 @@ module Aws::CloudFront
4457
4742
  #
4458
4743
  # resp.vpc_origin.id #=> String
4459
4744
  # resp.vpc_origin.arn #=> String
4745
+ # resp.vpc_origin.account_id #=> String
4460
4746
  # resp.vpc_origin.status #=> String
4461
4747
  # resp.vpc_origin.created_time #=> Time
4462
4748
  # resp.vpc_origin.last_modified_time #=> Time
@@ -4479,6 +4765,51 @@ module Aws::CloudFront
4479
4765
  req.send_request(options)
4480
4766
  end
4481
4767
 
4768
+ # Describes a connection function.
4769
+ #
4770
+ # @option params [required, String] :identifier
4771
+ # The connection function's identifier.
4772
+ #
4773
+ # @option params [String] :stage
4774
+ # The connection function's stage.
4775
+ #
4776
+ # @return [Types::DescribeConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4777
+ #
4778
+ # * {Types::DescribeConnectionFunctionResult#connection_function_summary #connection_function_summary} => Types::ConnectionFunctionSummary
4779
+ # * {Types::DescribeConnectionFunctionResult#etag #etag} => String
4780
+ #
4781
+ # @example Request syntax with placeholder values
4782
+ #
4783
+ # resp = client.describe_connection_function({
4784
+ # identifier: "string", # required
4785
+ # stage: "DEVELOPMENT", # accepts DEVELOPMENT, LIVE
4786
+ # })
4787
+ #
4788
+ # @example Response structure
4789
+ #
4790
+ # resp.connection_function_summary.name #=> String
4791
+ # resp.connection_function_summary.id #=> String
4792
+ # resp.connection_function_summary.connection_function_config.comment #=> String
4793
+ # resp.connection_function_summary.connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
4794
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.quantity #=> Integer
4795
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items #=> Array
4796
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
4797
+ # resp.connection_function_summary.connection_function_arn #=> String
4798
+ # resp.connection_function_summary.status #=> String
4799
+ # resp.connection_function_summary.stage #=> String, one of "DEVELOPMENT", "LIVE"
4800
+ # resp.connection_function_summary.created_time #=> Time
4801
+ # resp.connection_function_summary.last_modified_time #=> Time
4802
+ # resp.etag #=> String
4803
+ #
4804
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DescribeConnectionFunction AWS API Documentation
4805
+ #
4806
+ # @overload describe_connection_function(params = {})
4807
+ # @param [Hash] params ({})
4808
+ def describe_connection_function(params = {}, options = {})
4809
+ req = build_request(:describe_connection_function, params)
4810
+ req.send_request(options)
4811
+ end
4812
+
4482
4813
  # Gets configuration information and metadata about a CloudFront
4483
4814
  # function, but not the function's code. To get a function's code, use
4484
4815
  # `GetFunction`.
@@ -4679,6 +5010,13 @@ module Aws::CloudFront
4679
5010
  # resp.anycast_ip_list.name #=> String
4680
5011
  # resp.anycast_ip_list.status #=> String
4681
5012
  # resp.anycast_ip_list.arn #=> String
5013
+ # resp.anycast_ip_list.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
5014
+ # resp.anycast_ip_list.ipam_config.quantity #=> Integer
5015
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs #=> Array
5016
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].cidr #=> String
5017
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].ipam_pool_arn #=> String
5018
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].anycast_ip #=> String
5019
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].status #=> String, one of "provisioned", "failed-provision", "provisioning", "deprovisioned", "failed-deprovision", "deprovisioning", "advertised", "failed-advertise", "advertising", "withdrawn", "failed-withdraw", "withdrawing"
4682
5020
  # resp.anycast_ip_list.anycast_ips #=> Array
4683
5021
  # resp.anycast_ip_list.anycast_ips[0] #=> String
4684
5022
  # resp.anycast_ip_list.ip_count #=> Integer
@@ -4881,6 +5219,42 @@ module Aws::CloudFront
4881
5219
  req.send_request(options)
4882
5220
  end
4883
5221
 
5222
+ # Gets a connection function.
5223
+ #
5224
+ # @option params [required, String] :identifier
5225
+ # The connection function's identifier.
5226
+ #
5227
+ # @option params [String] :stage
5228
+ # The connection function's stage.
5229
+ #
5230
+ # @return [Types::GetConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5231
+ #
5232
+ # * {Types::GetConnectionFunctionResult#connection_function_code #connection_function_code} => String
5233
+ # * {Types::GetConnectionFunctionResult#etag #etag} => String
5234
+ # * {Types::GetConnectionFunctionResult#content_type #content_type} => String
5235
+ #
5236
+ # @example Request syntax with placeholder values
5237
+ #
5238
+ # resp = client.get_connection_function({
5239
+ # identifier: "string", # required
5240
+ # stage: "DEVELOPMENT", # accepts DEVELOPMENT, LIVE
5241
+ # })
5242
+ #
5243
+ # @example Response structure
5244
+ #
5245
+ # resp.connection_function_code #=> String
5246
+ # resp.etag #=> String
5247
+ # resp.content_type #=> String
5248
+ #
5249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetConnectionFunction AWS API Documentation
5250
+ #
5251
+ # @overload get_connection_function(params = {})
5252
+ # @param [Hash] params ({})
5253
+ def get_connection_function(params = {}, options = {})
5254
+ req = build_request(:get_connection_function, params)
5255
+ req.send_request(options)
5256
+ end
5257
+
4884
5258
  # Gets information about a connection group.
4885
5259
  #
4886
5260
  # @option params [required, String] :identifier
@@ -5117,6 +5491,7 @@ module Aws::CloudFront
5117
5491
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
5118
5492
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
5119
5493
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
5494
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
5120
5495
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
5121
5496
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
5122
5497
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -5249,7 +5624,7 @@ module Aws::CloudFront
5249
5624
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
5250
5625
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
5251
5626
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
5252
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
5627
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
5253
5628
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
5254
5629
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
5255
5630
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -5268,6 +5643,11 @@ module Aws::CloudFront
5268
5643
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
5269
5644
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
5270
5645
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
5646
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
5647
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
5648
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
5649
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
5650
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
5271
5651
  # resp.distribution.alias_icp_recordals #=> Array
5272
5652
  # resp.distribution.alias_icp_recordals[0].cname #=> String
5273
5653
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -5332,6 +5712,7 @@ module Aws::CloudFront
5332
5712
  # resp.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
5333
5713
  # resp.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
5334
5714
  # resp.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
5715
+ # resp.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
5335
5716
  # resp.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
5336
5717
  # resp.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
5337
5718
  # resp.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -5464,7 +5845,7 @@ module Aws::CloudFront
5464
5845
  # resp.distribution_config.viewer_certificate.iam_certificate_id #=> String
5465
5846
  # resp.distribution_config.viewer_certificate.acm_certificate_arn #=> String
5466
5847
  # resp.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
5467
- # resp.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
5848
+ # resp.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
5468
5849
  # resp.distribution_config.viewer_certificate.certificate #=> String
5469
5850
  # resp.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
5470
5851
  # resp.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -5483,6 +5864,11 @@ module Aws::CloudFront
5483
5864
  # resp.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
5484
5865
  # resp.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
5485
5866
  # resp.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
5867
+ # resp.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
5868
+ # resp.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
5869
+ # resp.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
5870
+ # resp.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
5871
+ # resp.distribution_config.connection_function_association.id #=> String
5486
5872
  # resp.etag #=> String
5487
5873
  #
5488
5874
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetDistributionConfig AWS API Documentation
@@ -6347,6 +6733,38 @@ module Aws::CloudFront
6347
6733
  req.send_request(options)
6348
6734
  end
6349
6735
 
6736
+ # Retrieves the resource policy for the specified CloudFront resource
6737
+ # that you own and have shared.
6738
+ #
6739
+ # @option params [required, String] :resource_arn
6740
+ # The Amazon Resource Name (ARN) of the CloudFront resource that is
6741
+ # associated with the resource policy.
6742
+ #
6743
+ # @return [Types::GetResourcePolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6744
+ #
6745
+ # * {Types::GetResourcePolicyResult#resource_arn #resource_arn} => String
6746
+ # * {Types::GetResourcePolicyResult#policy_document #policy_document} => String
6747
+ #
6748
+ # @example Request syntax with placeholder values
6749
+ #
6750
+ # resp = client.get_resource_policy({
6751
+ # resource_arn: "string", # required
6752
+ # })
6753
+ #
6754
+ # @example Response structure
6755
+ #
6756
+ # resp.resource_arn #=> String
6757
+ # resp.policy_document #=> String
6758
+ #
6759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetResourcePolicy AWS API Documentation
6760
+ #
6761
+ # @overload get_resource_policy(params = {})
6762
+ # @param [Hash] params ({})
6763
+ def get_resource_policy(params = {}, options = {})
6764
+ req = build_request(:get_resource_policy, params)
6765
+ req.send_request(options)
6766
+ end
6767
+
6350
6768
  # Gets a response headers policy, including metadata (the policy's
6351
6769
  # identifier and the date and time when the policy was last modified).
6352
6770
  #
@@ -6626,6 +7044,42 @@ module Aws::CloudFront
6626
7044
  req.send_request(options)
6627
7045
  end
6628
7046
 
7047
+ # Gets a trust store.
7048
+ #
7049
+ # @option params [required, String] :identifier
7050
+ # The trust store's identifier.
7051
+ #
7052
+ # @return [Types::GetTrustStoreResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7053
+ #
7054
+ # * {Types::GetTrustStoreResult#trust_store #trust_store} => Types::TrustStore
7055
+ # * {Types::GetTrustStoreResult#etag #etag} => String
7056
+ #
7057
+ # @example Request syntax with placeholder values
7058
+ #
7059
+ # resp = client.get_trust_store({
7060
+ # identifier: "string", # required
7061
+ # })
7062
+ #
7063
+ # @example Response structure
7064
+ #
7065
+ # resp.trust_store.id #=> String
7066
+ # resp.trust_store.arn #=> String
7067
+ # resp.trust_store.name #=> String
7068
+ # resp.trust_store.status #=> String, one of "pending", "active", "failed"
7069
+ # resp.trust_store.number_of_ca_certificates #=> Integer
7070
+ # resp.trust_store.last_modified_time #=> Time
7071
+ # resp.trust_store.reason #=> String
7072
+ # resp.etag #=> String
7073
+ #
7074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetTrustStore AWS API Documentation
7075
+ #
7076
+ # @overload get_trust_store(params = {})
7077
+ # @param [Hash] params ({})
7078
+ def get_trust_store(params = {}, options = {})
7079
+ req = build_request(:get_trust_store, params)
7080
+ req.send_request(options)
7081
+ end
7082
+
6629
7083
  # Get the details of an Amazon CloudFront VPC origin.
6630
7084
  #
6631
7085
  # @option params [required, String] :id
@@ -6681,6 +7135,7 @@ module Aws::CloudFront
6681
7135
  #
6682
7136
  # resp.vpc_origin.id #=> String
6683
7137
  # resp.vpc_origin.arn #=> String
7138
+ # resp.vpc_origin.account_id #=> String
6684
7139
  # resp.vpc_origin.status #=> String
6685
7140
  # resp.vpc_origin.created_time #=> Time
6686
7141
  # resp.vpc_origin.last_modified_time #=> Time
@@ -6735,6 +7190,14 @@ module Aws::CloudFront
6735
7190
  # resp.anycast_ip_lists.items[0].arn #=> String
6736
7191
  # resp.anycast_ip_lists.items[0].ip_count #=> Integer
6737
7192
  # resp.anycast_ip_lists.items[0].last_modified_time #=> Time
7193
+ # resp.anycast_ip_lists.items[0].ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
7194
+ # resp.anycast_ip_lists.items[0].etag #=> String
7195
+ # resp.anycast_ip_lists.items[0].ipam_config.quantity #=> Integer
7196
+ # resp.anycast_ip_lists.items[0].ipam_config.ipam_cidr_configs #=> Array
7197
+ # resp.anycast_ip_lists.items[0].ipam_config.ipam_cidr_configs[0].cidr #=> String
7198
+ # resp.anycast_ip_lists.items[0].ipam_config.ipam_cidr_configs[0].ipam_pool_arn #=> String
7199
+ # resp.anycast_ip_lists.items[0].ipam_config.ipam_cidr_configs[0].anycast_ip #=> String
7200
+ # resp.anycast_ip_lists.items[0].ipam_config.ipam_cidr_configs[0].status #=> String, one of "provisioned", "failed-provision", "provisioning", "deprovisioned", "failed-deprovision", "deprovisioning", "advertised", "failed-advertise", "advertising", "withdrawn", "failed-withdraw", "withdrawing"
6738
7201
  # resp.anycast_ip_lists.marker #=> String
6739
7202
  # resp.anycast_ip_lists.next_marker #=> String
6740
7203
  # resp.anycast_ip_lists.max_items #=> Integer
@@ -6976,6 +7439,62 @@ module Aws::CloudFront
6976
7439
  req.send_request(options)
6977
7440
  end
6978
7441
 
7442
+ # Lists connection functions.
7443
+ #
7444
+ # @option params [String] :marker
7445
+ # Use this field when paginating results to indicate where to begin in
7446
+ # your list. The response includes items in the list that occur after
7447
+ # the marker. To get the next page of the list, set this field's value
7448
+ # to the value of `NextMarker` from the current page's response.
7449
+ #
7450
+ # @option params [Integer] :max_items
7451
+ # The maximum number of connection functions that you want returned in
7452
+ # the response.
7453
+ #
7454
+ # @option params [String] :stage
7455
+ # The connection function's stage.
7456
+ #
7457
+ # @return [Types::ListConnectionFunctionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7458
+ #
7459
+ # * {Types::ListConnectionFunctionsResult#next_marker #next_marker} => String
7460
+ # * {Types::ListConnectionFunctionsResult#connection_functions #connection_functions} => Array&lt;Types::ConnectionFunctionSummary&gt;
7461
+ #
7462
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7463
+ #
7464
+ # @example Request syntax with placeholder values
7465
+ #
7466
+ # resp = client.list_connection_functions({
7467
+ # marker: "string",
7468
+ # max_items: 1,
7469
+ # stage: "DEVELOPMENT", # accepts DEVELOPMENT, LIVE
7470
+ # })
7471
+ #
7472
+ # @example Response structure
7473
+ #
7474
+ # resp.next_marker #=> String
7475
+ # resp.connection_functions #=> Array
7476
+ # resp.connection_functions[0].name #=> String
7477
+ # resp.connection_functions[0].id #=> String
7478
+ # resp.connection_functions[0].connection_function_config.comment #=> String
7479
+ # resp.connection_functions[0].connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
7480
+ # resp.connection_functions[0].connection_function_config.key_value_store_associations.quantity #=> Integer
7481
+ # resp.connection_functions[0].connection_function_config.key_value_store_associations.items #=> Array
7482
+ # resp.connection_functions[0].connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
7483
+ # resp.connection_functions[0].connection_function_arn #=> String
7484
+ # resp.connection_functions[0].status #=> String
7485
+ # resp.connection_functions[0].stage #=> String, one of "DEVELOPMENT", "LIVE"
7486
+ # resp.connection_functions[0].created_time #=> Time
7487
+ # resp.connection_functions[0].last_modified_time #=> Time
7488
+ #
7489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListConnectionFunctions AWS API Documentation
7490
+ #
7491
+ # @overload list_connection_functions(params = {})
7492
+ # @param [Hash] params ({})
7493
+ def list_connection_functions(params = {}, options = {})
7494
+ req = build_request(:list_connection_functions, params)
7495
+ req.send_request(options)
7496
+ end
7497
+
6979
7498
  # Lists the connection groups in your Amazon Web Services account.
6980
7499
  #
6981
7500
  # @option params [Types::ConnectionGroupAssociationFilter] :association_filter
@@ -7281,6 +7800,7 @@ module Aws::CloudFront
7281
7800
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
7282
7801
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
7283
7802
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
7803
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
7284
7804
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
7285
7805
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
7286
7806
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
@@ -7409,7 +7929,7 @@ module Aws::CloudFront
7409
7929
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
7410
7930
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
7411
7931
  # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
7412
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
7932
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
7413
7933
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
7414
7934
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
7415
7935
  # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -7425,6 +7945,11 @@ module Aws::CloudFront
7425
7945
  # resp.distribution_list.items[0].staging #=> Boolean
7426
7946
  # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
7427
7947
  # resp.distribution_list.items[0].anycast_ip_list_id #=> String
7948
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
7949
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
7950
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
7951
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
7952
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
7428
7953
  #
7429
7954
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributions AWS API Documentation
7430
7955
  #
@@ -7501,6 +8026,7 @@ module Aws::CloudFront
7501
8026
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
7502
8027
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
7503
8028
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
8029
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
7504
8030
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
7505
8031
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
7506
8032
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
@@ -7629,7 +8155,7 @@ module Aws::CloudFront
7629
8155
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
7630
8156
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
7631
8157
  # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
7632
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
8158
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
7633
8159
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
7634
8160
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
7635
8161
  # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -7645,6 +8171,11 @@ module Aws::CloudFront
7645
8171
  # resp.distribution_list.items[0].staging #=> Boolean
7646
8172
  # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
7647
8173
  # resp.distribution_list.items[0].anycast_ip_list_id #=> String
8174
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
8175
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
8176
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
8177
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
8178
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
7648
8179
  #
7649
8180
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByAnycastIpListId AWS API Documentation
7650
8181
  #
@@ -7710,10 +8241,237 @@ module Aws::CloudFront
7710
8241
  req.send_request(options)
7711
8242
  end
7712
8243
 
7713
- # Lists the distributions by the connection mode that you specify.
8244
+ # Lists distributions by connection function.
7714
8245
  #
7715
8246
  # @option params [String] :marker
7716
- # The marker for the next set of distributions to retrieve.
8247
+ # Use this field when paginating results to indicate where to begin in
8248
+ # your list. The response includes items in the list that occur after
8249
+ # the marker. To get the next page of the list, set this field's value
8250
+ # to the value of `NextMarker` from the current page's response.
8251
+ #
8252
+ # @option params [Integer] :max_items
8253
+ # The maximum number of distributions that you want returned in the
8254
+ # response.
8255
+ #
8256
+ # @option params [required, String] :connection_function_identifier
8257
+ # The distributions by connection function identifier.
8258
+ #
8259
+ # @return [Types::ListDistributionsByConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8260
+ #
8261
+ # * {Types::ListDistributionsByConnectionFunctionResult#distribution_list #distribution_list} => Types::DistributionList
8262
+ #
8263
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8264
+ #
8265
+ # @example Request syntax with placeholder values
8266
+ #
8267
+ # resp = client.list_distributions_by_connection_function({
8268
+ # marker: "string",
8269
+ # max_items: 1,
8270
+ # connection_function_identifier: "string", # required
8271
+ # })
8272
+ #
8273
+ # @example Response structure
8274
+ #
8275
+ # resp.distribution_list.marker #=> String
8276
+ # resp.distribution_list.next_marker #=> String
8277
+ # resp.distribution_list.max_items #=> Integer
8278
+ # resp.distribution_list.is_truncated #=> Boolean
8279
+ # resp.distribution_list.quantity #=> Integer
8280
+ # resp.distribution_list.items #=> Array
8281
+ # resp.distribution_list.items[0].id #=> String
8282
+ # resp.distribution_list.items[0].arn #=> String
8283
+ # resp.distribution_list.items[0].etag #=> String
8284
+ # resp.distribution_list.items[0].status #=> String
8285
+ # resp.distribution_list.items[0].last_modified_time #=> Time
8286
+ # resp.distribution_list.items[0].domain_name #=> String
8287
+ # resp.distribution_list.items[0].aliases.quantity #=> Integer
8288
+ # resp.distribution_list.items[0].aliases.items #=> Array
8289
+ # resp.distribution_list.items[0].aliases.items[0] #=> String
8290
+ # resp.distribution_list.items[0].origins.quantity #=> Integer
8291
+ # resp.distribution_list.items[0].origins.items #=> Array
8292
+ # resp.distribution_list.items[0].origins.items[0].id #=> String
8293
+ # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
8294
+ # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
8295
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
8296
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
8297
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
8298
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
8299
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
8300
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_read_timeout #=> Integer
8301
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
8302
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
8303
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
8304
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
8305
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
8306
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
8307
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
8308
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
8309
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
8310
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
8311
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
8312
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
8313
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
8314
+ # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
8315
+ # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
8316
+ # resp.distribution_list.items[0].origins.items[0].response_completion_timeout #=> Integer
8317
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.enabled #=> Boolean
8318
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.origin_shield_region #=> String
8319
+ # resp.distribution_list.items[0].origins.items[0].origin_access_control_id #=> String
8320
+ # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
8321
+ # resp.distribution_list.items[0].origin_groups.items #=> Array
8322
+ # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
8323
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.quantity #=> Integer
8324
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items #=> Array
8325
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items[0] #=> Integer
8326
+ # resp.distribution_list.items[0].origin_groups.items[0].members.quantity #=> Integer
8327
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items #=> Array
8328
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items[0].origin_id #=> String
8329
+ # resp.distribution_list.items[0].origin_groups.items[0].selection_criteria #=> String, one of "default", "media-quality-based"
8330
+ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
8331
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
8332
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
8333
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
8334
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
8335
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
8336
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
8337
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
8338
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
8339
+ # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
8340
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
8341
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
8342
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8343
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
8344
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
8345
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8346
+ # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
8347
+ # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
8348
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
8349
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
8350
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
8351
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8352
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
8353
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.quantity #=> Integer
8354
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items #=> Array
8355
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items[0].function_arn #=> String
8356
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8357
+ # resp.distribution_list.items[0].default_cache_behavior.field_level_encryption_id #=> String
8358
+ # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
8359
+ # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
8360
+ # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
8361
+ # resp.distribution_list.items[0].default_cache_behavior.response_headers_policy_id #=> String
8362
+ # resp.distribution_list.items[0].default_cache_behavior.grpc_config.enabled #=> Boolean
8363
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
8364
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
8365
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
8366
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
8367
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
8368
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
8369
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
8370
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
8371
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
8372
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
8373
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
8374
+ # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
8375
+ # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
8376
+ # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
8377
+ # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
8378
+ # resp.distribution_list.items[0].cache_behaviors.items #=> Array
8379
+ # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
8380
+ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
8381
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
8382
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
8383
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
8384
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
8385
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
8386
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
8387
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
8388
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
8389
+ # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
8390
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
8391
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
8392
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8393
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
8394
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
8395
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8396
+ # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
8397
+ # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
8398
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
8399
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
8400
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
8401
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8402
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
8403
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.quantity #=> Integer
8404
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items #=> Array
8405
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items[0].function_arn #=> String
8406
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8407
+ # resp.distribution_list.items[0].cache_behaviors.items[0].field_level_encryption_id #=> String
8408
+ # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
8409
+ # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
8410
+ # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
8411
+ # resp.distribution_list.items[0].cache_behaviors.items[0].response_headers_policy_id #=> String
8412
+ # resp.distribution_list.items[0].cache_behaviors.items[0].grpc_config.enabled #=> Boolean
8413
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
8414
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
8415
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
8416
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
8417
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
8418
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
8419
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
8420
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
8421
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
8422
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
8423
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
8424
+ # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
8425
+ # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
8426
+ # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
8427
+ # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
8428
+ # resp.distribution_list.items[0].custom_error_responses.items #=> Array
8429
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
8430
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
8431
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
8432
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
8433
+ # resp.distribution_list.items[0].comment #=> String
8434
+ # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All", "None"
8435
+ # resp.distribution_list.items[0].enabled #=> Boolean
8436
+ # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
8437
+ # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
8438
+ # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
8439
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
8440
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
8441
+ # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
8442
+ # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
8443
+ # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
8444
+ # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
8445
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
8446
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
8447
+ # resp.distribution_list.items[0].web_acl_id #=> String
8448
+ # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2", "http3", "http2and3"
8449
+ # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
8450
+ # resp.distribution_list.items[0].alias_icp_recordals #=> Array
8451
+ # resp.distribution_list.items[0].alias_icp_recordals[0].cname #=> String
8452
+ # resp.distribution_list.items[0].alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
8453
+ # resp.distribution_list.items[0].staging #=> Boolean
8454
+ # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
8455
+ # resp.distribution_list.items[0].anycast_ip_list_id #=> String
8456
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
8457
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
8458
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
8459
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
8460
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
8461
+ #
8462
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByConnectionFunction AWS API Documentation
8463
+ #
8464
+ # @overload list_distributions_by_connection_function(params = {})
8465
+ # @param [Hash] params ({})
8466
+ def list_distributions_by_connection_function(params = {}, options = {})
8467
+ req = build_request(:list_distributions_by_connection_function, params)
8468
+ req.send_request(options)
8469
+ end
8470
+
8471
+ # Lists the distributions by the connection mode that you specify.
8472
+ #
8473
+ # @option params [String] :marker
8474
+ # The marker for the next set of distributions to retrieve.
7717
8475
  #
7718
8476
  # @option params [Integer] :max_items
7719
8477
  # The maximum number of distributions to return.
@@ -7775,6 +8533,7 @@ module Aws::CloudFront
7775
8533
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
7776
8534
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
7777
8535
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
8536
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
7778
8537
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
7779
8538
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
7780
8539
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
@@ -7903,7 +8662,7 @@ module Aws::CloudFront
7903
8662
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
7904
8663
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
7905
8664
  # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
7906
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
8665
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
7907
8666
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
7908
8667
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
7909
8668
  # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -7919,6 +8678,11 @@ module Aws::CloudFront
7919
8678
  # resp.distribution_list.items[0].staging #=> Boolean
7920
8679
  # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
7921
8680
  # resp.distribution_list.items[0].anycast_ip_list_id #=> String
8681
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
8682
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
8683
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
8684
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
8685
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
7922
8686
  #
7923
8687
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByConnectionMode AWS API Documentation
7924
8688
  #
@@ -8039,6 +8803,55 @@ module Aws::CloudFront
8039
8803
  req.send_request(options)
8040
8804
  end
8041
8805
 
8806
+ # Lists the CloudFront distributions that are associated with the
8807
+ # specified resource that you own.
8808
+ #
8809
+ # @option params [required, String] :resource_arn
8810
+ # The ARN of the CloudFront resource that you've shared with other
8811
+ # Amazon Web Services accounts.
8812
+ #
8813
+ # @option params [String] :marker
8814
+ # Use this field when paginating results to indicate where to begin in
8815
+ # your list of distributions. The response includes distributions in the
8816
+ # list that occur after the marker. To get the next page of the list,
8817
+ # set this field's value to the value of `NextMarker` from the current
8818
+ # page's response.
8819
+ #
8820
+ # @option params [Integer] :max_items
8821
+ # The maximum number of distributions to return.
8822
+ #
8823
+ # @return [Types::ListDistributionsByOwnedResourceResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8824
+ #
8825
+ # * {Types::ListDistributionsByOwnedResourceResult#distribution_list #distribution_list} => Types::DistributionIdOwnerList
8826
+ #
8827
+ # @example Request syntax with placeholder values
8828
+ #
8829
+ # resp = client.list_distributions_by_owned_resource({
8830
+ # resource_arn: "string", # required
8831
+ # marker: "string",
8832
+ # max_items: 1,
8833
+ # })
8834
+ #
8835
+ # @example Response structure
8836
+ #
8837
+ # resp.distribution_list.marker #=> String
8838
+ # resp.distribution_list.next_marker #=> String
8839
+ # resp.distribution_list.max_items #=> Integer
8840
+ # resp.distribution_list.is_truncated #=> Boolean
8841
+ # resp.distribution_list.quantity #=> Integer
8842
+ # resp.distribution_list.items #=> Array
8843
+ # resp.distribution_list.items[0].distribution_id #=> String
8844
+ # resp.distribution_list.items[0].owner_account_id #=> String
8845
+ #
8846
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByOwnedResource AWS API Documentation
8847
+ #
8848
+ # @overload list_distributions_by_owned_resource(params = {})
8849
+ # @param [Hash] params ({})
8850
+ def list_distributions_by_owned_resource(params = {}, options = {})
8851
+ req = build_request(:list_distributions_by_owned_resource, params)
8852
+ req.send_request(options)
8853
+ end
8854
+
8042
8855
  # Gets a list of distributions that have a cache behavior that's
8043
8856
  # associated with the specified real-time log configuration.
8044
8857
  #
@@ -8074,15 +8887,299 @@ module Aws::CloudFront
8074
8887
  #
8075
8888
  # @return [Types::ListDistributionsByRealtimeLogConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8076
8889
  #
8077
- # * {Types::ListDistributionsByRealtimeLogConfigResult#distribution_list #distribution_list} => Types::DistributionList
8890
+ # * {Types::ListDistributionsByRealtimeLogConfigResult#distribution_list #distribution_list} => Types::DistributionList
8891
+ #
8892
+ # @example Request syntax with placeholder values
8893
+ #
8894
+ # resp = client.list_distributions_by_realtime_log_config({
8895
+ # marker: "string",
8896
+ # max_items: 1,
8897
+ # realtime_log_config_name: "string",
8898
+ # realtime_log_config_arn: "string",
8899
+ # })
8900
+ #
8901
+ # @example Response structure
8902
+ #
8903
+ # resp.distribution_list.marker #=> String
8904
+ # resp.distribution_list.next_marker #=> String
8905
+ # resp.distribution_list.max_items #=> Integer
8906
+ # resp.distribution_list.is_truncated #=> Boolean
8907
+ # resp.distribution_list.quantity #=> Integer
8908
+ # resp.distribution_list.items #=> Array
8909
+ # resp.distribution_list.items[0].id #=> String
8910
+ # resp.distribution_list.items[0].arn #=> String
8911
+ # resp.distribution_list.items[0].etag #=> String
8912
+ # resp.distribution_list.items[0].status #=> String
8913
+ # resp.distribution_list.items[0].last_modified_time #=> Time
8914
+ # resp.distribution_list.items[0].domain_name #=> String
8915
+ # resp.distribution_list.items[0].aliases.quantity #=> Integer
8916
+ # resp.distribution_list.items[0].aliases.items #=> Array
8917
+ # resp.distribution_list.items[0].aliases.items[0] #=> String
8918
+ # resp.distribution_list.items[0].origins.quantity #=> Integer
8919
+ # resp.distribution_list.items[0].origins.items #=> Array
8920
+ # resp.distribution_list.items[0].origins.items[0].id #=> String
8921
+ # resp.distribution_list.items[0].origins.items[0].domain_name #=> String
8922
+ # resp.distribution_list.items[0].origins.items[0].origin_path #=> String
8923
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.quantity #=> Integer
8924
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items #=> Array
8925
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_name #=> String
8926
+ # resp.distribution_list.items[0].origins.items[0].custom_headers.items[0].header_value #=> String
8927
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_access_identity #=> String
8928
+ # resp.distribution_list.items[0].origins.items[0].s3_origin_config.origin_read_timeout #=> Integer
8929
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.http_port #=> Integer
8930
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.https_port #=> Integer
8931
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_protocol_policy #=> String, one of "http-only", "match-viewer", "https-only"
8932
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.quantity #=> Integer
8933
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items #=> Array
8934
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_ssl_protocols.items[0] #=> String, one of "SSLv3", "TLSv1", "TLSv1.1", "TLSv1.2"
8935
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_read_timeout #=> Integer
8936
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
8937
+ # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
8938
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
8939
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
8940
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
8941
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
8942
+ # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
8943
+ # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
8944
+ # resp.distribution_list.items[0].origins.items[0].response_completion_timeout #=> Integer
8945
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.enabled #=> Boolean
8946
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.origin_shield_region #=> String
8947
+ # resp.distribution_list.items[0].origins.items[0].origin_access_control_id #=> String
8948
+ # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
8949
+ # resp.distribution_list.items[0].origin_groups.items #=> Array
8950
+ # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
8951
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.quantity #=> Integer
8952
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items #=> Array
8953
+ # resp.distribution_list.items[0].origin_groups.items[0].failover_criteria.status_codes.items[0] #=> Integer
8954
+ # resp.distribution_list.items[0].origin_groups.items[0].members.quantity #=> Integer
8955
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items #=> Array
8956
+ # resp.distribution_list.items[0].origin_groups.items[0].members.items[0].origin_id #=> String
8957
+ # resp.distribution_list.items[0].origin_groups.items[0].selection_criteria #=> String, one of "default", "media-quality-based"
8958
+ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String
8959
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean
8960
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
8961
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
8962
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
8963
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
8964
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
8965
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
8966
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
8967
+ # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
8968
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
8969
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
8970
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8971
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer
8972
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items #=> Array
8973
+ # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
8974
+ # resp.distribution_list.items[0].default_cache_behavior.smooth_streaming #=> Boolean
8975
+ # resp.distribution_list.items[0].default_cache_behavior.compress #=> Boolean
8976
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.quantity #=> Integer
8977
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items #=> Array
8978
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].lambda_function_arn #=> String
8979
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8980
+ # resp.distribution_list.items[0].default_cache_behavior.lambda_function_associations.items[0].include_body #=> Boolean
8981
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.quantity #=> Integer
8982
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items #=> Array
8983
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items[0].function_arn #=> String
8984
+ # resp.distribution_list.items[0].default_cache_behavior.function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
8985
+ # resp.distribution_list.items[0].default_cache_behavior.field_level_encryption_id #=> String
8986
+ # resp.distribution_list.items[0].default_cache_behavior.realtime_log_config_arn #=> String
8987
+ # resp.distribution_list.items[0].default_cache_behavior.cache_policy_id #=> String
8988
+ # resp.distribution_list.items[0].default_cache_behavior.origin_request_policy_id #=> String
8989
+ # resp.distribution_list.items[0].default_cache_behavior.response_headers_policy_id #=> String
8990
+ # resp.distribution_list.items[0].default_cache_behavior.grpc_config.enabled #=> Boolean
8991
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string #=> Boolean
8992
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
8993
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.quantity #=> Integer
8994
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items #=> Array
8995
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.cookies.whitelisted_names.items[0] #=> String
8996
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.quantity #=> Integer
8997
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items #=> Array
8998
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.headers.items[0] #=> String
8999
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.quantity #=> Integer
9000
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items #=> Array
9001
+ # resp.distribution_list.items[0].default_cache_behavior.forwarded_values.query_string_cache_keys.items[0] #=> String
9002
+ # resp.distribution_list.items[0].default_cache_behavior.min_ttl #=> Integer
9003
+ # resp.distribution_list.items[0].default_cache_behavior.default_ttl #=> Integer
9004
+ # resp.distribution_list.items[0].default_cache_behavior.max_ttl #=> Integer
9005
+ # resp.distribution_list.items[0].cache_behaviors.quantity #=> Integer
9006
+ # resp.distribution_list.items[0].cache_behaviors.items #=> Array
9007
+ # resp.distribution_list.items[0].cache_behaviors.items[0].path_pattern #=> String
9008
+ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String
9009
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean
9010
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
9011
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
9012
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
9013
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
9014
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
9015
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
9016
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
9017
+ # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
9018
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
9019
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
9020
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
9021
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer
9022
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items #=> Array
9023
+ # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE"
9024
+ # resp.distribution_list.items[0].cache_behaviors.items[0].smooth_streaming #=> Boolean
9025
+ # resp.distribution_list.items[0].cache_behaviors.items[0].compress #=> Boolean
9026
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.quantity #=> Integer
9027
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items #=> Array
9028
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].lambda_function_arn #=> String
9029
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
9030
+ # resp.distribution_list.items[0].cache_behaviors.items[0].lambda_function_associations.items[0].include_body #=> Boolean
9031
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.quantity #=> Integer
9032
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items #=> Array
9033
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items[0].function_arn #=> String
9034
+ # resp.distribution_list.items[0].cache_behaviors.items[0].function_associations.items[0].event_type #=> String, one of "viewer-request", "viewer-response", "origin-request", "origin-response"
9035
+ # resp.distribution_list.items[0].cache_behaviors.items[0].field_level_encryption_id #=> String
9036
+ # resp.distribution_list.items[0].cache_behaviors.items[0].realtime_log_config_arn #=> String
9037
+ # resp.distribution_list.items[0].cache_behaviors.items[0].cache_policy_id #=> String
9038
+ # resp.distribution_list.items[0].cache_behaviors.items[0].origin_request_policy_id #=> String
9039
+ # resp.distribution_list.items[0].cache_behaviors.items[0].response_headers_policy_id #=> String
9040
+ # resp.distribution_list.items[0].cache_behaviors.items[0].grpc_config.enabled #=> Boolean
9041
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string #=> Boolean
9042
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.forward #=> String, one of "none", "whitelist", "all"
9043
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.quantity #=> Integer
9044
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items #=> Array
9045
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.cookies.whitelisted_names.items[0] #=> String
9046
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.quantity #=> Integer
9047
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items #=> Array
9048
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.headers.items[0] #=> String
9049
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.quantity #=> Integer
9050
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items #=> Array
9051
+ # resp.distribution_list.items[0].cache_behaviors.items[0].forwarded_values.query_string_cache_keys.items[0] #=> String
9052
+ # resp.distribution_list.items[0].cache_behaviors.items[0].min_ttl #=> Integer
9053
+ # resp.distribution_list.items[0].cache_behaviors.items[0].default_ttl #=> Integer
9054
+ # resp.distribution_list.items[0].cache_behaviors.items[0].max_ttl #=> Integer
9055
+ # resp.distribution_list.items[0].custom_error_responses.quantity #=> Integer
9056
+ # resp.distribution_list.items[0].custom_error_responses.items #=> Array
9057
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_code #=> Integer
9058
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_page_path #=> String
9059
+ # resp.distribution_list.items[0].custom_error_responses.items[0].response_code #=> String
9060
+ # resp.distribution_list.items[0].custom_error_responses.items[0].error_caching_min_ttl #=> Integer
9061
+ # resp.distribution_list.items[0].comment #=> String
9062
+ # resp.distribution_list.items[0].price_class #=> String, one of "PriceClass_100", "PriceClass_200", "PriceClass_All", "None"
9063
+ # resp.distribution_list.items[0].enabled #=> Boolean
9064
+ # resp.distribution_list.items[0].viewer_certificate.cloud_front_default_certificate #=> Boolean
9065
+ # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
9066
+ # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
9067
+ # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
9068
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
9069
+ # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
9070
+ # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
9071
+ # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
9072
+ # resp.distribution_list.items[0].restrictions.geo_restriction.quantity #=> Integer
9073
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items #=> Array
9074
+ # resp.distribution_list.items[0].restrictions.geo_restriction.items[0] #=> String
9075
+ # resp.distribution_list.items[0].web_acl_id #=> String
9076
+ # resp.distribution_list.items[0].http_version #=> String, one of "http1.1", "http2", "http3", "http2and3"
9077
+ # resp.distribution_list.items[0].is_ipv6_enabled #=> Boolean
9078
+ # resp.distribution_list.items[0].alias_icp_recordals #=> Array
9079
+ # resp.distribution_list.items[0].alias_icp_recordals[0].cname #=> String
9080
+ # resp.distribution_list.items[0].alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
9081
+ # resp.distribution_list.items[0].staging #=> Boolean
9082
+ # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
9083
+ # resp.distribution_list.items[0].anycast_ip_list_id #=> String
9084
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
9085
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
9086
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
9087
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
9088
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
9089
+ #
9090
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByRealtimeLogConfig AWS API Documentation
9091
+ #
9092
+ # @overload list_distributions_by_realtime_log_config(params = {})
9093
+ # @param [Hash] params ({})
9094
+ def list_distributions_by_realtime_log_config(params = {}, options = {})
9095
+ req = build_request(:list_distributions_by_realtime_log_config, params)
9096
+ req.send_request(options)
9097
+ end
9098
+
9099
+ # Gets a list of distribution IDs for distributions that have a cache
9100
+ # behavior that's associated with the specified response headers
9101
+ # policy.
9102
+ #
9103
+ # You can optionally specify the maximum number of items to receive in
9104
+ # the response. If the total number of items in the list exceeds the
9105
+ # maximum that you specify, or the default maximum, the response is
9106
+ # paginated. To get the next page of items, send a subsequent request
9107
+ # that specifies the `NextMarker` value from the current response as the
9108
+ # `Marker` value in the subsequent request.
9109
+ #
9110
+ # @option params [String] :marker
9111
+ # Use this field when paginating results to indicate where to begin in
9112
+ # your list of distribution IDs. The response includes distribution IDs
9113
+ # in the list that occur after the marker. To get the next page of the
9114
+ # list, set this field's value to the value of `NextMarker` from the
9115
+ # current page's response.
9116
+ #
9117
+ # @option params [Integer] :max_items
9118
+ # The maximum number of distribution IDs that you want to get in the
9119
+ # response.
9120
+ #
9121
+ # @option params [required, String] :response_headers_policy_id
9122
+ # The ID of the response headers policy whose associated distribution
9123
+ # IDs you want to list.
9124
+ #
9125
+ # @return [Types::ListDistributionsByResponseHeadersPolicyIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9126
+ #
9127
+ # * {Types::ListDistributionsByResponseHeadersPolicyIdResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList
9128
+ #
9129
+ # @example Request syntax with placeholder values
9130
+ #
9131
+ # resp = client.list_distributions_by_response_headers_policy_id({
9132
+ # marker: "string",
9133
+ # max_items: 1,
9134
+ # response_headers_policy_id: "string", # required
9135
+ # })
9136
+ #
9137
+ # @example Response structure
9138
+ #
9139
+ # resp.distribution_id_list.marker #=> String
9140
+ # resp.distribution_id_list.next_marker #=> String
9141
+ # resp.distribution_id_list.max_items #=> Integer
9142
+ # resp.distribution_id_list.is_truncated #=> Boolean
9143
+ # resp.distribution_id_list.quantity #=> Integer
9144
+ # resp.distribution_id_list.items #=> Array
9145
+ # resp.distribution_id_list.items[0] #=> String
9146
+ #
9147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByResponseHeadersPolicyId AWS API Documentation
9148
+ #
9149
+ # @overload list_distributions_by_response_headers_policy_id(params = {})
9150
+ # @param [Hash] params ({})
9151
+ def list_distributions_by_response_headers_policy_id(params = {}, options = {})
9152
+ req = build_request(:list_distributions_by_response_headers_policy_id, params)
9153
+ req.send_request(options)
9154
+ end
9155
+
9156
+ # Lists distributions by trust store.
9157
+ #
9158
+ # @option params [required, String] :trust_store_identifier
9159
+ # The distributions by trust store identifier.
9160
+ #
9161
+ # @option params [String] :marker
9162
+ # Use this field when paginating results to indicate where to begin in
9163
+ # your list. The response includes items in the list that occur after
9164
+ # the marker. To get the next page of the list, set this field's value
9165
+ # to the value of `NextMarker` from the current page's response.
9166
+ #
9167
+ # @option params [Integer] :max_items
9168
+ # The maximum number of distributions that you want returned in the
9169
+ # response.
9170
+ #
9171
+ # @return [Types::ListDistributionsByTrustStoreResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9172
+ #
9173
+ # * {Types::ListDistributionsByTrustStoreResult#distribution_list #distribution_list} => Types::DistributionList
9174
+ #
9175
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8078
9176
  #
8079
9177
  # @example Request syntax with placeholder values
8080
9178
  #
8081
- # resp = client.list_distributions_by_realtime_log_config({
9179
+ # resp = client.list_distributions_by_trust_store({
9180
+ # trust_store_identifier: "string", # required
8082
9181
  # marker: "string",
8083
9182
  # max_items: 1,
8084
- # realtime_log_config_name: "string",
8085
- # realtime_log_config_arn: "string",
8086
9183
  # })
8087
9184
  #
8088
9185
  # @example Response structure
@@ -8123,6 +9220,7 @@ module Aws::CloudFront
8123
9220
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
8124
9221
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
8125
9222
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
9223
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
8126
9224
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
8127
9225
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
8128
9226
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
@@ -8251,7 +9349,7 @@ module Aws::CloudFront
8251
9349
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
8252
9350
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
8253
9351
  # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
8254
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
9352
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
8255
9353
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
8256
9354
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
8257
9355
  # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -8267,70 +9365,18 @@ module Aws::CloudFront
8267
9365
  # resp.distribution_list.items[0].staging #=> Boolean
8268
9366
  # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
8269
9367
  # resp.distribution_list.items[0].anycast_ip_list_id #=> String
9368
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
9369
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
9370
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
9371
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
9372
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
8270
9373
  #
8271
- # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByRealtimeLogConfig AWS API Documentation
8272
- #
8273
- # @overload list_distributions_by_realtime_log_config(params = {})
8274
- # @param [Hash] params ({})
8275
- def list_distributions_by_realtime_log_config(params = {}, options = {})
8276
- req = build_request(:list_distributions_by_realtime_log_config, params)
8277
- req.send_request(options)
8278
- end
8279
-
8280
- # Gets a list of distribution IDs for distributions that have a cache
8281
- # behavior that's associated with the specified response headers
8282
- # policy.
8283
- #
8284
- # You can optionally specify the maximum number of items to receive in
8285
- # the response. If the total number of items in the list exceeds the
8286
- # maximum that you specify, or the default maximum, the response is
8287
- # paginated. To get the next page of items, send a subsequent request
8288
- # that specifies the `NextMarker` value from the current response as the
8289
- # `Marker` value in the subsequent request.
8290
- #
8291
- # @option params [String] :marker
8292
- # Use this field when paginating results to indicate where to begin in
8293
- # your list of distribution IDs. The response includes distribution IDs
8294
- # in the list that occur after the marker. To get the next page of the
8295
- # list, set this field's value to the value of `NextMarker` from the
8296
- # current page's response.
8297
- #
8298
- # @option params [Integer] :max_items
8299
- # The maximum number of distribution IDs that you want to get in the
8300
- # response.
8301
- #
8302
- # @option params [required, String] :response_headers_policy_id
8303
- # The ID of the response headers policy whose associated distribution
8304
- # IDs you want to list.
8305
- #
8306
- # @return [Types::ListDistributionsByResponseHeadersPolicyIdResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8307
- #
8308
- # * {Types::ListDistributionsByResponseHeadersPolicyIdResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList
8309
- #
8310
- # @example Request syntax with placeholder values
8311
- #
8312
- # resp = client.list_distributions_by_response_headers_policy_id({
8313
- # marker: "string",
8314
- # max_items: 1,
8315
- # response_headers_policy_id: "string", # required
8316
- # })
8317
- #
8318
- # @example Response structure
8319
- #
8320
- # resp.distribution_id_list.marker #=> String
8321
- # resp.distribution_id_list.next_marker #=> String
8322
- # resp.distribution_id_list.max_items #=> Integer
8323
- # resp.distribution_id_list.is_truncated #=> Boolean
8324
- # resp.distribution_id_list.quantity #=> Integer
8325
- # resp.distribution_id_list.items #=> Array
8326
- # resp.distribution_id_list.items[0] #=> String
8327
- #
8328
- # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByResponseHeadersPolicyId AWS API Documentation
9374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByTrustStore AWS API Documentation
8329
9375
  #
8330
- # @overload list_distributions_by_response_headers_policy_id(params = {})
9376
+ # @overload list_distributions_by_trust_store(params = {})
8331
9377
  # @param [Hash] params ({})
8332
- def list_distributions_by_response_headers_policy_id(params = {}, options = {})
8333
- req = build_request(:list_distributions_by_response_headers_policy_id, params)
9378
+ def list_distributions_by_trust_store(params = {}, options = {})
9379
+ req = build_request(:list_distributions_by_trust_store, params)
8334
9380
  req.send_request(options)
8335
9381
  end
8336
9382
 
@@ -8473,6 +9519,7 @@ module Aws::CloudFront
8473
9519
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
8474
9520
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
8475
9521
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.vpc_origin_id #=> String
9522
+ # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.owner_account_id #=> String
8476
9523
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
8477
9524
  # resp.distribution_list.items[0].origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
8478
9525
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
@@ -8601,7 +9648,7 @@ module Aws::CloudFront
8601
9648
  # resp.distribution_list.items[0].viewer_certificate.iam_certificate_id #=> String
8602
9649
  # resp.distribution_list.items[0].viewer_certificate.acm_certificate_arn #=> String
8603
9650
  # resp.distribution_list.items[0].viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
8604
- # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
9651
+ # resp.distribution_list.items[0].viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
8605
9652
  # resp.distribution_list.items[0].viewer_certificate.certificate #=> String
8606
9653
  # resp.distribution_list.items[0].viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
8607
9654
  # resp.distribution_list.items[0].restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -8617,6 +9664,11 @@ module Aws::CloudFront
8617
9664
  # resp.distribution_list.items[0].staging #=> Boolean
8618
9665
  # resp.distribution_list.items[0].connection_mode #=> String, one of "direct", "tenant-only"
8619
9666
  # resp.distribution_list.items[0].anycast_ip_list_id #=> String
9667
+ # resp.distribution_list.items[0].viewer_mtls_config.mode #=> String, one of "required", "optional"
9668
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.trust_store_id #=> String
9669
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
9670
+ # resp.distribution_list.items[0].viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
9671
+ # resp.distribution_list.items[0].connection_function_association.id #=> String
8620
9672
  #
8621
9673
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByWebACLId AWS API Documentation
8622
9674
  #
@@ -9575,6 +10627,54 @@ module Aws::CloudFront
9575
10627
  req.send_request(options)
9576
10628
  end
9577
10629
 
10630
+ # Lists trust stores.
10631
+ #
10632
+ # @option params [String] :marker
10633
+ # Use this field when paginating results to indicate where to begin in
10634
+ # your list. The response includes items in the list that occur after
10635
+ # the marker. To get the next page of the list, set this field's value
10636
+ # to the value of `NextMarker` from the current page's response.
10637
+ #
10638
+ # @option params [Integer] :max_items
10639
+ # The maximum number of trust stores that you want returned in the
10640
+ # response.
10641
+ #
10642
+ # @return [Types::ListTrustStoresResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10643
+ #
10644
+ # * {Types::ListTrustStoresResult#next_marker #next_marker} => String
10645
+ # * {Types::ListTrustStoresResult#trust_store_list #trust_store_list} => Array&lt;Types::TrustStoreSummary&gt;
10646
+ #
10647
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10648
+ #
10649
+ # @example Request syntax with placeholder values
10650
+ #
10651
+ # resp = client.list_trust_stores({
10652
+ # marker: "string",
10653
+ # max_items: 1,
10654
+ # })
10655
+ #
10656
+ # @example Response structure
10657
+ #
10658
+ # resp.next_marker #=> String
10659
+ # resp.trust_store_list #=> Array
10660
+ # resp.trust_store_list[0].id #=> String
10661
+ # resp.trust_store_list[0].arn #=> String
10662
+ # resp.trust_store_list[0].name #=> String
10663
+ # resp.trust_store_list[0].status #=> String, one of "pending", "active", "failed"
10664
+ # resp.trust_store_list[0].number_of_ca_certificates #=> Integer
10665
+ # resp.trust_store_list[0].last_modified_time #=> Time
10666
+ # resp.trust_store_list[0].reason #=> String
10667
+ # resp.trust_store_list[0].etag #=> String
10668
+ #
10669
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListTrustStores AWS API Documentation
10670
+ #
10671
+ # @overload list_trust_stores(params = {})
10672
+ # @param [Hash] params ({})
10673
+ def list_trust_stores(params = {}, options = {})
10674
+ req = build_request(:list_trust_stores, params)
10675
+ req.send_request(options)
10676
+ end
10677
+
9578
10678
  # List the CloudFront VPC origins in your account.
9579
10679
  #
9580
10680
  # @option params [String] :marker
@@ -9637,6 +10737,7 @@ module Aws::CloudFront
9637
10737
  # resp.vpc_origin_list.items[0].created_time #=> Time
9638
10738
  # resp.vpc_origin_list.items[0].last_modified_time #=> Time
9639
10739
  # resp.vpc_origin_list.items[0].arn #=> String
10740
+ # resp.vpc_origin_list.items[0].account_id #=> String
9640
10741
  # resp.vpc_origin_list.items[0].origin_endpoint_arn #=> String
9641
10742
  #
9642
10743
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListVpcOrigins AWS API Documentation
@@ -9648,6 +10749,49 @@ module Aws::CloudFront
9648
10749
  req.send_request(options)
9649
10750
  end
9650
10751
 
10752
+ # Publishes a connection function.
10753
+ #
10754
+ # @option params [required, String] :id
10755
+ # The connection function ID.
10756
+ #
10757
+ # @option params [required, String] :if_match
10758
+ # The current version (`ETag` value) of the connection function.
10759
+ #
10760
+ # @return [Types::PublishConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10761
+ #
10762
+ # * {Types::PublishConnectionFunctionResult#connection_function_summary #connection_function_summary} => Types::ConnectionFunctionSummary
10763
+ #
10764
+ # @example Request syntax with placeholder values
10765
+ #
10766
+ # resp = client.publish_connection_function({
10767
+ # id: "ResourceId", # required
10768
+ # if_match: "string", # required
10769
+ # })
10770
+ #
10771
+ # @example Response structure
10772
+ #
10773
+ # resp.connection_function_summary.name #=> String
10774
+ # resp.connection_function_summary.id #=> String
10775
+ # resp.connection_function_summary.connection_function_config.comment #=> String
10776
+ # resp.connection_function_summary.connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
10777
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.quantity #=> Integer
10778
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items #=> Array
10779
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
10780
+ # resp.connection_function_summary.connection_function_arn #=> String
10781
+ # resp.connection_function_summary.status #=> String
10782
+ # resp.connection_function_summary.stage #=> String, one of "DEVELOPMENT", "LIVE"
10783
+ # resp.connection_function_summary.created_time #=> Time
10784
+ # resp.connection_function_summary.last_modified_time #=> Time
10785
+ #
10786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/PublishConnectionFunction AWS API Documentation
10787
+ #
10788
+ # @overload publish_connection_function(params = {})
10789
+ # @param [Hash] params ({})
10790
+ def publish_connection_function(params = {}, options = {})
10791
+ req = build_request(:publish_connection_function, params)
10792
+ req.send_request(options)
10793
+ end
10794
+
9651
10795
  # Publishes a CloudFront function by copying the function code from the
9652
10796
  # `DEVELOPMENT` stage to `LIVE`. This automatically updates all cache
9653
10797
  # behaviors that are using this function to use the newly published copy
@@ -9702,6 +10846,39 @@ module Aws::CloudFront
9702
10846
  req.send_request(options)
9703
10847
  end
9704
10848
 
10849
+ # Creates a resource control policy for a given CloudFront resource.
10850
+ #
10851
+ # @option params [required, String] :resource_arn
10852
+ # The Amazon Resource Name (ARN) of the CloudFront resource for which
10853
+ # the policy is being created.
10854
+ #
10855
+ # @option params [required, String] :policy_document
10856
+ # The JSON-formatted resource policy to create.
10857
+ #
10858
+ # @return [Types::PutResourcePolicyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10859
+ #
10860
+ # * {Types::PutResourcePolicyResult#resource_arn #resource_arn} => String
10861
+ #
10862
+ # @example Request syntax with placeholder values
10863
+ #
10864
+ # resp = client.put_resource_policy({
10865
+ # resource_arn: "string", # required
10866
+ # policy_document: "string", # required
10867
+ # })
10868
+ #
10869
+ # @example Response structure
10870
+ #
10871
+ # resp.resource_arn #=> String
10872
+ #
10873
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/PutResourcePolicy AWS API Documentation
10874
+ #
10875
+ # @overload put_resource_policy(params = {})
10876
+ # @param [Hash] params ({})
10877
+ def put_resource_policy(params = {}, options = {})
10878
+ req = build_request(:put_resource_policy, params)
10879
+ req.send_request(options)
10880
+ end
10881
+
9705
10882
  # Add tags to a CloudFront resource. For more information, see [Tagging
9706
10883
  # a distribution][1] in the *Amazon CloudFront Developer Guide*.
9707
10884
  #
@@ -9740,6 +10917,62 @@ module Aws::CloudFront
9740
10917
  req.send_request(options)
9741
10918
  end
9742
10919
 
10920
+ # Tests a connection function.
10921
+ #
10922
+ # @option params [required, String] :id
10923
+ # The connection function ID.
10924
+ #
10925
+ # @option params [required, String] :if_match
10926
+ # The current version (`ETag` value) of the connection function.
10927
+ #
10928
+ # @option params [String] :stage
10929
+ # The connection function stage.
10930
+ #
10931
+ # @option params [required, String, StringIO, File] :connection_object
10932
+ # The connection object.
10933
+ #
10934
+ # @return [Types::TestConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10935
+ #
10936
+ # * {Types::TestConnectionFunctionResult#connection_function_test_result #connection_function_test_result} => Types::ConnectionFunctionTestResult
10937
+ #
10938
+ # @example Request syntax with placeholder values
10939
+ #
10940
+ # resp = client.test_connection_function({
10941
+ # id: "ResourceId", # required
10942
+ # if_match: "string", # required
10943
+ # stage: "DEVELOPMENT", # accepts DEVELOPMENT, LIVE
10944
+ # connection_object: "data", # required
10945
+ # })
10946
+ #
10947
+ # @example Response structure
10948
+ #
10949
+ # resp.connection_function_test_result.connection_function_summary.name #=> String
10950
+ # resp.connection_function_test_result.connection_function_summary.id #=> String
10951
+ # resp.connection_function_test_result.connection_function_summary.connection_function_config.comment #=> String
10952
+ # resp.connection_function_test_result.connection_function_summary.connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
10953
+ # resp.connection_function_test_result.connection_function_summary.connection_function_config.key_value_store_associations.quantity #=> Integer
10954
+ # resp.connection_function_test_result.connection_function_summary.connection_function_config.key_value_store_associations.items #=> Array
10955
+ # resp.connection_function_test_result.connection_function_summary.connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
10956
+ # resp.connection_function_test_result.connection_function_summary.connection_function_arn #=> String
10957
+ # resp.connection_function_test_result.connection_function_summary.status #=> String
10958
+ # resp.connection_function_test_result.connection_function_summary.stage #=> String, one of "DEVELOPMENT", "LIVE"
10959
+ # resp.connection_function_test_result.connection_function_summary.created_time #=> Time
10960
+ # resp.connection_function_test_result.connection_function_summary.last_modified_time #=> Time
10961
+ # resp.connection_function_test_result.compute_utilization #=> String
10962
+ # resp.connection_function_test_result.connection_function_execution_logs #=> Array
10963
+ # resp.connection_function_test_result.connection_function_execution_logs[0] #=> String
10964
+ # resp.connection_function_test_result.connection_function_error_message #=> String
10965
+ # resp.connection_function_test_result.connection_function_output #=> String
10966
+ #
10967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/TestConnectionFunction AWS API Documentation
10968
+ #
10969
+ # @overload test_connection_function(params = {})
10970
+ # @param [Hash] params ({})
10971
+ def test_connection_function(params = {}, options = {})
10972
+ req = build_request(:test_connection_function, params)
10973
+ req.send_request(options)
10974
+ end
10975
+
9743
10976
  # Tests a CloudFront function.
9744
10977
  #
9745
10978
  # To test a function, you provide an *event object* that represents an
@@ -9854,6 +11087,66 @@ module Aws::CloudFront
9854
11087
  req.send_request(options)
9855
11088
  end
9856
11089
 
11090
+ # Updates an Anycast static IP list.
11091
+ #
11092
+ # @option params [required, String] :id
11093
+ # The ID of the Anycast static IP list.
11094
+ #
11095
+ # @option params [String] :ip_address_type
11096
+ # The IP address type for the Anycast static IP list. You can specify
11097
+ # one of the following options:
11098
+ #
11099
+ # * `ipv4` only
11100
+ #
11101
+ # * `ipv6` only
11102
+ #
11103
+ # * `dualstack` - Allocate a list of both IPv4 and IPv6 addresses
11104
+ #
11105
+ # @option params [required, String] :if_match
11106
+ # The current version (ETag value) of the Anycast static IP list that
11107
+ # you are updating.
11108
+ #
11109
+ # @return [Types::UpdateAnycastIpListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11110
+ #
11111
+ # * {Types::UpdateAnycastIpListResult#anycast_ip_list #anycast_ip_list} => Types::AnycastIpList
11112
+ # * {Types::UpdateAnycastIpListResult#etag #etag} => String
11113
+ #
11114
+ # @example Request syntax with placeholder values
11115
+ #
11116
+ # resp = client.update_anycast_ip_list({
11117
+ # id: "string", # required
11118
+ # ip_address_type: "ipv4", # accepts ipv4, ipv6, dualstack
11119
+ # if_match: "string", # required
11120
+ # })
11121
+ #
11122
+ # @example Response structure
11123
+ #
11124
+ # resp.anycast_ip_list.id #=> String
11125
+ # resp.anycast_ip_list.name #=> String
11126
+ # resp.anycast_ip_list.status #=> String
11127
+ # resp.anycast_ip_list.arn #=> String
11128
+ # resp.anycast_ip_list.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
11129
+ # resp.anycast_ip_list.ipam_config.quantity #=> Integer
11130
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs #=> Array
11131
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].cidr #=> String
11132
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].ipam_pool_arn #=> String
11133
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].anycast_ip #=> String
11134
+ # resp.anycast_ip_list.ipam_config.ipam_cidr_configs[0].status #=> String, one of "provisioned", "failed-provision", "provisioning", "deprovisioned", "failed-deprovision", "deprovisioning", "advertised", "failed-advertise", "advertising", "withdrawn", "failed-withdraw", "withdrawing"
11135
+ # resp.anycast_ip_list.anycast_ips #=> Array
11136
+ # resp.anycast_ip_list.anycast_ips[0] #=> String
11137
+ # resp.anycast_ip_list.ip_count #=> Integer
11138
+ # resp.anycast_ip_list.last_modified_time #=> Time
11139
+ # resp.etag #=> String
11140
+ #
11141
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateAnycastIpList AWS API Documentation
11142
+ #
11143
+ # @overload update_anycast_ip_list(params = {})
11144
+ # @param [Hash] params ({})
11145
+ def update_anycast_ip_list(params = {}, options = {})
11146
+ req = build_request(:update_anycast_ip_list, params)
11147
+ req.send_request(options)
11148
+ end
11149
+
9857
11150
  # Updates a cache policy configuration.
9858
11151
  #
9859
11152
  # When you update a cache policy configuration, all the fields are
@@ -10011,6 +11304,71 @@ module Aws::CloudFront
10011
11304
  req.send_request(options)
10012
11305
  end
10013
11306
 
11307
+ # Updates a connection function.
11308
+ #
11309
+ # @option params [required, String] :id
11310
+ # The connection function ID.
11311
+ #
11312
+ # @option params [required, String] :if_match
11313
+ # The current version (`ETag` value) of the connection function you are
11314
+ # updating.
11315
+ #
11316
+ # @option params [required, Types::FunctionConfig] :connection_function_config
11317
+ # Contains configuration information about a CloudFront function.
11318
+ #
11319
+ # @option params [required, String, StringIO, File] :connection_function_code
11320
+ # The connection function code.
11321
+ #
11322
+ # @return [Types::UpdateConnectionFunctionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11323
+ #
11324
+ # * {Types::UpdateConnectionFunctionResult#connection_function_summary #connection_function_summary} => Types::ConnectionFunctionSummary
11325
+ # * {Types::UpdateConnectionFunctionResult#etag #etag} => String
11326
+ #
11327
+ # @example Request syntax with placeholder values
11328
+ #
11329
+ # resp = client.update_connection_function({
11330
+ # id: "ResourceId", # required
11331
+ # if_match: "string", # required
11332
+ # connection_function_config: { # required
11333
+ # comment: "string", # required
11334
+ # runtime: "cloudfront-js-1.0", # required, accepts cloudfront-js-1.0, cloudfront-js-2.0
11335
+ # key_value_store_associations: {
11336
+ # quantity: 1, # required
11337
+ # items: [
11338
+ # {
11339
+ # key_value_store_arn: "KeyValueStoreARN", # required
11340
+ # },
11341
+ # ],
11342
+ # },
11343
+ # },
11344
+ # connection_function_code: "data", # required
11345
+ # })
11346
+ #
11347
+ # @example Response structure
11348
+ #
11349
+ # resp.connection_function_summary.name #=> String
11350
+ # resp.connection_function_summary.id #=> String
11351
+ # resp.connection_function_summary.connection_function_config.comment #=> String
11352
+ # resp.connection_function_summary.connection_function_config.runtime #=> String, one of "cloudfront-js-1.0", "cloudfront-js-2.0"
11353
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.quantity #=> Integer
11354
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items #=> Array
11355
+ # resp.connection_function_summary.connection_function_config.key_value_store_associations.items[0].key_value_store_arn #=> String
11356
+ # resp.connection_function_summary.connection_function_arn #=> String
11357
+ # resp.connection_function_summary.status #=> String
11358
+ # resp.connection_function_summary.stage #=> String, one of "DEVELOPMENT", "LIVE"
11359
+ # resp.connection_function_summary.created_time #=> Time
11360
+ # resp.connection_function_summary.last_modified_time #=> Time
11361
+ # resp.etag #=> String
11362
+ #
11363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateConnectionFunction AWS API Documentation
11364
+ #
11365
+ # @overload update_connection_function(params = {})
11366
+ # @param [Hash] params ({})
11367
+ def update_connection_function(params = {}, options = {})
11368
+ req = build_request(:update_connection_function, params)
11369
+ req.send_request(options)
11370
+ end
11371
+
10014
11372
  # Updates a connection group.
10015
11373
  #
10016
11374
  # @option params [required, String] :id
@@ -10251,6 +11609,7 @@ module Aws::CloudFront
10251
11609
  # },
10252
11610
  # vpc_origin_config: {
10253
11611
  # vpc_origin_id: "string", # required
11612
+ # owner_account_id: "string",
10254
11613
  # origin_read_timeout: 1,
10255
11614
  # origin_keepalive_timeout: 1,
10256
11615
  # },
@@ -10463,7 +11822,7 @@ module Aws::CloudFront
10463
11822
  # iam_certificate_id: "ServerCertificateId",
10464
11823
  # acm_certificate_arn: "string",
10465
11824
  # ssl_support_method: "sni-only", # accepts sni-only, vip, static-ip
10466
- # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025
11825
+ # minimum_protocol_version: "SSLv3", # accepts SSLv3, TLSv1, TLSv1_2016, TLSv1.1_2016, TLSv1.2_2018, TLSv1.2_2019, TLSv1.2_2021, TLSv1.3_2025, TLSv1.2_2025
10467
11826
  # certificate: "string",
10468
11827
  # certificate_source: "cloudfront", # accepts cloudfront, iam, acm
10469
11828
  # },
@@ -10495,6 +11854,17 @@ module Aws::CloudFront
10495
11854
  # ],
10496
11855
  # },
10497
11856
  # connection_mode: "direct", # accepts direct, tenant-only
11857
+ # viewer_mtls_config: {
11858
+ # mode: "required", # accepts required, optional
11859
+ # trust_store_config: {
11860
+ # trust_store_id: "string", # required
11861
+ # advertise_trust_store_ca_names: false,
11862
+ # ignore_certificate_expiry: false,
11863
+ # },
11864
+ # },
11865
+ # connection_function_association: {
11866
+ # id: "ResourceId", # required
11867
+ # },
10498
11868
  # },
10499
11869
  # id: "string", # required
10500
11870
  # if_match: "string",
@@ -10548,6 +11918,7 @@ module Aws::CloudFront
10548
11918
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
10549
11919
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
10550
11920
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
11921
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
10551
11922
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
10552
11923
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
10553
11924
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -10680,7 +12051,7 @@ module Aws::CloudFront
10680
12051
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
10681
12052
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
10682
12053
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
10683
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
12054
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
10684
12055
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
10685
12056
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
10686
12057
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -10699,6 +12070,11 @@ module Aws::CloudFront
10699
12070
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
10700
12071
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
10701
12072
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
12073
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
12074
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
12075
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
12076
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
12077
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
10702
12078
  # resp.distribution.alias_icp_recordals #=> Array
10703
12079
  # resp.distribution.alias_icp_recordals[0].cname #=> String
10704
12080
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -10939,6 +12315,7 @@ module Aws::CloudFront
10939
12315
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
10940
12316
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.ip_address_type #=> String, one of "ipv4", "ipv6", "dualstack"
10941
12317
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.vpc_origin_id #=> String
12318
+ # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.owner_account_id #=> String
10942
12319
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_read_timeout #=> Integer
10943
12320
  # resp.distribution.distribution_config.origins.items[0].vpc_origin_config.origin_keepalive_timeout #=> Integer
10944
12321
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
@@ -11071,7 +12448,7 @@ module Aws::CloudFront
11071
12448
  # resp.distribution.distribution_config.viewer_certificate.iam_certificate_id #=> String
11072
12449
  # resp.distribution.distribution_config.viewer_certificate.acm_certificate_arn #=> String
11073
12450
  # resp.distribution.distribution_config.viewer_certificate.ssl_support_method #=> String, one of "sni-only", "vip", "static-ip"
11074
- # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025"
12451
+ # resp.distribution.distribution_config.viewer_certificate.minimum_protocol_version #=> String, one of "SSLv3", "TLSv1", "TLSv1_2016", "TLSv1.1_2016", "TLSv1.2_2018", "TLSv1.2_2019", "TLSv1.2_2021", "TLSv1.3_2025", "TLSv1.2_2025"
11075
12452
  # resp.distribution.distribution_config.viewer_certificate.certificate #=> String
11076
12453
  # resp.distribution.distribution_config.viewer_certificate.certificate_source #=> String, one of "cloudfront", "iam", "acm"
11077
12454
  # resp.distribution.distribution_config.restrictions.geo_restriction.restriction_type #=> String, one of "blacklist", "whitelist", "none"
@@ -11090,6 +12467,11 @@ module Aws::CloudFront
11090
12467
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.default_value #=> String
11091
12468
  # resp.distribution.distribution_config.tenant_config.parameter_definitions[0].definition.string_schema.required #=> Boolean
11092
12469
  # resp.distribution.distribution_config.connection_mode #=> String, one of "direct", "tenant-only"
12470
+ # resp.distribution.distribution_config.viewer_mtls_config.mode #=> String, one of "required", "optional"
12471
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.trust_store_id #=> String
12472
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.advertise_trust_store_ca_names #=> Boolean
12473
+ # resp.distribution.distribution_config.viewer_mtls_config.trust_store_config.ignore_certificate_expiry #=> Boolean
12474
+ # resp.distribution.distribution_config.connection_function_association.id #=> String
11093
12475
  # resp.distribution.alias_icp_recordals #=> Array
11094
12476
  # resp.distribution.alias_icp_recordals[0].cname #=> String
11095
12477
  # resp.distribution.alias_icp_recordals[0].icp_recordal_status #=> String, one of "APPROVED", "SUSPENDED", "PENDING"
@@ -12128,6 +13510,58 @@ module Aws::CloudFront
12128
13510
  req.send_request(options)
12129
13511
  end
12130
13512
 
13513
+ # Updates a trust store.
13514
+ #
13515
+ # @option params [required, String] :id
13516
+ # The trust store ID.
13517
+ #
13518
+ # @option params [required, Types::CaCertificatesBundleSource] :ca_certificates_bundle_source
13519
+ # The CA certificates bundle source.
13520
+ #
13521
+ # @option params [required, String] :if_match
13522
+ # The current version (`ETag` value) of the trust store you are
13523
+ # updating.
13524
+ #
13525
+ # @return [Types::UpdateTrustStoreResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
13526
+ #
13527
+ # * {Types::UpdateTrustStoreResult#trust_store #trust_store} => Types::TrustStore
13528
+ # * {Types::UpdateTrustStoreResult#etag #etag} => String
13529
+ #
13530
+ # @example Request syntax with placeholder values
13531
+ #
13532
+ # resp = client.update_trust_store({
13533
+ # id: "ResourceId", # required
13534
+ # ca_certificates_bundle_source: { # required
13535
+ # ca_certificates_bundle_s3_location: {
13536
+ # bucket: "string", # required
13537
+ # key: "string", # required
13538
+ # region: "CaCertificatesBundleS3LocationRegionString", # required
13539
+ # version: "string",
13540
+ # },
13541
+ # },
13542
+ # if_match: "string", # required
13543
+ # })
13544
+ #
13545
+ # @example Response structure
13546
+ #
13547
+ # resp.trust_store.id #=> String
13548
+ # resp.trust_store.arn #=> String
13549
+ # resp.trust_store.name #=> String
13550
+ # resp.trust_store.status #=> String, one of "pending", "active", "failed"
13551
+ # resp.trust_store.number_of_ca_certificates #=> Integer
13552
+ # resp.trust_store.last_modified_time #=> Time
13553
+ # resp.trust_store.reason #=> String
13554
+ # resp.etag #=> String
13555
+ #
13556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateTrustStore AWS API Documentation
13557
+ #
13558
+ # @overload update_trust_store(params = {})
13559
+ # @param [Hash] params ({})
13560
+ def update_trust_store(params = {}, options = {})
13561
+ req = build_request(:update_trust_store, params)
13562
+ req.send_request(options)
13563
+ end
13564
+
12131
13565
  # Update an Amazon CloudFront VPC origin in your account.
12132
13566
  #
12133
13567
  # @option params [required, Types::VpcOriginEndpointConfig] :vpc_origin_endpoint_config
@@ -12216,6 +13650,7 @@ module Aws::CloudFront
12216
13650
  #
12217
13651
  # resp.vpc_origin.id #=> String
12218
13652
  # resp.vpc_origin.arn #=> String
13653
+ # resp.vpc_origin.account_id #=> String
12219
13654
  # resp.vpc_origin.status #=> String
12220
13655
  # resp.vpc_origin.created_time #=> Time
12221
13656
  # resp.vpc_origin.last_modified_time #=> Time
@@ -12296,7 +13731,7 @@ module Aws::CloudFront
12296
13731
  tracer: tracer
12297
13732
  )
12298
13733
  context[:gem_name] = 'aws-sdk-cloudfront'
12299
- context[:gem_version] = '1.128.0'
13734
+ context[:gem_version] = '1.140.0'
12300
13735
  Seahorse::Client::Request.new(handlers, context)
12301
13736
  end
12302
13737