aws-sdk-cloudfront 1.44.0 → 1.49.0

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.49.0
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-cloudfront/customizations'
49
49
  # @!group service
50
50
  module Aws::CloudFront
51
51
 
52
- GEM_VERSION = '1.44.0'
52
+ GEM_VERSION = '1.49.0'
53
53
 
54
54
  end
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -585,7 +585,12 @@ module Aws::CloudFront
585
585
  # },
586
586
  # default_cache_behavior: { # required
587
587
  # target_origin_id: "string", # required
588
- # trusted_signers: { # required
588
+ # trusted_signers: {
589
+ # enabled: false, # required
590
+ # quantity: 1, # required
591
+ # items: ["string"],
592
+ # },
593
+ # trusted_key_groups: {
589
594
  # enabled: false, # required
590
595
  # quantity: 1, # required
591
596
  # items: ["string"],
@@ -643,7 +648,12 @@ module Aws::CloudFront
643
648
  # {
644
649
  # path_pattern: "string", # required
645
650
  # target_origin_id: "string", # required
646
- # trusted_signers: { # required
651
+ # trusted_signers: {
652
+ # enabled: false, # required
653
+ # quantity: 1, # required
654
+ # items: ["string"],
655
+ # },
656
+ # trusted_key_groups: {
647
657
  # enabled: false, # required
648
658
  # quantity: 1, # required
649
659
  # items: ["string"],
@@ -754,6 +764,13 @@ module Aws::CloudFront
754
764
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
755
765
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
756
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
757
774
  # resp.distribution.distribution_config.caller_reference #=> String
758
775
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
759
776
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -795,6 +812,10 @@ module Aws::CloudFront
795
812
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
796
813
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
797
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
798
819
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
799
820
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
800
821
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -835,6 +856,10 @@ module Aws::CloudFront
835
856
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
836
857
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
837
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
838
863
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
839
864
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
840
865
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -994,7 +1019,12 @@ module Aws::CloudFront
994
1019
  # },
995
1020
  # default_cache_behavior: { # required
996
1021
  # target_origin_id: "string", # required
997
- # trusted_signers: { # required
1022
+ # trusted_signers: {
1023
+ # enabled: false, # required
1024
+ # quantity: 1, # required
1025
+ # items: ["string"],
1026
+ # },
1027
+ # trusted_key_groups: {
998
1028
  # enabled: false, # required
999
1029
  # quantity: 1, # required
1000
1030
  # items: ["string"],
@@ -1052,7 +1082,12 @@ module Aws::CloudFront
1052
1082
  # {
1053
1083
  # path_pattern: "string", # required
1054
1084
  # target_origin_id: "string", # required
1055
- # trusted_signers: { # required
1085
+ # trusted_signers: {
1086
+ # enabled: false, # required
1087
+ # quantity: 1, # required
1088
+ # items: ["string"],
1089
+ # },
1090
+ # trusted_key_groups: {
1056
1091
  # enabled: false, # required
1057
1092
  # quantity: 1, # required
1058
1093
  # items: ["string"],
@@ -1172,6 +1207,13 @@ module Aws::CloudFront
1172
1207
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
1173
1208
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
1174
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
1175
1217
  # resp.distribution.distribution_config.caller_reference #=> String
1176
1218
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
1177
1219
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -1213,6 +1255,10 @@ module Aws::CloudFront
1213
1255
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
1214
1256
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
1215
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
1216
1262
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
1217
1263
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
1218
1264
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -1253,6 +1299,10 @@ module Aws::CloudFront
1253
1299
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
1254
1300
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
1255
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
1256
1306
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
1257
1307
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
1258
1308
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -1507,6 +1557,63 @@ module Aws::CloudFront
1507
1557
  req.send_request(options)
1508
1558
  end
1509
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
+
1510
1617
  # Enables additional CloudWatch metrics for the specified CloudFront
1511
1618
  # distribution. The additional metrics incur an additional cost.
1512
1619
  #
@@ -1652,12 +1759,16 @@ module Aws::CloudFront
1652
1759
  req.send_request(options)
1653
1760
  end
1654
1761
 
1655
- # Add a new public key to CloudFront to use, for example, for
1656
- # field-level encryption. You can add a maximum of 10 public keys with
1657
- # 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
1658
1769
  #
1659
1770
  # @option params [required, Types::PublicKeyConfig] :public_key_config
1660
- # The request to add a public key to CloudFront.
1771
+ # A CloudFront public key configuration.
1661
1772
  #
1662
1773
  # @return [Types::CreatePublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1663
1774
  #
@@ -1774,40 +1885,14 @@ module Aws::CloudFront
1774
1885
  req.send_request(options)
1775
1886
  end
1776
1887
 
1777
- # Creates a new RTMP distribution. An RTMP distribution is similar to a
1778
- # web distribution, but an RTMP distribution streams media files using
1779
- # the Adobe Real-Time Messaging Protocol (RTMP) instead of serving files
1780
- # using HTTP.
1781
- #
1782
- # To create a new distribution, submit a `POST` request to the
1783
- # *CloudFront API version*/distribution resource. The request body must
1784
- # include a document with a *StreamingDistributionConfig* element. The
1785
- # response echoes the `StreamingDistributionConfig` element and returns
1786
- # other information about the RTMP distribution.
1787
- #
1788
- # To get the status of your request, use the *GET StreamingDistribution*
1789
- # API action. When the value of `Enabled` is `true` and the value of
1790
- # `Status` is `Deployed`, your distribution is ready. A distribution
1791
- # usually deploys in less than 15 minutes.
1792
- #
1793
- # For more information about web distributions, see [Working with RTMP
1794
- # Distributions][1] in the *Amazon CloudFront Developer Guide*.
1888
+ # This API is deprecated. Amazon CloudFront is deprecating real-time
1889
+ # messaging protocol (RTMP) distributions on December 31, 2020. For more
1890
+ # information, [read the announcement][1] on the Amazon CloudFront
1891
+ # discussion forum.
1795
1892
  #
1796
- # Beginning with the 2012-05-05 version of the CloudFront API, we made
1797
- # substantial changes to the format of the XML document that you include
1798
- # in the request body when you create or update a web distribution or an
1799
- # RTMP distribution, and when you invalidate objects. With previous
1800
- # versions of the API, we discovered that it was too easy to
1801
- # accidentally delete one or more values for an element that accepts
1802
- # multiple values, for example, CNAMEs and trusted signers. Our changes
1803
- # for the 2012-05-05 release are intended to prevent these accidental
1804
- # deletions and to notify you when there's a mismatch between the
1805
- # number of values you say you're specifying in the `Quantity` element
1806
- # and the number of values specified.
1807
1893
  #
1808
1894
  #
1809
- #
1810
- # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html
1895
+ # [1]: http://forums.aws.amazon.com/ann.jspa?annID=7356
1811
1896
  #
1812
1897
  # @option params [required, Types::StreamingDistributionConfig] :streaming_distribution_config
1813
1898
  # The streaming distribution's configuration information.
@@ -1889,7 +1974,14 @@ module Aws::CloudFront
1889
1974
  req.send_request(options)
1890
1975
  end
1891
1976
 
1892
- # Create a new streaming distribution with tags.
1977
+ # This API is deprecated. Amazon CloudFront is deprecating real-time
1978
+ # messaging protocol (RTMP) distributions on December 31, 2020. For more
1979
+ # information, [read the announcement][1] on the Amazon CloudFront
1980
+ # discussion forum.
1981
+ #
1982
+ #
1983
+ #
1984
+ # [1]: http://forums.aws.amazon.com/ann.jspa?annID=7356
1893
1985
  #
1894
1986
  # @option params [required, Types::StreamingDistributionConfigWithTags] :streaming_distribution_config_with_tags
1895
1987
  # The streaming distribution's configuration information.
@@ -2126,6 +2218,43 @@ module Aws::CloudFront
2126
2218
  req.send_request(options)
2127
2219
  end
2128
2220
 
2221
+ # Deletes a key group.
2222
+ #
2223
+ # You cannot delete a key group that is referenced in a cache behavior.
2224
+ # First update your distributions to remove the key group from all cache
2225
+ # behaviors, then delete the key group.
2226
+ #
2227
+ # To delete a key group, you must provide the key group’s identifier and
2228
+ # version. To get these values, use `ListKeyGroups` followed by
2229
+ # `GetKeyGroup` or `GetKeyGroupConfig`.
2230
+ #
2231
+ # @option params [required, String] :id
2232
+ # The identifier of the key group that you are deleting. To get the
2233
+ # identifier, use `ListKeyGroups`.
2234
+ #
2235
+ # @option params [String] :if_match
2236
+ # The version of the key group that you are deleting. The version is the
2237
+ # key group’s `ETag` value. To get the `ETag`, use `GetKeyGroup` or
2238
+ # `GetKeyGroupConfig`.
2239
+ #
2240
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2241
+ #
2242
+ # @example Request syntax with placeholder values
2243
+ #
2244
+ # resp = client.delete_key_group({
2245
+ # id: "string", # required
2246
+ # if_match: "string",
2247
+ # })
2248
+ #
2249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteKeyGroup2020_05_31 AWS API Documentation
2250
+ #
2251
+ # @overload delete_key_group(params = {})
2252
+ # @param [Hash] params ({})
2253
+ def delete_key_group(params = {}, options = {})
2254
+ req = build_request(:delete_key_group, params)
2255
+ req.send_request(options)
2256
+ end
2257
+
2129
2258
  # Disables additional CloudWatch metrics for the specified CloudFront
2130
2259
  # distribution.
2131
2260
  #
@@ -2542,6 +2671,13 @@ module Aws::CloudFront
2542
2671
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
2543
2672
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
2544
2673
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
2674
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
2675
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
2676
+ # resp.distribution.active_trusted_key_groups.items #=> Array
2677
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
2678
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
2679
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
2680
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
2545
2681
  # resp.distribution.distribution_config.caller_reference #=> String
2546
2682
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
2547
2683
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -2583,6 +2719,10 @@ module Aws::CloudFront
2583
2719
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
2584
2720
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
2585
2721
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
2722
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
2723
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
2724
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
2725
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
2586
2726
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2587
2727
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
2588
2728
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -2623,6 +2763,10 @@ module Aws::CloudFront
2623
2763
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
2624
2764
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
2625
2765
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
2766
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
2767
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
2768
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
2769
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
2626
2770
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2627
2771
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
2628
2772
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -2761,6 +2905,10 @@ module Aws::CloudFront
2761
2905
  # resp.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
2762
2906
  # resp.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
2763
2907
  # resp.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
2908
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
2909
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
2910
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
2911
+ # resp.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
2764
2912
  # resp.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2765
2913
  # resp.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
2766
2914
  # resp.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -2801,6 +2949,10 @@ module Aws::CloudFront
2801
2949
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
2802
2950
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
2803
2951
  # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
2952
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
2953
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
2954
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
2955
+ # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
2804
2956
  # resp.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
2805
2957
  # resp.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
2806
2958
  # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -3084,6 +3236,90 @@ module Aws::CloudFront
3084
3236
  req.send_request(options)
3085
3237
  end
3086
3238
 
3239
+ # Gets a key group, including the date and time when the key group was
3240
+ # last modified.
3241
+ #
3242
+ # To get a key group, you must provide the key group’s identifier. If
3243
+ # the key group is referenced in a distribution’s cache behavior, you
3244
+ # can get the key group’s identifier using `ListDistributions` or
3245
+ # `GetDistribution`. If the key group is not referenced in a cache
3246
+ # behavior, you can get the identifier using `ListKeyGroups`.
3247
+ #
3248
+ # @option params [required, String] :id
3249
+ # The identifier of the key group that you are getting. To get the
3250
+ # identifier, use `ListKeyGroups`.
3251
+ #
3252
+ # @return [Types::GetKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3253
+ #
3254
+ # * {Types::GetKeyGroupResult#key_group #key_group} => Types::KeyGroup
3255
+ # * {Types::GetKeyGroupResult#etag #etag} => String
3256
+ #
3257
+ # @example Request syntax with placeholder values
3258
+ #
3259
+ # resp = client.get_key_group({
3260
+ # id: "string", # required
3261
+ # })
3262
+ #
3263
+ # @example Response structure
3264
+ #
3265
+ # resp.key_group.id #=> String
3266
+ # resp.key_group.last_modified_time #=> Time
3267
+ # resp.key_group.key_group_config.name #=> String
3268
+ # resp.key_group.key_group_config.items #=> Array
3269
+ # resp.key_group.key_group_config.items[0] #=> String
3270
+ # resp.key_group.key_group_config.comment #=> String
3271
+ # resp.etag #=> String
3272
+ #
3273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroup2020_05_31 AWS API Documentation
3274
+ #
3275
+ # @overload get_key_group(params = {})
3276
+ # @param [Hash] params ({})
3277
+ def get_key_group(params = {}, options = {})
3278
+ req = build_request(:get_key_group, params)
3279
+ req.send_request(options)
3280
+ end
3281
+
3282
+ # Gets a key group configuration.
3283
+ #
3284
+ # To get a key group configuration, you must provide the key group’s
3285
+ # identifier. If the key group is referenced in a distribution’s cache
3286
+ # behavior, you can get the key group’s identifier using
3287
+ # `ListDistributions` or `GetDistribution`. If the key group is not
3288
+ # referenced in a cache behavior, you can get the identifier using
3289
+ # `ListKeyGroups`.
3290
+ #
3291
+ # @option params [required, String] :id
3292
+ # The identifier of the key group whose configuration you are getting.
3293
+ # To get the identifier, use `ListKeyGroups`.
3294
+ #
3295
+ # @return [Types::GetKeyGroupConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3296
+ #
3297
+ # * {Types::GetKeyGroupConfigResult#key_group_config #key_group_config} => Types::KeyGroupConfig
3298
+ # * {Types::GetKeyGroupConfigResult#etag #etag} => String
3299
+ #
3300
+ # @example Request syntax with placeholder values
3301
+ #
3302
+ # resp = client.get_key_group_config({
3303
+ # id: "string", # required
3304
+ # })
3305
+ #
3306
+ # @example Response structure
3307
+ #
3308
+ # resp.key_group_config.name #=> String
3309
+ # resp.key_group_config.items #=> Array
3310
+ # resp.key_group_config.items[0] #=> String
3311
+ # resp.key_group_config.comment #=> String
3312
+ # resp.etag #=> String
3313
+ #
3314
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroupConfig2020_05_31 AWS API Documentation
3315
+ #
3316
+ # @overload get_key_group_config(params = {})
3317
+ # @param [Hash] params ({})
3318
+ def get_key_group_config(params = {}, options = {})
3319
+ req = build_request(:get_key_group_config, params)
3320
+ req.send_request(options)
3321
+ end
3322
+
3087
3323
  # Gets information about whether additional CloudWatch metrics are
3088
3324
  # enabled for the specified CloudFront distribution.
3089
3325
  #
@@ -3230,10 +3466,10 @@ module Aws::CloudFront
3230
3466
  req.send_request(options)
3231
3467
  end
3232
3468
 
3233
- # Get the public key information.
3469
+ # Gets a public key.
3234
3470
  #
3235
3471
  # @option params [required, String] :id
3236
- # Request the ID for the public key.
3472
+ # The identifier of the public key you are getting.
3237
3473
  #
3238
3474
  # @return [Types::GetPublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3239
3475
  #
@@ -3265,10 +3501,10 @@ module Aws::CloudFront
3265
3501
  req.send_request(options)
3266
3502
  end
3267
3503
 
3268
- # Return public key configuration informaation
3504
+ # Gets a public key configuration.
3269
3505
  #
3270
3506
  # @option params [required, String] :id
3271
- # Request the ID for the public key configuration.
3507
+ # The identifier of the public key whose configuration you are getting.
3272
3508
  #
3273
3509
  # @return [Types::GetPublicKeyConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3274
3510
  #
@@ -3659,6 +3895,10 @@ module Aws::CloudFront
3659
3895
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
3660
3896
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
3661
3897
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
3898
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
3899
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
3900
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
3901
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
3662
3902
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3663
3903
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
3664
3904
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -3699,6 +3939,10 @@ module Aws::CloudFront
3699
3939
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
3700
3940
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
3701
3941
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
3942
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
3943
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
3944
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
3945
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
3702
3946
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3703
3947
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
3704
3948
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -3822,6 +4066,61 @@ module Aws::CloudFront
3822
4066
  req.send_request(options)
3823
4067
  end
3824
4068
 
4069
+ # Gets a list of distribution IDs for distributions that have a cache
4070
+ # behavior that references the specified key group.
4071
+ #
4072
+ # You can optionally specify the maximum number of items to receive in
4073
+ # the response. If the total number of items in the list exceeds the
4074
+ # maximum that you specify, or the default maximum, the response is
4075
+ # paginated. To get the next page of items, send a subsequent request
4076
+ # that specifies the `NextMarker` value from the current response as the
4077
+ # `Marker` value in the subsequent request.
4078
+ #
4079
+ # @option params [String] :marker
4080
+ # Use this field when paginating results to indicate where to begin in
4081
+ # your list of distribution IDs. The response includes distribution IDs
4082
+ # in the list that occur after the marker. To get the next page of the
4083
+ # list, set this field’s value to the value of `NextMarker` from the
4084
+ # current page’s response.
4085
+ #
4086
+ # @option params [Integer] :max_items
4087
+ # The maximum number of distribution IDs that you want in the response.
4088
+ #
4089
+ # @option params [required, String] :key_group_id
4090
+ # The ID of the key group whose associated distribution IDs you are
4091
+ # listing.
4092
+ #
4093
+ # @return [Types::ListDistributionsByKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4094
+ #
4095
+ # * {Types::ListDistributionsByKeyGroupResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList
4096
+ #
4097
+ # @example Request syntax with placeholder values
4098
+ #
4099
+ # resp = client.list_distributions_by_key_group({
4100
+ # marker: "string",
4101
+ # max_items: 1,
4102
+ # key_group_id: "string", # required
4103
+ # })
4104
+ #
4105
+ # @example Response structure
4106
+ #
4107
+ # resp.distribution_id_list.marker #=> String
4108
+ # resp.distribution_id_list.next_marker #=> String
4109
+ # resp.distribution_id_list.max_items #=> Integer
4110
+ # resp.distribution_id_list.is_truncated #=> Boolean
4111
+ # resp.distribution_id_list.quantity #=> Integer
4112
+ # resp.distribution_id_list.items #=> Array
4113
+ # resp.distribution_id_list.items[0] #=> String
4114
+ #
4115
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByKeyGroup2020_05_31 AWS API Documentation
4116
+ #
4117
+ # @overload list_distributions_by_key_group(params = {})
4118
+ # @param [Hash] params ({})
4119
+ def list_distributions_by_key_group(params = {}, options = {})
4120
+ req = build_request(:list_distributions_by_key_group, params)
4121
+ req.send_request(options)
4122
+ end
4123
+
3825
4124
  # Gets a list of distribution IDs for distributions that have a cache
3826
4125
  # behavior that’s associated with the specified origin request policy.
3827
4126
  #
@@ -3975,6 +4274,10 @@ module Aws::CloudFront
3975
4274
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
3976
4275
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
3977
4276
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
4277
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
4278
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
4279
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
4280
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
3978
4281
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
3979
4282
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
3980
4283
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -4015,6 +4318,10 @@ module Aws::CloudFront
4015
4318
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
4016
4319
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
4017
4320
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
4321
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
4322
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
4323
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
4324
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
4018
4325
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
4019
4326
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
4020
4327
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -4167,6 +4474,10 @@ module Aws::CloudFront
4167
4474
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer
4168
4475
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array
4169
4476
  # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String
4477
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean
4478
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer
4479
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array
4480
+ # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String
4170
4481
  # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
4171
4482
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer
4172
4483
  # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array
@@ -4207,6 +4518,10 @@ module Aws::CloudFront
4207
4518
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer
4208
4519
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array
4209
4520
  # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String
4521
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
4522
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
4523
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array
4524
+ # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
4210
4525
  # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
4211
4526
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer
4212
4527
  # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -4437,6 +4752,58 @@ module Aws::CloudFront
4437
4752
  req.send_request(options)
4438
4753
  end
4439
4754
 
4755
+ # Gets a list of key groups.
4756
+ #
4757
+ # You can optionally specify the maximum number of items to receive in
4758
+ # the response. If the total number of items in the list exceeds the
4759
+ # maximum that you specify, or the default maximum, the response is
4760
+ # paginated. To get the next page of items, send a subsequent request
4761
+ # that specifies the `NextMarker` value from the current response as the
4762
+ # `Marker` value in the subsequent request.
4763
+ #
4764
+ # @option params [String] :marker
4765
+ # Use this field when paginating results to indicate where to begin in
4766
+ # your list of key groups. The response includes key groups in the list
4767
+ # that occur after the marker. To get the next page of the list, set
4768
+ # this field’s value to the value of `NextMarker` from the current
4769
+ # page’s response.
4770
+ #
4771
+ # @option params [Integer] :max_items
4772
+ # The maximum number of key groups that you want in the response.
4773
+ #
4774
+ # @return [Types::ListKeyGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4775
+ #
4776
+ # * {Types::ListKeyGroupsResult#key_group_list #key_group_list} => Types::KeyGroupList
4777
+ #
4778
+ # @example Request syntax with placeholder values
4779
+ #
4780
+ # resp = client.list_key_groups({
4781
+ # marker: "string",
4782
+ # max_items: 1,
4783
+ # })
4784
+ #
4785
+ # @example Response structure
4786
+ #
4787
+ # resp.key_group_list.next_marker #=> String
4788
+ # resp.key_group_list.max_items #=> Integer
4789
+ # resp.key_group_list.quantity #=> Integer
4790
+ # resp.key_group_list.items #=> Array
4791
+ # resp.key_group_list.items[0].key_group.id #=> String
4792
+ # resp.key_group_list.items[0].key_group.last_modified_time #=> Time
4793
+ # resp.key_group_list.items[0].key_group.key_group_config.name #=> String
4794
+ # resp.key_group_list.items[0].key_group.key_group_config.items #=> Array
4795
+ # resp.key_group_list.items[0].key_group.key_group_config.items[0] #=> String
4796
+ # resp.key_group_list.items[0].key_group.key_group_config.comment #=> String
4797
+ #
4798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListKeyGroups2020_05_31 AWS API Documentation
4799
+ #
4800
+ # @overload list_key_groups(params = {})
4801
+ # @param [Hash] params ({})
4802
+ def list_key_groups(params = {}, options = {})
4803
+ req = build_request(:list_key_groups, params)
4804
+ req.send_request(options)
4805
+ end
4806
+
4440
4807
  # Gets a list of origin request policies.
4441
4808
  #
4442
4809
  # You can optionally apply a filter to return only the managed policies
@@ -5081,7 +5448,12 @@ module Aws::CloudFront
5081
5448
  # },
5082
5449
  # default_cache_behavior: { # required
5083
5450
  # target_origin_id: "string", # required
5084
- # trusted_signers: { # required
5451
+ # trusted_signers: {
5452
+ # enabled: false, # required
5453
+ # quantity: 1, # required
5454
+ # items: ["string"],
5455
+ # },
5456
+ # trusted_key_groups: {
5085
5457
  # enabled: false, # required
5086
5458
  # quantity: 1, # required
5087
5459
  # items: ["string"],
@@ -5139,7 +5511,12 @@ module Aws::CloudFront
5139
5511
  # {
5140
5512
  # path_pattern: "string", # required
5141
5513
  # target_origin_id: "string", # required
5142
- # trusted_signers: { # required
5514
+ # trusted_signers: {
5515
+ # enabled: false, # required
5516
+ # quantity: 1, # required
5517
+ # items: ["string"],
5518
+ # },
5519
+ # trusted_key_groups: {
5143
5520
  # enabled: false, # required
5144
5521
  # quantity: 1, # required
5145
5522
  # items: ["string"],
@@ -5252,6 +5629,13 @@ module Aws::CloudFront
5252
5629
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer
5253
5630
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array
5254
5631
  # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String
5632
+ # resp.distribution.active_trusted_key_groups.enabled #=> Boolean
5633
+ # resp.distribution.active_trusted_key_groups.quantity #=> Integer
5634
+ # resp.distribution.active_trusted_key_groups.items #=> Array
5635
+ # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String
5636
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer
5637
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array
5638
+ # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String
5255
5639
  # resp.distribution.distribution_config.caller_reference #=> String
5256
5640
  # resp.distribution.distribution_config.aliases.quantity #=> Integer
5257
5641
  # resp.distribution.distribution_config.aliases.items #=> Array
@@ -5293,6 +5677,10 @@ module Aws::CloudFront
5293
5677
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer
5294
5678
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array
5295
5679
  # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String
5680
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean
5681
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer
5682
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array
5683
+ # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String
5296
5684
  # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
5297
5685
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer
5298
5686
  # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array
@@ -5333,6 +5721,10 @@ module Aws::CloudFront
5333
5721
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer
5334
5722
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array
5335
5723
  # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String
5724
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean
5725
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer
5726
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array
5727
+ # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String
5336
5728
  # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https"
5337
5729
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer
5338
5730
  # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array
@@ -5554,6 +5946,67 @@ module Aws::CloudFront
5554
5946
  req.send_request(options)
5555
5947
  end
5556
5948
 
5949
+ # Updates a key group.
5950
+ #
5951
+ # When you update a key group, all the fields are updated with the
5952
+ # values provided in the request. You cannot update some fields
5953
+ # independent of others. To update a key group:
5954
+ #
5955
+ # 1. Get the current key group with `GetKeyGroup` or
5956
+ # `GetKeyGroupConfig`.
5957
+ #
5958
+ # 2. Locally modify the fields in the key group that you want to
5959
+ # update. For example, add or remove public key IDs.
5960
+ #
5961
+ # 3. Call `UpdateKeyGroup` with the entire key group object, including
5962
+ # the fields that you modified and those that you didn’t.
5963
+ #
5964
+ # @option params [required, Types::KeyGroupConfig] :key_group_config
5965
+ # The key group configuration.
5966
+ #
5967
+ # @option params [required, String] :id
5968
+ # The identifier of the key group that you are updating.
5969
+ #
5970
+ # @option params [String] :if_match
5971
+ # The version of the key group that you are updating. The version is the
5972
+ # key group’s `ETag` value.
5973
+ #
5974
+ # @return [Types::UpdateKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5975
+ #
5976
+ # * {Types::UpdateKeyGroupResult#key_group #key_group} => Types::KeyGroup
5977
+ # * {Types::UpdateKeyGroupResult#etag #etag} => String
5978
+ #
5979
+ # @example Request syntax with placeholder values
5980
+ #
5981
+ # resp = client.update_key_group({
5982
+ # key_group_config: { # required
5983
+ # name: "string", # required
5984
+ # items: ["string"], # required
5985
+ # comment: "string",
5986
+ # },
5987
+ # id: "string", # required
5988
+ # if_match: "string",
5989
+ # })
5990
+ #
5991
+ # @example Response structure
5992
+ #
5993
+ # resp.key_group.id #=> String
5994
+ # resp.key_group.last_modified_time #=> Time
5995
+ # resp.key_group.key_group_config.name #=> String
5996
+ # resp.key_group.key_group_config.items #=> Array
5997
+ # resp.key_group.key_group_config.items[0] #=> String
5998
+ # resp.key_group.key_group_config.comment #=> String
5999
+ # resp.etag #=> String
6000
+ #
6001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateKeyGroup2020_05_31 AWS API Documentation
6002
+ #
6003
+ # @overload update_key_group(params = {})
6004
+ # @param [Hash] params ({})
6005
+ def update_key_group(params = {}, options = {})
6006
+ req = build_request(:update_key_group, params)
6007
+ req.send_request(options)
6008
+ end
6009
+
5557
6010
  # Updates an origin request policy configuration.
5558
6011
  #
5559
6012
  # When you update an origin request policy configuration, all the fields
@@ -5655,10 +6108,10 @@ module Aws::CloudFront
5655
6108
  # is the comment.
5656
6109
  #
5657
6110
  # @option params [required, Types::PublicKeyConfig] :public_key_config
5658
- # Request to update public key information.
6111
+ # A public key configuration.
5659
6112
  #
5660
6113
  # @option params [required, String] :id
5661
- # ID of the public key to be updated.
6114
+ # The identifier of the public key that you are updating.
5662
6115
  #
5663
6116
  # @option params [String] :if_match
5664
6117
  # The value of the `ETag` header that you received when retrieving the
@@ -5892,7 +6345,7 @@ module Aws::CloudFront
5892
6345
  params: params,
5893
6346
  config: config)
5894
6347
  context[:gem_name] = 'aws-sdk-cloudfront'
5895
- context[:gem_version] = '1.44.0'
6348
+ context[:gem_version] = '1.49.0'
5896
6349
  Seahorse::Client::Request.new(handlers, context)
5897
6350
  end
5898
6351