lib/aws-sdk-cloudfront/client.rb in aws-sdk-cloudfront-1.44.0 vs lib/aws-sdk-cloudfront/client.rb in aws-sdk-cloudfront-1.45.0

- old
+ new

@@ -583,15 +583,20 @@ # }, # ], # }, # default_cache_behavior: { # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -641,15 +646,20 @@ # quantity: 1, # required # items: [ # { # path_pattern: "string", # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -752,10 +762,17 @@ # resp.distribution.active_trusted_signers.items #=> Array # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String + # resp.distribution.active_trusted_key_groups.enabled #=> Boolean + # resp.distribution.active_trusted_key_groups.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String # resp.distribution.distribution_config.caller_reference #=> String # resp.distribution.distribution_config.aliases.quantity #=> Integer # resp.distribution.distribution_config.aliases.items #=> Array # resp.distribution.distribution_config.aliases.items[0] #=> String # resp.distribution.distribution_config.default_root_object #=> String @@ -793,10 +810,14 @@ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -833,10 +854,14 @@ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -992,15 +1017,20 @@ # }, # ], # }, # default_cache_behavior: { # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -1050,15 +1080,20 @@ # quantity: 1, # required # items: [ # { # path_pattern: "string", # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -1170,10 +1205,17 @@ # resp.distribution.active_trusted_signers.items #=> Array # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String + # resp.distribution.active_trusted_key_groups.enabled #=> Boolean + # resp.distribution.active_trusted_key_groups.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String # resp.distribution.distribution_config.caller_reference #=> String # resp.distribution.distribution_config.aliases.quantity #=> Integer # resp.distribution.distribution_config.aliases.items #=> Array # resp.distribution.distribution_config.aliases.items[0] #=> String # resp.distribution.distribution_config.default_root_object #=> String @@ -1211,10 +1253,14 @@ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -1251,10 +1297,14 @@ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -1505,10 +1555,67 @@ def create_invalidation(params = {}, options = {}) req = build_request(:create_invalidation, params) req.send_request(options) end + # Creates a key group that you can use with [CloudFront signed URLs and + # signed cookies][1]. + # + # To create a key group, you must specify at least one public key for + # the key group. After you create a key group, you can reference it from + # one or more cache behaviors. When you reference a key group in a cache + # behavior, CloudFront requires signed URLs or signed cookies for all + # requests that match the cache behavior. The URLs or cookies must be + # signed with a private key whose corresponding public key is in the key + # group. The signed URL or cookie contains information about which + # public key CloudFront should use to verify the signature. For more + # information, see [Serving private content][1] in the *Amazon + # CloudFront Developer Guide*. + # + # + # + # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html + # + # @option params [required, Types::KeyGroupConfig] :key_group_config + # A key group configuration. + # + # @return [Types::CreateKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::CreateKeyGroupResult#key_group #key_group} => Types::KeyGroup + # * {Types::CreateKeyGroupResult#location #location} => String + # * {Types::CreateKeyGroupResult#etag #etag} => String + # + # @example Request syntax with placeholder values + # + # resp = client.create_key_group({ + # key_group_config: { # required + # name: "string", # required + # items: ["string"], # required + # comment: "string", + # }, + # }) + # + # @example Response structure + # + # resp.key_group.id #=> String + # resp.key_group.last_modified_time #=> Time + # resp.key_group.key_group_config.name #=> String + # resp.key_group.key_group_config.items #=> Array + # resp.key_group.key_group_config.items[0] #=> String + # resp.key_group.key_group_config.comment #=> String + # resp.location #=> String + # resp.etag #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateKeyGroup2020_05_31 AWS API Documentation + # + # @overload create_key_group(params = {}) + # @param [Hash] params ({}) + def create_key_group(params = {}, options = {}) + req = build_request(:create_key_group, params) + req.send_request(options) + end + # Enables additional CloudWatch metrics for the specified CloudFront # distribution. The additional metrics incur an additional cost. # # For more information, see [Viewing additional CloudFront distribution # metrics][1] in the *Amazon CloudFront Developer Guide*. @@ -1650,16 +1757,20 @@ def create_origin_request_policy(params = {}, options = {}) req = build_request(:create_origin_request_policy, params) req.send_request(options) end - # Add a new public key to CloudFront to use, for example, for - # field-level encryption. You can add a maximum of 10 public keys with - # one AWS account. + # Uploads a public key to CloudFront that you can use with [signed URLs + # and signed cookies][1], or with [field-level encryption][2]. # + # + # + # [1]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html + # [2]: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html + # # @option params [required, Types::PublicKeyConfig] :public_key_config - # The request to add a public key to CloudFront. + # A CloudFront public key configuration. # # @return [Types::CreatePublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreatePublicKeyResult#public_key #public_key} => Types::PublicKey # * {Types::CreatePublicKeyResult#location #location} => String @@ -2124,10 +2235,47 @@ def delete_field_level_encryption_profile(params = {}, options = {}) req = build_request(:delete_field_level_encryption_profile, params) req.send_request(options) end + # Deletes a key group. + # + # You cannot delete a key group that is referenced in a cache behavior. + # First update your distributions to remove the key group from all cache + # behaviors, then delete the key group. + # + # To delete a key group, you must provide the key group’s identifier and + # version. To get these values, use `ListKeyGroups` followed by + # `GetKeyGroup` or `GetKeyGroupConfig`. + # + # @option params [required, String] :id + # The identifier of the key group that you are deleting. To get the + # identifier, use `ListKeyGroups`. + # + # @option params [String] :if_match + # The version of the key group that you are deleting. The version is the + # key group’s `ETag` value. To get the `ETag`, use `GetKeyGroup` or + # `GetKeyGroupConfig`. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_key_group({ + # id: "string", # required + # if_match: "string", + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/DeleteKeyGroup2020_05_31 AWS API Documentation + # + # @overload delete_key_group(params = {}) + # @param [Hash] params ({}) + def delete_key_group(params = {}, options = {}) + req = build_request(:delete_key_group, params) + req.send_request(options) + end + # Disables additional CloudWatch metrics for the specified CloudFront # distribution. # # @option params [required, String] :distribution_id # The ID of the distribution that you are disabling metrics for. @@ -2540,10 +2688,17 @@ # resp.distribution.active_trusted_signers.items #=> Array # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String + # resp.distribution.active_trusted_key_groups.enabled #=> Boolean + # resp.distribution.active_trusted_key_groups.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String # resp.distribution.distribution_config.caller_reference #=> String # resp.distribution.distribution_config.aliases.quantity #=> Integer # resp.distribution.distribution_config.aliases.items #=> Array # resp.distribution.distribution_config.aliases.items[0] #=> String # resp.distribution.distribution_config.default_root_object #=> String @@ -2581,10 +2736,14 @@ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -2621,10 +2780,14 @@ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -2759,10 +2922,14 @@ # resp.distribution_config.default_cache_behavior.target_origin_id #=> String # resp.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution_config.default_cache_behavior.trusted_signers.items #=> Array # resp.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution_config.default_cache_behavior.allowed_methods.items #=> Array # resp.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -2799,10 +2966,14 @@ # resp.distribution_config.cache_behaviors.items[0].target_origin_id #=> String # resp.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -3082,10 +3253,94 @@ def get_invalidation(params = {}, options = {}) req = build_request(:get_invalidation, params) req.send_request(options) end + # Gets a key group, including the date and time when the key group was + # last modified. + # + # To get a key group, you must provide the key group’s identifier. If + # the key group is referenced in a distribution’s cache behavior, you + # can get the key group’s identifier using `ListDistributions` or + # `GetDistribution`. If the key group is not referenced in a cache + # behavior, you can get the identifier using `ListKeyGroups`. + # + # @option params [required, String] :id + # The identifier of the key group that you are getting. To get the + # identifier, use `ListKeyGroups`. + # + # @return [Types::GetKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetKeyGroupResult#key_group #key_group} => Types::KeyGroup + # * {Types::GetKeyGroupResult#etag #etag} => String + # + # @example Request syntax with placeholder values + # + # resp = client.get_key_group({ + # id: "string", # required + # }) + # + # @example Response structure + # + # resp.key_group.id #=> String + # resp.key_group.last_modified_time #=> Time + # resp.key_group.key_group_config.name #=> String + # resp.key_group.key_group_config.items #=> Array + # resp.key_group.key_group_config.items[0] #=> String + # resp.key_group.key_group_config.comment #=> String + # resp.etag #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroup2020_05_31 AWS API Documentation + # + # @overload get_key_group(params = {}) + # @param [Hash] params ({}) + def get_key_group(params = {}, options = {}) + req = build_request(:get_key_group, params) + req.send_request(options) + end + + # Gets a key group configuration. + # + # To get a key group configuration, you must provide the key group’s + # identifier. If the key group is referenced in a distribution’s cache + # behavior, you can get the key group’s identifier using + # `ListDistributions` or `GetDistribution`. If the key group is not + # referenced in a cache behavior, you can get the identifier using + # `ListKeyGroups`. + # + # @option params [required, String] :id + # The identifier of the key group whose configuration you are getting. + # To get the identifier, use `ListKeyGroups`. + # + # @return [Types::GetKeyGroupConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetKeyGroupConfigResult#key_group_config #key_group_config} => Types::KeyGroupConfig + # * {Types::GetKeyGroupConfigResult#etag #etag} => String + # + # @example Request syntax with placeholder values + # + # resp = client.get_key_group_config({ + # id: "string", # required + # }) + # + # @example Response structure + # + # resp.key_group_config.name #=> String + # resp.key_group_config.items #=> Array + # resp.key_group_config.items[0] #=> String + # resp.key_group_config.comment #=> String + # resp.etag #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/GetKeyGroupConfig2020_05_31 AWS API Documentation + # + # @overload get_key_group_config(params = {}) + # @param [Hash] params ({}) + def get_key_group_config(params = {}, options = {}) + req = build_request(:get_key_group_config, params) + req.send_request(options) + end + # Gets information about whether additional CloudWatch metrics are # enabled for the specified CloudFront distribution. # # @option params [required, String] :distribution_id # The ID of the distribution that you are getting metrics information @@ -3228,14 +3483,14 @@ def get_origin_request_policy_config(params = {}, options = {}) req = build_request(:get_origin_request_policy_config, params) req.send_request(options) end - # Get the public key information. + # Gets a public key. # # @option params [required, String] :id - # Request the ID for the public key. + # The identifier of the public key you are getting. # # @return [Types::GetPublicKeyResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetPublicKeyResult#public_key #public_key} => Types::PublicKey # * {Types::GetPublicKeyResult#etag #etag} => String @@ -3263,14 +3518,14 @@ def get_public_key(params = {}, options = {}) req = build_request(:get_public_key, params) req.send_request(options) end - # Return public key configuration informaation + # Gets a public key configuration. # # @option params [required, String] :id - # Request the ID for the public key configuration. + # The identifier of the public key whose configuration you are getting. # # @return [Types::GetPublicKeyConfigResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetPublicKeyConfigResult#public_key_config #public_key_config} => Types::PublicKeyConfig # * {Types::GetPublicKeyConfigResult#etag #etag} => String @@ -3657,10 +3912,14 @@ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -3697,10 +3956,14 @@ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -3821,10 +4084,65 @@ req = build_request(:list_distributions_by_cache_policy_id, params) req.send_request(options) end # Gets a list of distribution IDs for distributions that have a cache + # behavior that references the specified key group. + # + # You can optionally specify the maximum number of items to receive in + # the response. If the total number of items in the list exceeds the + # maximum that you specify, or the default maximum, the response is + # paginated. To get the next page of items, send a subsequent request + # that specifies the `NextMarker` value from the current response as the + # `Marker` value in the subsequent request. + # + # @option params [String] :marker + # Use this field when paginating results to indicate where to begin in + # your list of distribution IDs. The response includes distribution IDs + # in the list that occur after the marker. To get the next page of the + # list, set this field’s value to the value of `NextMarker` from the + # current page’s response. + # + # @option params [Integer] :max_items + # The maximum number of distribution IDs that you want in the response. + # + # @option params [required, String] :key_group_id + # The ID of the key group whose associated distribution IDs you are + # listing. + # + # @return [Types::ListDistributionsByKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListDistributionsByKeyGroupResult#distribution_id_list #distribution_id_list} => Types::DistributionIdList + # + # @example Request syntax with placeholder values + # + # resp = client.list_distributions_by_key_group({ + # marker: "string", + # max_items: 1, + # key_group_id: "string", # required + # }) + # + # @example Response structure + # + # resp.distribution_id_list.marker #=> String + # resp.distribution_id_list.next_marker #=> String + # resp.distribution_id_list.max_items #=> Integer + # resp.distribution_id_list.is_truncated #=> Boolean + # resp.distribution_id_list.quantity #=> Integer + # resp.distribution_id_list.items #=> Array + # resp.distribution_id_list.items[0] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListDistributionsByKeyGroup2020_05_31 AWS API Documentation + # + # @overload list_distributions_by_key_group(params = {}) + # @param [Hash] params ({}) + def list_distributions_by_key_group(params = {}, options = {}) + req = build_request(:list_distributions_by_key_group, params) + req.send_request(options) + end + + # Gets a list of distribution IDs for distributions that have a cache # behavior that’s associated with the specified origin request policy. # # You can optionally specify the maximum number of items to receive in # the response. If the total number of items in the list exceeds the # maximum that you specify, or the default maximum, the response is @@ -3973,10 +4291,14 @@ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -4013,10 +4335,14 @@ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -4165,10 +4491,14 @@ # resp.distribution_list.items[0].default_cache_behavior.target_origin_id #=> String # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items #=> Array # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -4205,10 +4535,14 @@ # resp.distribution_list.items[0].cache_behaviors.items[0].target_origin_id #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution_list.items[0].cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution_list.items[0].cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution_list.items[0].cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -4435,10 +4769,62 @@ def list_invalidations(params = {}, options = {}) req = build_request(:list_invalidations, params) req.send_request(options) end + # Gets a list of key groups. + # + # You can optionally specify the maximum number of items to receive in + # the response. If the total number of items in the list exceeds the + # maximum that you specify, or the default maximum, the response is + # paginated. To get the next page of items, send a subsequent request + # that specifies the `NextMarker` value from the current response as the + # `Marker` value in the subsequent request. + # + # @option params [String] :marker + # Use this field when paginating results to indicate where to begin in + # your list of key groups. The response includes key groups in the list + # that occur after the marker. To get the next page of the list, set + # this field’s value to the value of `NextMarker` from the current + # page’s response. + # + # @option params [Integer] :max_items + # The maximum number of key groups that you want in the response. + # + # @return [Types::ListKeyGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListKeyGroupsResult#key_group_list #key_group_list} => Types::KeyGroupList + # + # @example Request syntax with placeholder values + # + # resp = client.list_key_groups({ + # marker: "string", + # max_items: 1, + # }) + # + # @example Response structure + # + # resp.key_group_list.next_marker #=> String + # resp.key_group_list.max_items #=> Integer + # resp.key_group_list.quantity #=> Integer + # resp.key_group_list.items #=> Array + # resp.key_group_list.items[0].key_group.id #=> String + # resp.key_group_list.items[0].key_group.last_modified_time #=> Time + # resp.key_group_list.items[0].key_group.key_group_config.name #=> String + # resp.key_group_list.items[0].key_group.key_group_config.items #=> Array + # resp.key_group_list.items[0].key_group.key_group_config.items[0] #=> String + # resp.key_group_list.items[0].key_group.key_group_config.comment #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/ListKeyGroups2020_05_31 AWS API Documentation + # + # @overload list_key_groups(params = {}) + # @param [Hash] params ({}) + def list_key_groups(params = {}, options = {}) + req = build_request(:list_key_groups, params) + req.send_request(options) + end + # Gets a list of origin request policies. # # You can optionally apply a filter to return only the managed policies # created by AWS, or only the custom policies created in your AWS # account. @@ -5079,15 +5465,20 @@ # }, # ], # }, # default_cache_behavior: { # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -5137,15 +5528,20 @@ # quantity: 1, # required # items: [ # { # path_pattern: "string", # required # target_origin_id: "string", # required - # trusted_signers: { # required + # trusted_signers: { # enabled: false, # required # quantity: 1, # required # items: ["string"], # }, + # trusted_key_groups: { + # enabled: false, # required + # quantity: 1, # required + # items: ["string"], + # }, # viewer_protocol_policy: "allow-all", # required, accepts allow-all, https-only, redirect-to-https # allowed_methods: { # quantity: 1, # required # items: ["GET"], # required, accepts GET, HEAD, POST, PUT, PATCH, OPTIONS, DELETE # cached_methods: { @@ -5250,10 +5646,17 @@ # resp.distribution.active_trusted_signers.items #=> Array # resp.distribution.active_trusted_signers.items[0].aws_account_number #=> String # resp.distribution.active_trusted_signers.items[0].key_pair_ids.quantity #=> Integer # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items #=> Array # resp.distribution.active_trusted_signers.items[0].key_pair_ids.items[0] #=> String + # resp.distribution.active_trusted_key_groups.enabled #=> Boolean + # resp.distribution.active_trusted_key_groups.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_group_id #=> String + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.quantity #=> Integer + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items #=> Array + # resp.distribution.active_trusted_key_groups.items[0].key_pair_ids.items[0] #=> String # resp.distribution.distribution_config.caller_reference #=> String # resp.distribution.distribution_config.aliases.quantity #=> Integer # resp.distribution.distribution_config.aliases.items #=> Array # resp.distribution.distribution_config.aliases.items[0] #=> String # resp.distribution.distribution_config.default_root_object #=> String @@ -5291,10 +5694,14 @@ # resp.distribution.distribution_config.default_cache_behavior.target_origin_id #=> String # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.default_cache_behavior.trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.default_cache_behavior.viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items #=> Array # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.default_cache_behavior.allowed_methods.cached_methods.quantity #=> Integer @@ -5331,10 +5738,14 @@ # resp.distribution.distribution_config.cache_behaviors.items[0].target_origin_id #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.enabled #=> Boolean # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_signers.items[0] #=> String + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.enabled #=> Boolean + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.quantity #=> Integer + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items #=> Array + # resp.distribution.distribution_config.cache_behaviors.items[0].trusted_key_groups.items[0] #=> String # resp.distribution.distribution_config.cache_behaviors.items[0].viewer_protocol_policy #=> String, one of "allow-all", "https-only", "redirect-to-https" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.quantity #=> Integer # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items #=> Array # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.items[0] #=> String, one of "GET", "HEAD", "POST", "PUT", "PATCH", "OPTIONS", "DELETE" # resp.distribution.distribution_config.cache_behaviors.items[0].allowed_methods.cached_methods.quantity #=> Integer @@ -5552,10 +5963,71 @@ def update_field_level_encryption_profile(params = {}, options = {}) req = build_request(:update_field_level_encryption_profile, params) req.send_request(options) end + # Updates a key group. + # + # When you update a key group, all the fields are updated with the + # values provided in the request. You cannot update some fields + # independent of others. To update a key group: + # + # 1. Get the current key group with `GetKeyGroup` or + # `GetKeyGroupConfig`. + # + # 2. Locally modify the fields in the key group that you want to + # update. For example, add or remove public key IDs. + # + # 3. Call `UpdateKeyGroup` with the entire key group object, including + # the fields that you modified and those that you didn’t. + # + # @option params [required, Types::KeyGroupConfig] :key_group_config + # The key group configuration. + # + # @option params [required, String] :id + # The identifier of the key group that you are updating. + # + # @option params [String] :if_match + # The version of the key group that you are updating. The version is the + # key group’s `ETag` value. + # + # @return [Types::UpdateKeyGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::UpdateKeyGroupResult#key_group #key_group} => Types::KeyGroup + # * {Types::UpdateKeyGroupResult#etag #etag} => String + # + # @example Request syntax with placeholder values + # + # resp = client.update_key_group({ + # key_group_config: { # required + # name: "string", # required + # items: ["string"], # required + # comment: "string", + # }, + # id: "string", # required + # if_match: "string", + # }) + # + # @example Response structure + # + # resp.key_group.id #=> String + # resp.key_group.last_modified_time #=> Time + # resp.key_group.key_group_config.name #=> String + # resp.key_group.key_group_config.items #=> Array + # resp.key_group.key_group_config.items[0] #=> String + # resp.key_group.key_group_config.comment #=> String + # resp.etag #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/UpdateKeyGroup2020_05_31 AWS API Documentation + # + # @overload update_key_group(params = {}) + # @param [Hash] params ({}) + def update_key_group(params = {}, options = {}) + req = build_request(:update_key_group, params) + req.send_request(options) + end + # Updates an origin request policy configuration. # # When you update an origin request policy configuration, all the fields # are updated with the values provided in the request. You cannot update # some fields independent of others. To update an origin request policy @@ -5653,14 +6125,14 @@ # Update public key information. Note that the only value you can change # is the comment. # # @option params [required, Types::PublicKeyConfig] :public_key_config - # Request to update public key information. + # A public key configuration. # # @option params [required, String] :id - # ID of the public key to be updated. + # The identifier of the public key that you are updating. # # @option params [String] :if_match # The value of the `ETag` header that you received when retrieving the # public key to update. For example: `E2QWRUHAPOMQZL`. # @@ -5890,10 +6362,10 @@ operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-cloudfront' - context[:gem_version] = '1.44.0' + context[:gem_version] = '1.45.0' Seahorse::Client::Request.new(handlers, context) end # Polls an API operation until a resource enters a desired state. #