aws-sdk-cloudfront 1.40.0 → 1.45.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 968f5cc622b4c5a634edffc333e41fa109bf3be930e3c4af93863d4423265b97
4
- data.tar.gz: 8708f4e79ce672b94390e9fb1ac1eb9979a10226fba28a05144c0cdd80c841d3
3
+ metadata.gz: 57cefecc1c02455e734de7982cbdd7ad1b152437b0c6eb4fef0a2780275b11de
4
+ data.tar.gz: 103d41907f712793e2056263316624379637e66b5454c71e42126d448ddfec5a
5
5
  SHA512:
6
- metadata.gz: b1dbdefd3653e1ce2d1706550597475ab692c821c039d70d25234be84bb6022b5e955251c8a6dc07be25cb5442f71c6de9f23a27ed3728edcbe8b068363090a6
7
- data.tar.gz: 9b784b6a3c29b3ccb92619565a4b9b29545a91895c7e0403de1e3479b9daad70190ecbb7bffec9a042bbf7d980c5777cdf515021aa39fe467863e73c36bfa17a
6
+ metadata.gz: a86afe52963f8dae78364ab28b0a0bf4daa697408b89e1041c79762dd78b1590558df2248e439433d70069c726bba3eccc2758423af64b42151345d7849ea25e
7
+ data.tar.gz: 30ed52478ce5f3d89bce691a6432ccc9e23928fbbd5eafd451717fae375355cc2ed748653f21f8d4e43614503f0dfd66f2cdd6888e75bf60d11d8ff2f0135577
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -48,6 +49,6 @@ require_relative 'aws-sdk-cloudfront/customizations'
48
49
  # @!group service
49
50
  module Aws::CloudFront
50
51
 
51
- GEM_VERSION = '1.40.0'
52
+ GEM_VERSION = '1.45.0'
52
53
 
53
54
  end
@@ -554,6 +554,10 @@ module Aws::CloudFront
554
554
  # },
555
555
  # connection_attempts: 1,
556
556
  # connection_timeout: 1,
557
+ # origin_shield: {
558
+ # enabled: false, # required
559
+ # origin_shield_region: "OriginShieldRegion",
560
+ # },
557
561
  # },
558
562
  # ],
559
563
  # },
@@ -581,7 +585,12 @@ module Aws::CloudFront
581
585
  # },
582
586
  # default_cache_behavior: { # required
583
587
  # target_origin_id: "string", # required
584
- # trusted_signers: { # required
588
+ # trusted_signers: {
589
+ # enabled: false, # required
590
+ # quantity: 1, # required
591
+ # items: ["string"],
592
+ # },
593
+ # trusted_key_groups: {
585
594
  # enabled: false, # required
586
595
  # quantity: 1, # required
587
596
  # items: ["string"],
@@ -639,7 +648,12 @@ module Aws::CloudFront
639
648
  # {
640
649
  # path_pattern: "string", # required
641
650
  # target_origin_id: "string", # required
642
- # trusted_signers: { # required
651
+ # trusted_signers: {
652
+ # enabled: false, # required
653
+ # quantity: 1, # required
654
+ # items: ["string"],
655
+ # },
656
+ # trusted_key_groups: {
643
657
  # enabled: false, # required
644
658
  # quantity: 1, # required
645
659
  # items: ["string"],
@@ -750,6 +764,13 @@ module Aws::CloudFront
750
764
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
751
765
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
752
766
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
767
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
768
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
769
+ # resp.distribution.active_trusted_key_groups.items #=> Array
770
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
771
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
772
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
773
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
753
774
  # resp.distribution.distribution_config.caller_reference #=> String
754
775
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
755
776
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -775,6 +796,8 @@ module Aws::CloudFront
775
796
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
776
797
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
777
798
  # resp.distribution.distribution_config.origins.items[0].connection_timeout #=> Integer
799
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
800
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
778
801
  # resp.distribution.distribution_config.origin_groups.quantity #=> Integer
779
802
  # resp.distribution.distribution_config.origin_groups.items #=> Array
780
803
  # resp.distribution.distribution_config.origin_groups.items[0].id #=> String
@@ -789,6 +812,10 @@ module Aws::CloudFront
789
812
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
790
813
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
791
814
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
815
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
816
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
817
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
818
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
792
819
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
793
820
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
794
821
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -829,6 +856,10 @@ module Aws::CloudFront
829
856
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
830
857
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
831
858
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
859
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
860
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
861
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
862
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
832
863
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
833
864
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
834
865
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -957,6 +988,10 @@ module Aws::CloudFront
957
988
  # },
958
989
  # connection_attempts: 1,
959
990
  # connection_timeout: 1,
991
+ # origin_shield: {
992
+ # enabled: false, # required
993
+ # origin_shield_region: "OriginShieldRegion",
994
+ # },
960
995
  # },
961
996
  # ],
962
997
  # },
@@ -984,7 +1019,12 @@ module Aws::CloudFront
984
1019
  # },
985
1020
  # default_cache_behavior: { # required
986
1021
  # target_origin_id: "string", # required
987
- # trusted_signers: { # required
1022
+ # trusted_signers: {
1023
+ # enabled: false, # required
1024
+ # quantity: 1, # required
1025
+ # items: ["string"],
1026
+ # },
1027
+ # trusted_key_groups: {
988
1028
  # enabled: false, # required
989
1029
  # quantity: 1, # required
990
1030
  # items: ["string"],
@@ -1042,7 +1082,12 @@ module Aws::CloudFront
1042
1082
  # {
1043
1083
  # path_pattern: "string", # required
1044
1084
  # target_origin_id: "string", # required
1045
- # trusted_signers: { # required
1085
+ # trusted_signers: {
1086
+ # enabled: false, # required
1087
+ # quantity: 1, # required
1088
+ # items: ["string"],
1089
+ # },
1090
+ # trusted_key_groups: {
1046
1091
  # enabled: false, # required
1047
1092
  # quantity: 1, # required
1048
1093
  # items: ["string"],
@@ -1162,6 +1207,13 @@ module Aws::CloudFront
1162
1207
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
1163
1208
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
1164
1209
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
1210
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
1211
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
1212
+ # resp.distribution.active_trusted_key_groups.items #=> Array
1213
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
1214
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
1215
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
1216
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
1165
1217
  # resp.distribution.distribution_config.caller_reference #=> String
1166
1218
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
1167
1219
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -1187,6 +1239,8 @@ module Aws::CloudFront
1187
1239
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
1188
1240
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
1189
1241
  # resp.distribution.distribution_config.origins.items[0].connection_timeout #=> Integer
1242
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
1243
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
1190
1244
  # resp.distribution.distribution_config.origin_groups.quantity #=> Integer
1191
1245
  # resp.distribution.distribution_config.origin_groups.items #=> Array
1192
1246
  # resp.distribution.distribution_config.origin_groups.items[0].id #=> String
@@ -1201,6 +1255,10 @@ module Aws::CloudFront
1201
1255
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
1202
1256
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
1203
1257
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
1258
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
1259
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
1260
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
1261
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
1204
1262
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
1205
1263
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
1206
1264
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -1241,6 +1299,10 @@ module Aws::CloudFront
1241
1299
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
1242
1300
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
1243
1301
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
1302
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
1303
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
1304
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
1305
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
1244
1306
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
1245
1307
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
1246
1308
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -1495,6 +1557,63 @@ module Aws::CloudFront
1495
1557
  req.send_request(options)
1496
1558
  end
1497
1559
 
1560
+ # Creates a key group that you can use with [CloudFront signed URLs and
1561
+ # signed cookies][1].
1562
+ #
1563
+ # To create a key group, you must specify at least one public key for
1564
+ # the key group. After you create a key group, you can reference it from
1565
+ # one or more cache behaviors. When you reference a key group in a cache
1566
+ # behavior, CloudFront requires signed URLs or signed cookies for all
1567
+ # requests that match the cache behavior. The URLs or cookies must be
1568
+ # signed with a private key whose corresponding public key is in the key
1569
+ # group. The signed URL or cookie contains information about which
1570
+ # public key CloudFront should use to verify the signature. For more
1571
+ # information, see [Serving private content][1] in the *Amazon
1572
+ # CloudFront Developer Guide*.
1573
+ #
1574
+ #
1575
+ #
1576
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
1577
+ #
1578
+ # @option params [required, Types::KeyGroupConfig] :key_group_config
1579
+ # A key group configuration.
1580
+ #
1581
+ # @return [Types::CreateKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1582
+ #
1583
+ # * {Types::CreateKeyGroupResult#key_group #key_group} => Types::KeyGroup
1584
+ # * {Types::CreateKeyGroupResult#location #location} => String
1585
+ # * {Types::CreateKeyGroupResult#etag #etag} => String
1586
+ #
1587
+ # @example Request syntax with placeholder values
1588
+ #
1589
+ # resp = client.create_key_group({
1590
+ # key_group_config: { # required
1591
+ # name: "string", # required
1592
+ # items: ["string"], # required
1593
+ # comment: "string",
1594
+ # },
1595
+ # })
1596
+ #
1597
+ # @example Response structure
1598
+ #
1599
+ # resp.key_group.id #=> String
1600
+ # resp.key_group.last_modified_time #=> Time
1601
+ # resp.key_group.key_group_config.name #=> String
1602
+ # resp.key_group.key_group_config.items #=> Array
1603
+ # resp.key_group.key_group_config.items[0] #=> String
1604
+ # resp.key_group.key_group_config.comment #=> String
1605
+ # resp.location #=> String
1606
+ # resp.etag #=> String
1607
+ #
1608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateKeyGroup2020_05_31 AWS API Documentation
1609
+ #
1610
+ # @overload create_key_group(params = {})
1611
+ # @param [Hash] params ({})
1612
+ def create_key_group(params = {}, options = {})
1613
+ req = build_request(:create_key_group, params)
1614
+ req.send_request(options)
1615
+ end
1616
+
1498
1617
  # Enables additional CloudWatch metrics for the specified CloudFront
1499
1618
  # distribution. The additional metrics incur an additional cost.
1500
1619
  #
@@ -1640,12 +1759,16 @@ module Aws::CloudFront
1640
1759
  req.send_request(options)
1641
1760
  end
1642
1761
 
1643
- # Add a new public key to CloudFront to use, for example, for
1644
- # field-level encryption. You can add a maximum of 10 public keys with
1645
- # one AWS account.
1762
+ # Uploads a public key to CloudFront that you can use with [signed URLs
1763
+ # and signed cookies][1], or with [field-level encryption][2].
1764
+ #
1765
+ #
1766
+ #
1767
+ # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html
1768
+ # [2]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html
1646
1769
  #
1647
1770
  # @option params [required, Types::PublicKeyConfig] :public_key_config
1648
- # The request to add a public key to CloudFront.
1771
+ # A CloudFront public key configuration.
1649
1772
  #
1650
1773
  # @return [Types::CreatePublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1651
1774
  #
@@ -2114,6 +2237,43 @@ module Aws::CloudFront
2114
2237
  req.send_request(options)
2115
2238
  end
2116
2239
 
2240
+ # Deletes a key group.
2241
+ #
2242
+ # You cannot delete a key group that is referenced in a cache behavior.
2243
+ # First update your distributions to remove the key group from all cache
2244
+ # behaviors, then delete the key group.
2245
+ #
2246
+ # To delete a key group, you must provide the key group’s identifier and
2247
+ # version. To get these values, use `ListKeyGroups` followed by
2248
+ # `GetKeyGroup` or `GetKeyGroupConfig`.
2249
+ #
2250
+ # @option params [required, String] :id
2251
+ # The identifier of the key group that you are deleting. To get the
2252
+ # identifier, use `ListKeyGroups`.
2253
+ #
2254
+ # @option params [String] :if_match
2255
+ # The version of the key group that you are deleting. The version is the
2256
+ # key group’s `ETag` value. To get the `ETag`, use `GetKeyGroup` or
2257
+ # `GetKeyGroupConfig`.
2258
+ #
2259
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2260
+ #
2261
+ # @example Request syntax with placeholder values
2262
+ #
2263
+ # resp = client.delete_key_group({
2264
+ # id: "string", # required
2265
+ # if_match: "string",
2266
+ # })
2267
+ #
2268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteKeyGroup2020_05_31 AWS API Documentation
2269
+ #
2270
+ # @overload delete_key_group(params = {})
2271
+ # @param [Hash] params ({})
2272
+ def delete_key_group(params = {}, options = {})
2273
+ req = build_request(:delete_key_group, params)
2274
+ req.send_request(options)
2275
+ end
2276
+
2117
2277
  # Disables additional CloudWatch metrics for the specified CloudFront
2118
2278
  # distribution.
2119
2279
  #
@@ -2530,6 +2690,13 @@ module Aws::CloudFront
2530
2690
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
2531
2691
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
2532
2692
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
2693
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
2694
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
2695
+ # resp.distribution.active_trusted_key_groups.items #=> Array
2696
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
2697
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
2698
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
2699
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
2533
2700
  # resp.distribution.distribution_config.caller_reference #=> String
2534
2701
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
2535
2702
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -2555,6 +2722,8 @@ module Aws::CloudFront
2555
2722
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
2556
2723
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
2557
2724
  # resp.distribution.distribution_config.origins.items[0].connection_timeout #=> Integer
2725
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
2726
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
2558
2727
  # resp.distribution.distribution_config.origin_groups.quantity #=> Integer
2559
2728
  # resp.distribution.distribution_config.origin_groups.items #=> Array
2560
2729
  # resp.distribution.distribution_config.origin_groups.items[0].id #=> String
@@ -2569,6 +2738,10 @@ module Aws::CloudFront
2569
2738
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
2570
2739
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
2571
2740
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
2741
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
2742
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
2743
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
2744
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
2572
2745
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2573
2746
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
2574
2747
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -2609,6 +2782,10 @@ module Aws::CloudFront
2609
2782
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
2610
2783
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
2611
2784
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
2785
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
2786
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
2787
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
2788
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
2612
2789
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2613
2790
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
2614
2791
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -2731,6 +2908,8 @@ module Aws::CloudFront
2731
2908
  # resp.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
2732
2909
  # resp.distribution_config.origins.items[0].connection_attempts #=> Integer
2733
2910
  # resp.distribution_config.origins.items[0].connection_timeout #=> Integer
2911
+ # resp.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
2912
+ # resp.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
2734
2913
  # resp.distribution_config.origin_groups.quantity #=> Integer
2735
2914
  # resp.distribution_config.origin_groups.items #=> Array
2736
2915
  # resp.distribution_config.origin_groups.items[0].id #=> String
@@ -2745,6 +2924,10 @@ module Aws::CloudFront
2745
2924
  # resp.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
2746
2925
  # resp.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
2747
2926
  # resp.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
2927
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
2928
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
2929
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
2930
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
2748
2931
  # resp.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2749
2932
  # resp.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
2750
2933
  # resp.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -2785,6 +2968,10 @@ module Aws::CloudFront
2785
2968
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
2786
2969
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
2787
2970
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
2971
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
2972
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
2973
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
2974
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
2788
2975
  # resp.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2789
2976
  # resp.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
2790
2977
  # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -3068,6 +3255,90 @@ module Aws::CloudFront
3068
3255
  req.send_request(options)
3069
3256
  end
3070
3257
 
3258
+ # Gets a key group, including the date and time when the key group was
3259
+ # last modified.
3260
+ #
3261
+ # To get a key group, you must provide the key group’s identifier. If
3262
+ # the key group is referenced in a distribution’s cache behavior, you
3263
+ # can get the key group’s identifier using `ListDistributions` or
3264
+ # `GetDistribution`. If the key group is not referenced in a cache
3265
+ # behavior, you can get the identifier using `ListKeyGroups`.
3266
+ #
3267
+ # @option params [required, String] :id
3268
+ # The identifier of the key group that you are getting. To get the
3269
+ # identifier, use `ListKeyGroups`.
3270
+ #
3271
+ # @return [Types::GetKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3272
+ #
3273
+ # * {Types::GetKeyGroupResult#key_group #key_group} => Types::KeyGroup
3274
+ # * {Types::GetKeyGroupResult#etag #etag} => String
3275
+ #
3276
+ # @example Request syntax with placeholder values
3277
+ #
3278
+ # resp = client.get_key_group({
3279
+ # id: "string", # required
3280
+ # })
3281
+ #
3282
+ # @example Response structure
3283
+ #
3284
+ # resp.key_group.id #=> String
3285
+ # resp.key_group.last_modified_time #=> Time
3286
+ # resp.key_group.key_group_config.name #=> String
3287
+ # resp.key_group.key_group_config.items #=> Array
3288
+ # resp.key_group.key_group_config.items[0] #=> String
3289
+ # resp.key_group.key_group_config.comment #=> String
3290
+ # resp.etag #=> String
3291
+ #
3292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroup2020_05_31 AWS API Documentation
3293
+ #
3294
+ # @overload get_key_group(params = {})
3295
+ # @param [Hash] params ({})
3296
+ def get_key_group(params = {}, options = {})
3297
+ req = build_request(:get_key_group, params)
3298
+ req.send_request(options)
3299
+ end
3300
+
3301
+ # Gets a key group configuration.
3302
+ #
3303
+ # To get a key group configuration, you must provide the key group’s
3304
+ # identifier. If the key group is referenced in a distribution’s cache
3305
+ # behavior, you can get the key group’s identifier using
3306
+ # `ListDistributions` or `GetDistribution`. If the key group is not
3307
+ # referenced in a cache behavior, you can get the identifier using
3308
+ # `ListKeyGroups`.
3309
+ #
3310
+ # @option params [required, String] :id
3311
+ # The identifier of the key group whose configuration you are getting.
3312
+ # To get the identifier, use `ListKeyGroups`.
3313
+ #
3314
+ # @return [Types::GetKeyGroupConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3315
+ #
3316
+ # * {Types::GetKeyGroupConfigResult#key_group_config #key_group_config} => Types::KeyGroupConfig
3317
+ # * {Types::GetKeyGroupConfigResult#etag #etag} => String
3318
+ #
3319
+ # @example Request syntax with placeholder values
3320
+ #
3321
+ # resp = client.get_key_group_config({
3322
+ # id: "string", # required
3323
+ # })
3324
+ #
3325
+ # @example Response structure
3326
+ #
3327
+ # resp.key_group_config.name #=> String
3328
+ # resp.key_group_config.items #=> Array
3329
+ # resp.key_group_config.items[0] #=> String
3330
+ # resp.key_group_config.comment #=> String
3331
+ # resp.etag #=> String
3332
+ #
3333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroupConfig2020_05_31 AWS API Documentation
3334
+ #
3335
+ # @overload get_key_group_config(params = {})
3336
+ # @param [Hash] params ({})
3337
+ def get_key_group_config(params = {}, options = {})
3338
+ req = build_request(:get_key_group_config, params)
3339
+ req.send_request(options)
3340
+ end
3341
+
3071
3342
  # Gets information about whether additional CloudWatch metrics are
3072
3343
  # enabled for the specified CloudFront distribution.
3073
3344
  #
@@ -3214,10 +3485,10 @@ module Aws::CloudFront
3214
3485
  req.send_request(options)
3215
3486
  end
3216
3487
 
3217
- # Get the public key information.
3488
+ # Gets a public key.
3218
3489
  #
3219
3490
  # @option params [required, String] :id
3220
- # Request the ID for the public key.
3491
+ # The identifier of the public key you are getting.
3221
3492
  #
3222
3493
  # @return [Types::GetPublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3223
3494
  #
@@ -3249,10 +3520,10 @@ module Aws::CloudFront
3249
3520
  req.send_request(options)
3250
3521
  end
3251
3522
 
3252
- # Return public key configuration informaation
3523
+ # Gets a public key configuration.
3253
3524
  #
3254
3525
  # @option params [required, String] :id
3255
- # Request the ID for the public key configuration.
3526
+ # The identifier of the public key whose configuration you are getting.
3256
3527
  #
3257
3528
  # @return [Types::GetPublicKeyConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3258
3529
  #
@@ -3627,6 +3898,8 @@ module Aws::CloudFront
3627
3898
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
3628
3899
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
3629
3900
  # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
3901
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.enabled #=> Boolean
3902
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.origin_shield_region #=> String
3630
3903
  # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
3631
3904
  # resp.distribution_list.items[0].origin_groups.items #=> Array
3632
3905
  # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
@@ -3641,6 +3914,10 @@ module Aws::CloudFront
3641
3914
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
3642
3915
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
3643
3916
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
3917
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
3918
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
3919
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
3920
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
3644
3921
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3645
3922
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
3646
3923
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -3681,6 +3958,10 @@ module Aws::CloudFront
3681
3958
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
3682
3959
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
3683
3960
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
3961
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
3962
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
3963
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
3964
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
3684
3965
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3685
3966
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
3686
3967
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -3804,6 +4085,61 @@ module Aws::CloudFront
3804
4085
  req.send_request(options)
3805
4086
  end
3806
4087
 
4088
+ # Gets a list of distribution IDs for distributions that have a cache
4089
+ # behavior that references the specified key group.
4090
+ #
4091
+ # You can optionally specify the maximum number of items to receive in
4092
+ # the response. If the total number of items in the list exceeds the
4093
+ # maximum that you specify, or the default maximum, the response is
4094
+ # paginated. To get the next page of items, send a subsequent request
4095
+ # that specifies the `NextMarker` value from the current response as the
4096
+ # `Marker` value in the subsequent request.
4097
+ #
4098
+ # @option params [String] :marker
4099
+ # Use this field when paginating results to indicate where to begin in
4100
+ # your list of distribution IDs. The response includes distribution IDs
4101
+ # in the list that occur after the marker. To get the next page of the
4102
+ # list, set this field’s value to the value of `NextMarker` from the
4103
+ # current page’s response.
4104
+ #
4105
+ # @option params [Integer] :max_items
4106
+ # The maximum number of distribution IDs that you want in the response.
4107
+ #
4108
+ # @option params [required, String] :key_group_id
4109
+ # The ID of the key group whose associated distribution IDs you are
4110
+ # listing.
4111
+ #
4112
+ # @return [Types::ListDistributionsByKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4113
+ #
4114
+ # * {Types::ListDistributionsByKeyGroupResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList
4115
+ #
4116
+ # @example Request syntax with placeholder values
4117
+ #
4118
+ # resp = client.list_distributions_by_key_group({
4119
+ # marker: "string",
4120
+ # max_items: 1,
4121
+ # key_group_id: "string", # required
4122
+ # })
4123
+ #
4124
+ # @example Response structure
4125
+ #
4126
+ # resp.distribution_id_list.marker #=> String
4127
+ # resp.distribution_id_list.next_marker #=> String
4128
+ # resp.distribution_id_list.max_items #=> Integer
4129
+ # resp.distribution_id_list.is_truncated #=> Boolean
4130
+ # resp.distribution_id_list.quantity #=> Integer
4131
+ # resp.distribution_id_list.items #=> Array
4132
+ # resp.distribution_id_list.items[0] #=> String
4133
+ #
4134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByKeyGroup2020_05_31 AWS API Documentation
4135
+ #
4136
+ # @overload list_distributions_by_key_group(params = {})
4137
+ # @param [Hash] params ({})
4138
+ def list_distributions_by_key_group(params = {}, options = {})
4139
+ req = build_request(:list_distributions_by_key_group, params)
4140
+ req.send_request(options)
4141
+ end
4142
+
3807
4143
  # Gets a list of distribution IDs for distributions that have a cache
3808
4144
  # behavior that’s associated with the specified origin request policy.
3809
4145
  #
@@ -3941,6 +4277,8 @@ module Aws::CloudFront
3941
4277
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
3942
4278
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
3943
4279
  # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
4280
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.enabled #=> Boolean
4281
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.origin_shield_region #=> String
3944
4282
  # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
3945
4283
  # resp.distribution_list.items[0].origin_groups.items #=> Array
3946
4284
  # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
@@ -3955,6 +4293,10 @@ module Aws::CloudFront
3955
4293
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
3956
4294
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
3957
4295
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
4296
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
4297
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
4298
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
4299
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
3958
4300
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3959
4301
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
3960
4302
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -3995,6 +4337,10 @@ module Aws::CloudFront
3995
4337
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
3996
4338
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
3997
4339
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
4340
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
4341
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
4342
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
4343
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
3998
4344
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3999
4345
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
4000
4346
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -4131,6 +4477,8 @@ module Aws::CloudFront
4131
4477
  # resp.distribution_list.items[0].origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
4132
4478
  # resp.distribution_list.items[0].origins.items[0].connection_attempts #=> Integer
4133
4479
  # resp.distribution_list.items[0].origins.items[0].connection_timeout #=> Integer
4480
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.enabled #=> Boolean
4481
+ # resp.distribution_list.items[0].origins.items[0].origin_shield.origin_shield_region #=> String
4134
4482
  # resp.distribution_list.items[0].origin_groups.quantity #=> Integer
4135
4483
  # resp.distribution_list.items[0].origin_groups.items #=> Array
4136
4484
  # resp.distribution_list.items[0].origin_groups.items[0].id #=> String
@@ -4145,6 +4493,10 @@ module Aws::CloudFront
4145
4493
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
4146
4494
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
4147
4495
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
4496
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
4497
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
4498
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
4499
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
4148
4500
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
4149
4501
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
4150
4502
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -4185,6 +4537,10 @@ module Aws::CloudFront
4185
4537
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
4186
4538
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
4187
4539
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
4540
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
4541
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
4542
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
4543
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
4188
4544
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
4189
4545
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
4190
4546
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -4415,6 +4771,58 @@ module Aws::CloudFront
4415
4771
  req.send_request(options)
4416
4772
  end
4417
4773
 
4774
+ # Gets a list of key groups.
4775
+ #
4776
+ # You can optionally specify the maximum number of items to receive in
4777
+ # the response. If the total number of items in the list exceeds the
4778
+ # maximum that you specify, or the default maximum, the response is
4779
+ # paginated. To get the next page of items, send a subsequent request
4780
+ # that specifies the `NextMarker` value from the current response as the
4781
+ # `Marker` value in the subsequent request.
4782
+ #
4783
+ # @option params [String] :marker
4784
+ # Use this field when paginating results to indicate where to begin in
4785
+ # your list of key groups. The response includes key groups in the list
4786
+ # that occur after the marker. To get the next page of the list, set
4787
+ # this field’s value to the value of `NextMarker` from the current
4788
+ # page’s response.
4789
+ #
4790
+ # @option params [Integer] :max_items
4791
+ # The maximum number of key groups that you want in the response.
4792
+ #
4793
+ # @return [Types::ListKeyGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4794
+ #
4795
+ # * {Types::ListKeyGroupsResult#key_group_list #key_group_list} => Types::KeyGroupList
4796
+ #
4797
+ # @example Request syntax with placeholder values
4798
+ #
4799
+ # resp = client.list_key_groups({
4800
+ # marker: "string",
4801
+ # max_items: 1,
4802
+ # })
4803
+ #
4804
+ # @example Response structure
4805
+ #
4806
+ # resp.key_group_list.next_marker #=> String
4807
+ # resp.key_group_list.max_items #=> Integer
4808
+ # resp.key_group_list.quantity #=> Integer
4809
+ # resp.key_group_list.items #=> Array
4810
+ # resp.key_group_list.items[0].key_group.id #=> String
4811
+ # resp.key_group_list.items[0].key_group.last_modified_time #=> Time
4812
+ # resp.key_group_list.items[0].key_group.key_group_config.name #=> String
4813
+ # resp.key_group_list.items[0].key_group.key_group_config.items #=> Array
4814
+ # resp.key_group_list.items[0].key_group.key_group_config.items[0] #=> String
4815
+ # resp.key_group_list.items[0].key_group.key_group_config.comment #=> String
4816
+ #
4817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListKeyGroups2020_05_31 AWS API Documentation
4818
+ #
4819
+ # @overload list_key_groups(params = {})
4820
+ # @param [Hash] params ({})
4821
+ def list_key_groups(params = {}, options = {})
4822
+ req = build_request(:list_key_groups, params)
4823
+ req.send_request(options)
4824
+ end
4825
+
4418
4826
  # Gets a list of origin request policies.
4419
4827
  #
4420
4828
  # You can optionally apply a filter to return only the managed policies
@@ -5028,6 +5436,10 @@ module Aws::CloudFront
5028
5436
  # },
5029
5437
  # connection_attempts: 1,
5030
5438
  # connection_timeout: 1,
5439
+ # origin_shield: {
5440
+ # enabled: false, # required
5441
+ # origin_shield_region: "OriginShieldRegion",
5442
+ # },
5031
5443
  # },
5032
5444
  # ],
5033
5445
  # },
@@ -5055,7 +5467,12 @@ module Aws::CloudFront
5055
5467
  # },
5056
5468
  # default_cache_behavior: { # required
5057
5469
  # target_origin_id: "string", # required
5058
- # trusted_signers: { # required
5470
+ # trusted_signers: {
5471
+ # enabled: false, # required
5472
+ # quantity: 1, # required
5473
+ # items: ["string"],
5474
+ # },
5475
+ # trusted_key_groups: {
5059
5476
  # enabled: false, # required
5060
5477
  # quantity: 1, # required
5061
5478
  # items: ["string"],
@@ -5113,7 +5530,12 @@ module Aws::CloudFront
5113
5530
  # {
5114
5531
  # path_pattern: "string", # required
5115
5532
  # target_origin_id: "string", # required
5116
- # trusted_signers: { # required
5533
+ # trusted_signers: {
5534
+ # enabled: false, # required
5535
+ # quantity: 1, # required
5536
+ # items: ["string"],
5537
+ # },
5538
+ # trusted_key_groups: {
5117
5539
  # enabled: false, # required
5118
5540
  # quantity: 1, # required
5119
5541
  # items: ["string"],
@@ -5226,6 +5648,13 @@ module Aws::CloudFront
5226
5648
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
5227
5649
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
5228
5650
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
5651
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
5652
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
5653
+ # resp.distribution.active_trusted_key_groups.items #=> Array
5654
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
5655
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
5656
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
5657
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
5229
5658
  # resp.distribution.distribution_config.caller_reference #=> String
5230
5659
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
5231
5660
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -5251,6 +5680,8 @@ module Aws::CloudFront
5251
5680
  # resp.distribution.distribution_config.origins.items[0].custom_origin_config.origin_keepalive_timeout #=> Integer
5252
5681
  # resp.distribution.distribution_config.origins.items[0].connection_attempts #=> Integer
5253
5682
  # resp.distribution.distribution_config.origins.items[0].connection_timeout #=> Integer
5683
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.enabled #=> Boolean
5684
+ # resp.distribution.distribution_config.origins.items[0].origin_shield.origin_shield_region #=> String
5254
5685
  # resp.distribution.distribution_config.origin_groups.quantity #=> Integer
5255
5686
  # resp.distribution.distribution_config.origin_groups.items #=> Array
5256
5687
  # resp.distribution.distribution_config.origin_groups.items[0].id #=> String
@@ -5265,6 +5696,10 @@ module Aws::CloudFront
5265
5696
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
5266
5697
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
5267
5698
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
5699
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
5700
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
5701
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
5702
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
5268
5703
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
5269
5704
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
5270
5705
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -5305,6 +5740,10 @@ module Aws::CloudFront
5305
5740
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
5306
5741
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
5307
5742
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
5743
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
5744
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
5745
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
5746
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
5308
5747
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
5309
5748
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
5310
5749
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -5526,6 +5965,67 @@ module Aws::CloudFront
5526
5965
  req.send_request(options)
5527
5966
  end
5528
5967
 
5968
+ # Updates a key group.
5969
+ #
5970
+ # When you update a key group, all the fields are updated with the
5971
+ # values provided in the request. You cannot update some fields
5972
+ # independent of others. To update a key group:
5973
+ #
5974
+ # 1. Get the current key group with `GetKeyGroup` or
5975
+ # `GetKeyGroupConfig`.
5976
+ #
5977
+ # 2. Locally modify the fields in the key group that you want to
5978
+ # update. For example, add or remove public key IDs.
5979
+ #
5980
+ # 3. Call `UpdateKeyGroup` with the entire key group object, including
5981
+ # the fields that you modified and those that you didn’t.
5982
+ #
5983
+ # @option params [required, Types::KeyGroupConfig] :key_group_config
5984
+ # The key group configuration.
5985
+ #
5986
+ # @option params [required, String] :id
5987
+ # The identifier of the key group that you are updating.
5988
+ #
5989
+ # @option params [String] :if_match
5990
+ # The version of the key group that you are updating. The version is the
5991
+ # key group’s `ETag` value.
5992
+ #
5993
+ # @return [Types::UpdateKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5994
+ #
5995
+ # * {Types::UpdateKeyGroupResult#key_group #key_group} => Types::KeyGroup
5996
+ # * {Types::UpdateKeyGroupResult#etag #etag} => String
5997
+ #
5998
+ # @example Request syntax with placeholder values
5999
+ #
6000
+ # resp = client.update_key_group({
6001
+ # key_group_config: { # required
6002
+ # name: "string", # required
6003
+ # items: ["string"], # required
6004
+ # comment: "string",
6005
+ # },
6006
+ # id: "string", # required
6007
+ # if_match: "string",
6008
+ # })
6009
+ #
6010
+ # @example Response structure
6011
+ #
6012
+ # resp.key_group.id #=> String
6013
+ # resp.key_group.last_modified_time #=> Time
6014
+ # resp.key_group.key_group_config.name #=> String
6015
+ # resp.key_group.key_group_config.items #=> Array
6016
+ # resp.key_group.key_group_config.items[0] #=> String
6017
+ # resp.key_group.key_group_config.comment #=> String
6018
+ # resp.etag #=> String
6019
+ #
6020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateKeyGroup2020_05_31 AWS API Documentation
6021
+ #
6022
+ # @overload update_key_group(params = {})
6023
+ # @param [Hash] params ({})
6024
+ def update_key_group(params = {}, options = {})
6025
+ req = build_request(:update_key_group, params)
6026
+ req.send_request(options)
6027
+ end
6028
+
5529
6029
  # Updates an origin request policy configuration.
5530
6030
  #
5531
6031
  # When you update an origin request policy configuration, all the fields
@@ -5627,10 +6127,10 @@ module Aws::CloudFront
5627
6127
  # is the comment.
5628
6128
  #
5629
6129
  # @option params [required, Types::PublicKeyConfig] :public_key_config
5630
- # Request to update public key information.
6130
+ # A public key configuration.
5631
6131
  #
5632
6132
  # @option params [required, String] :id
5633
- # ID of the public key to be updated.
6133
+ # The identifier of the public key that you are updating.
5634
6134
  #
5635
6135
  # @option params [String] :if_match
5636
6136
  # The value of the `ETag` header that you received when retrieving the
@@ -5864,7 +6364,7 @@ module Aws::CloudFront
5864
6364
  params: params,
5865
6365
  config: config)
5866
6366
  context[:gem_name] = 'aws-sdk-cloudfront'
5867
- context[:gem_version] = '1.40.0'
6367
+ context[:gem_version] = '1.45.0'
5868
6368
  Seahorse::Client::Request.new(handlers, context)
5869
6369
  end
5870
6370