aws-sdk-kms 1.78.0 → 1.79.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-kms/client.rb +353 -25
- data/lib/aws-sdk-kms/client_api.rb +85 -0
- data/lib/aws-sdk-kms/endpoints.rb +28 -0
- data/lib/aws-sdk-kms/errors.rb +16 -0
- data/lib/aws-sdk-kms/plugins/endpoints.rb +4 -0
- data/lib/aws-sdk-kms/types.rb +231 -14
- data/lib/aws-sdk-kms.rb +1 -1
- data/sig/client.rbs +30 -1
- data/sig/errors.rbs +3 -0
- data/sig/types.rbs +41 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bb0ea5ff70a205cb81c13f9eb12fb8c102c7d6ca4236bf9734d31f58e7bc7a13
|
4
|
+
data.tar.gz: 3c19d24f24485fe2e0191a68dbdee8eb339b295ecb85ad3c3f88b45f4c36efc5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e94f92e6eeb788d1574f75acb13f89073893991927054c01ba19948676541e213edc6d14dc0f6e817a2e9c8b84cb84ee688c2159e1e19aa7b9a67f9ae0f429d
|
7
|
+
data.tar.gz: dcdaa1ca50c6d7ae1f2bdafe17945045d0791de691ae48e20b142107a602509c1d16016fda26c29185e9c5b1cc10b0e346030b0524164ca7ddb2ebda1ae8fb21
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.79.0 (2024-04-12)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - This feature supports the ability to specify a custom rotation period for automatic key rotations, the ability to perform on-demand key rotations, and visibility into your key material rotations.
|
8
|
+
|
4
9
|
1.78.0 (2024-03-18)
|
5
10
|
------------------
|
6
11
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.79.0
|
data/lib/aws-sdk-kms/client.rb
CHANGED
@@ -3619,6 +3619,10 @@ module Aws::KMS
|
|
3619
3619
|
#
|
3620
3620
|
# * GetKeyRotationStatus
|
3621
3621
|
#
|
3622
|
+
# * ListKeyRotations
|
3623
|
+
#
|
3624
|
+
# * RotateKeyOnDemand
|
3625
|
+
#
|
3622
3626
|
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3623
3627
|
# model. For more information, see [KMS eventual consistency][12].
|
3624
3628
|
#
|
@@ -3851,12 +3855,20 @@ module Aws::KMS
|
|
3851
3855
|
# Enables [automatic rotation of the key material][1] of the specified
|
3852
3856
|
# symmetric encryption KMS key.
|
3853
3857
|
#
|
3854
|
-
#
|
3855
|
-
# KMS rotates the key material of the KMS key one year
|
3856
|
-
# 365 days) from the enable date and every year
|
3857
|
-
#
|
3858
|
-
#
|
3859
|
-
#
|
3858
|
+
# By default, when you enable automatic rotation of a [customer managed
|
3859
|
+
# KMS key][2], KMS rotates the key material of the KMS key one year
|
3860
|
+
# (approximately 365 days) from the enable date and every year
|
3861
|
+
# thereafter. You can use the optional `RotationPeriodInDays` parameter
|
3862
|
+
# to specify a custom rotation period when you enable key rotation, or
|
3863
|
+
# you can use `RotationPeriodInDays` to modify the rotation period of a
|
3864
|
+
# key that you previously enabled automatic key rotation on.
|
3865
|
+
#
|
3866
|
+
# You can monitor rotation of the key material for your KMS keys in
|
3867
|
+
# CloudTrail and Amazon CloudWatch. To disable rotation of the key
|
3868
|
+
# material in a customer managed KMS key, use the DisableKeyRotation
|
3869
|
+
# operation. You can use the GetKeyRotationStatus operation to identify
|
3870
|
+
# any in progress rotations. You can use the ListKeyRotations operation
|
3871
|
+
# to view the details of completed rotations.
|
3860
3872
|
#
|
3861
3873
|
# Automatic key rotation is supported only on [symmetric encryption KMS
|
3862
3874
|
# keys][3]. You cannot enable automatic rotation of [asymmetric KMS
|
@@ -3865,10 +3877,11 @@ module Aws::KMS
|
|
3865
3877
|
# disable automatic rotation of a set of related [multi-Region keys][8],
|
3866
3878
|
# set the property on the primary key.
|
3867
3879
|
#
|
3868
|
-
# You cannot enable or disable automatic rotation [Amazon Web
|
3869
|
-
# managed KMS keys][9]. KMS always rotates the key material of
|
3870
|
-
# Web Services managed keys every year. Rotation of [Amazon Web
|
3871
|
-
# owned KMS keys][10]
|
3880
|
+
# You cannot enable or disable automatic rotation of [Amazon Web
|
3881
|
+
# Services managed KMS keys][9]. KMS always rotates the key material of
|
3882
|
+
# Amazon Web Services managed keys every year. Rotation of [Amazon Web
|
3883
|
+
# Services owned KMS keys][10] is managed by the Amazon Web Services
|
3884
|
+
# service that owns the key.
|
3872
3885
|
#
|
3873
3886
|
# <note markdown="1"> In May 2022, KMS changed the rotation schedule for Amazon Web Services
|
3874
3887
|
# managed keys from every three years (approximately 1,095 days) to
|
@@ -3897,12 +3910,22 @@ module Aws::KMS
|
|
3897
3910
|
#
|
3898
3911
|
# * GetKeyRotationStatus
|
3899
3912
|
#
|
3913
|
+
# * ListKeyRotations
|
3914
|
+
#
|
3915
|
+
# * RotateKeyOnDemand
|
3916
|
+
#
|
3917
|
+
# <note markdown="1"> You can perform on-demand (RotateKeyOnDemand) rotation of the key
|
3918
|
+
# material in customer managed KMS keys, regardless of whether or not
|
3919
|
+
# automatic key rotation is enabled.
|
3920
|
+
#
|
3921
|
+
# </note>
|
3922
|
+
#
|
3900
3923
|
# **Eventual consistency**: The KMS API follows an eventual consistency
|
3901
3924
|
# model. For more information, see [KMS eventual consistency][13].
|
3902
3925
|
#
|
3903
3926
|
#
|
3904
3927
|
#
|
3905
|
-
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
3928
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
3906
3929
|
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
3907
3930
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
3908
3931
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
@@ -3943,21 +3966,42 @@ module Aws::KMS
|
|
3943
3966
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
3944
3967
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
3945
3968
|
#
|
3969
|
+
# @option params [Integer] :rotation_period_in_days
|
3970
|
+
# Use this parameter to specify a custom period of time between each
|
3971
|
+
# rotation date. If no value is specified, the default value is 365
|
3972
|
+
# days.
|
3973
|
+
#
|
3974
|
+
# The rotation period defines the number of days after you enable
|
3975
|
+
# automatic key rotation that KMS will rotate your key material, and the
|
3976
|
+
# number of days between each automatic rotation thereafter.
|
3977
|
+
#
|
3978
|
+
# You can use the [ `kms:RotationPeriodInDays` ][1] condition key to
|
3979
|
+
# further constrain the values that principals can specify in the
|
3980
|
+
# `RotationPeriodInDays` parameter.
|
3981
|
+
#
|
3982
|
+
#
|
3983
|
+
#
|
3984
|
+
#
|
3985
|
+
#
|
3986
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days
|
3987
|
+
#
|
3946
3988
|
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
3947
3989
|
#
|
3948
3990
|
#
|
3949
3991
|
# @example Example: To enable automatic rotation of key material
|
3950
3992
|
#
|
3951
|
-
# # The following example enables automatic
|
3993
|
+
# # The following example enables automatic rotation with a rotation period of 365 days for the specified KMS key.
|
3952
3994
|
#
|
3953
3995
|
# resp = client.enable_key_rotation({
|
3954
|
-
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material will be rotated
|
3996
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material will be automatically rotated. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
3997
|
+
# rotation_period_in_days: 365, # The number of days between each rotation date. Specify a value between 9 and 2560. If no value is specified, the default value is 365 days.
|
3955
3998
|
# })
|
3956
3999
|
#
|
3957
4000
|
# @example Request syntax with placeholder values
|
3958
4001
|
#
|
3959
4002
|
# resp = client.enable_key_rotation({
|
3960
4003
|
# key_id: "KeyIdType", # required
|
4004
|
+
# rotation_period_in_days: 1,
|
3961
4005
|
# })
|
3962
4006
|
#
|
3963
4007
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/EnableKeyRotation AWS API Documentation
|
@@ -5629,14 +5673,10 @@ module Aws::KMS
|
|
5629
5673
|
req.send_request(options)
|
5630
5674
|
end
|
5631
5675
|
|
5632
|
-
#
|
5633
|
-
# key material][1] is
|
5634
|
-
#
|
5635
|
-
#
|
5636
|
-
# KMS rotates the key material of the KMS key one year (approximately
|
5637
|
-
# 365 days) from the enable date and every year thereafter. You can
|
5638
|
-
# monitor rotation of the key material for your KMS keys in CloudTrail
|
5639
|
-
# and Amazon CloudWatch.
|
5676
|
+
# Provides detailed information about the rotation status for a KMS key,
|
5677
|
+
# including whether [automatic rotation of the key material][1] is
|
5678
|
+
# enabled for the specified KMS key, the [rotation period][2], and the
|
5679
|
+
# next scheduled rotation date.
|
5640
5680
|
#
|
5641
5681
|
# Automatic key rotation is supported only on [symmetric encryption KMS
|
5642
5682
|
# keys][3]. You cannot enable automatic rotation of [asymmetric KMS
|
@@ -5652,6 +5692,13 @@ module Aws::KMS
|
|
5652
5692
|
# Services managed KMS keys every year. The key rotation status for
|
5653
5693
|
# Amazon Web Services managed KMS keys is always `true`.
|
5654
5694
|
#
|
5695
|
+
# You can perform on-demand (RotateKeyOnDemand) rotation of the key
|
5696
|
+
# material in customer managed KMS keys, regardless of whether or not
|
5697
|
+
# automatic key rotation is enabled. You can use GetKeyRotationStatus to
|
5698
|
+
# identify the date and time that an in progress on-demand rotation was
|
5699
|
+
# initiated. You can use ListKeyRotations to view the details of
|
5700
|
+
# completed rotations.
|
5701
|
+
#
|
5655
5702
|
# <note markdown="1"> In May 2022, KMS changed the rotation schedule for Amazon Web Services
|
5656
5703
|
# managed keys from every three years to every year. For details, see
|
5657
5704
|
# EnableKeyRotation.
|
@@ -5688,13 +5735,17 @@ module Aws::KMS
|
|
5688
5735
|
#
|
5689
5736
|
# * EnableKeyRotation
|
5690
5737
|
#
|
5738
|
+
# * ListKeyRotations
|
5739
|
+
#
|
5740
|
+
# * RotateKeyOnDemand
|
5741
|
+
#
|
5691
5742
|
# **Eventual consistency**: The KMS API follows an eventual consistency
|
5692
5743
|
# model. For more information, see [KMS eventual consistency][12].
|
5693
5744
|
#
|
5694
5745
|
#
|
5695
5746
|
#
|
5696
5747
|
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
5697
|
-
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/
|
5748
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotation-period
|
5698
5749
|
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
5699
5750
|
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
5700
5751
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
@@ -5725,11 +5776,16 @@ module Aws::KMS
|
|
5725
5776
|
# @return [Types::GetKeyRotationStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
5726
5777
|
#
|
5727
5778
|
# * {Types::GetKeyRotationStatusResponse#key_rotation_enabled #key_rotation_enabled} => Boolean
|
5779
|
+
# * {Types::GetKeyRotationStatusResponse#key_id #key_id} => String
|
5780
|
+
# * {Types::GetKeyRotationStatusResponse#rotation_period_in_days #rotation_period_in_days} => Integer
|
5781
|
+
# * {Types::GetKeyRotationStatusResponse#next_rotation_date #next_rotation_date} => Time
|
5782
|
+
# * {Types::GetKeyRotationStatusResponse#on_demand_rotation_start_date #on_demand_rotation_start_date} => Time
|
5728
5783
|
#
|
5729
5784
|
#
|
5730
5785
|
# @example Example: To retrieve the rotation status for a KMS key
|
5731
5786
|
#
|
5732
|
-
# # The following example retrieves
|
5787
|
+
# # The following example retrieves detailed information about the rotation status for a KMS key, including whether
|
5788
|
+
# # automatic key rotation is enabled for the specified KMS key, the rotation period, and the next scheduled rotation date.
|
5733
5789
|
#
|
5734
5790
|
# resp = client.get_key_rotation_status({
|
5735
5791
|
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material rotation status you want to retrieve. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
@@ -5737,7 +5793,11 @@ module Aws::KMS
|
|
5737
5793
|
#
|
5738
5794
|
# resp.to_h outputs the following:
|
5739
5795
|
# {
|
5740
|
-
#
|
5796
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # Identifies the specified symmetric encryption KMS key.
|
5797
|
+
# key_rotation_enabled: true, # A boolean that indicates the key material rotation status. Returns true when automatic rotation of the key material is enabled, or false when it is not.
|
5798
|
+
# next_rotation_date: Time.parse("2024-04-05T15:14:47.757000+00:00"), # The next date that the key material will be automatically rotated.
|
5799
|
+
# on_demand_rotation_start_date: Time.parse("2024-03-02T10:11:36.564000+00:00"), # Identifies the date and time that an in progress on-demand rotation was initiated.
|
5800
|
+
# rotation_period_in_days: 365, # The number of days between each automatic rotation. The default value is 365 days.
|
5741
5801
|
# }
|
5742
5802
|
#
|
5743
5803
|
# @example Request syntax with placeholder values
|
@@ -5749,6 +5809,10 @@ module Aws::KMS
|
|
5749
5809
|
# @example Response structure
|
5750
5810
|
#
|
5751
5811
|
# resp.key_rotation_enabled #=> Boolean
|
5812
|
+
# resp.key_id #=> String
|
5813
|
+
# resp.rotation_period_in_days #=> Integer
|
5814
|
+
# resp.next_rotation_date #=> Time
|
5815
|
+
# resp.on_demand_rotation_start_date #=> Time
|
5752
5816
|
#
|
5753
5817
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyRotationStatus AWS API Documentation
|
5754
5818
|
#
|
@@ -6897,6 +6961,129 @@ module Aws::KMS
|
|
6897
6961
|
req.send_request(options)
|
6898
6962
|
end
|
6899
6963
|
|
6964
|
+
# Returns information about all completed key material rotations for the
|
6965
|
+
# specified KMS key.
|
6966
|
+
#
|
6967
|
+
# You must specify the KMS key in all requests. You can refine the key
|
6968
|
+
# rotations list by limiting the number of rotations returned.
|
6969
|
+
#
|
6970
|
+
# For detailed information about automatic and on-demand key rotations,
|
6971
|
+
# see [Rotating KMS keys][1] in the *Key Management Service Developer
|
6972
|
+
# Guide*.
|
6973
|
+
#
|
6974
|
+
# **Cross-account use**: No. You cannot perform this operation on a KMS
|
6975
|
+
# key in a different Amazon Web Services account.
|
6976
|
+
#
|
6977
|
+
# **Required permissions**: [kms:ListKeyRotations][2] (key policy)
|
6978
|
+
#
|
6979
|
+
# **Related operations:**
|
6980
|
+
#
|
6981
|
+
# * EnableKeyRotation
|
6982
|
+
#
|
6983
|
+
# * DisableKeyRotation
|
6984
|
+
#
|
6985
|
+
# * GetKeyRotationStatus
|
6986
|
+
#
|
6987
|
+
# * RotateKeyOnDemand
|
6988
|
+
#
|
6989
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
6990
|
+
# model. For more information, see [KMS eventual consistency][3].
|
6991
|
+
#
|
6992
|
+
#
|
6993
|
+
#
|
6994
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
|
6995
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
6996
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
6997
|
+
#
|
6998
|
+
# @option params [required, String] :key_id
|
6999
|
+
# Gets the key rotations for the specified KMS key.
|
7000
|
+
#
|
7001
|
+
# Specify the key ID or key ARN of the KMS key.
|
7002
|
+
#
|
7003
|
+
# For example:
|
7004
|
+
#
|
7005
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
7006
|
+
#
|
7007
|
+
# * Key ARN:
|
7008
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
7009
|
+
#
|
7010
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
7011
|
+
# DescribeKey.
|
7012
|
+
#
|
7013
|
+
# @option params [Integer] :limit
|
7014
|
+
# Use this parameter to specify the maximum number of items to return.
|
7015
|
+
# When this value is present, KMS does not return more than the
|
7016
|
+
# specified number of items, but it might return fewer.
|
7017
|
+
#
|
7018
|
+
# This value is optional. If you include a value, it must be between 1
|
7019
|
+
# and 1000, inclusive. If you do not include a value, it defaults to
|
7020
|
+
# 100.
|
7021
|
+
#
|
7022
|
+
# @option params [String] :marker
|
7023
|
+
# Use this parameter in a subsequent request after you receive a
|
7024
|
+
# response with truncated results. Set it to the value of `NextMarker`
|
7025
|
+
# from the truncated response you just received.
|
7026
|
+
#
|
7027
|
+
# @return [Types::ListKeyRotationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
7028
|
+
#
|
7029
|
+
# * {Types::ListKeyRotationsResponse#rotations #rotations} => Array<Types::RotationsListEntry>
|
7030
|
+
# * {Types::ListKeyRotationsResponse#next_marker #next_marker} => String
|
7031
|
+
# * {Types::ListKeyRotationsResponse#truncated #truncated} => Boolean
|
7032
|
+
#
|
7033
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
7034
|
+
#
|
7035
|
+
#
|
7036
|
+
# @example Example: To retrieve information about all completed key material rotations
|
7037
|
+
#
|
7038
|
+
# # The following example returns information about all completed key material rotations for the specified KMS key.
|
7039
|
+
#
|
7040
|
+
# resp = client.list_key_rotations({
|
7041
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7042
|
+
# })
|
7043
|
+
#
|
7044
|
+
# resp.to_h outputs the following:
|
7045
|
+
# {
|
7046
|
+
# rotations: [
|
7047
|
+
# {
|
7048
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7049
|
+
# rotation_date: Time.parse("2024-03-02T10:11:36.564000+00:00"),
|
7050
|
+
# rotation_type: "AUTOMATIC",
|
7051
|
+
# },
|
7052
|
+
# {
|
7053
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab",
|
7054
|
+
# rotation_date: Time.parse("2024-04-05T15:14:47.757000+00:00"),
|
7055
|
+
# rotation_type: "ON_DEMAND",
|
7056
|
+
# },
|
7057
|
+
# ], # A list of key rotations.
|
7058
|
+
# truncated: false, # A flag that indicates whether there are more items in the list. When the value is true, the list in this response is truncated. To get more items, pass the value of the NextMarker element in this response to the Marker parameter in a subsequent request.
|
7059
|
+
# }
|
7060
|
+
#
|
7061
|
+
# @example Request syntax with placeholder values
|
7062
|
+
#
|
7063
|
+
# resp = client.list_key_rotations({
|
7064
|
+
# key_id: "KeyIdType", # required
|
7065
|
+
# limit: 1,
|
7066
|
+
# marker: "MarkerType",
|
7067
|
+
# })
|
7068
|
+
#
|
7069
|
+
# @example Response structure
|
7070
|
+
#
|
7071
|
+
# resp.rotations #=> Array
|
7072
|
+
# resp.rotations[0].key_id #=> String
|
7073
|
+
# resp.rotations[0].rotation_date #=> Time
|
7074
|
+
# resp.rotations[0].rotation_type #=> String, one of "AUTOMATIC", "ON_DEMAND"
|
7075
|
+
# resp.next_marker #=> String
|
7076
|
+
# resp.truncated #=> Boolean
|
7077
|
+
#
|
7078
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotations AWS API Documentation
|
7079
|
+
#
|
7080
|
+
# @overload list_key_rotations(params = {})
|
7081
|
+
# @param [Hash] params ({})
|
7082
|
+
def list_key_rotations(params = {}, options = {})
|
7083
|
+
req = build_request(:list_key_rotations, params)
|
7084
|
+
req.send_request(options)
|
7085
|
+
end
|
7086
|
+
|
6900
7087
|
# Gets a list of all KMS keys in the caller's Amazon Web Services
|
6901
7088
|
# account and Region.
|
6902
7089
|
#
|
@@ -8372,6 +8559,147 @@ module Aws::KMS
|
|
8372
8559
|
req.send_request(options)
|
8373
8560
|
end
|
8374
8561
|
|
8562
|
+
# Immediately initiates rotation of the key material of the specified
|
8563
|
+
# symmetric encryption KMS key.
|
8564
|
+
#
|
8565
|
+
# You can perform [on-demand rotation][1] of the key material in
|
8566
|
+
# customer managed KMS keys, regardless of whether or not [automatic key
|
8567
|
+
# rotation][2] is enabled. On-demand rotations do not change existing
|
8568
|
+
# automatic rotation schedules. For example, consider a KMS key that has
|
8569
|
+
# automatic key rotation enabled with a rotation period of 730 days. If
|
8570
|
+
# the key is scheduled to automatically rotate on April 14, 2024, and
|
8571
|
+
# you perform an on-demand rotation on April 10, 2024, the key will
|
8572
|
+
# automatically rotate, as scheduled, on April 14, 2024 and every 730
|
8573
|
+
# days thereafter.
|
8574
|
+
#
|
8575
|
+
# <note markdown="1"> You can perform on-demand key rotation a **maximum of 10 times** per
|
8576
|
+
# KMS key. You can use the KMS console to view the number of remaining
|
8577
|
+
# on-demand rotations available for a KMS key.
|
8578
|
+
#
|
8579
|
+
# </note>
|
8580
|
+
#
|
8581
|
+
# You can use GetKeyRotationStatus to identify any in progress on-demand
|
8582
|
+
# rotations. You can use ListKeyRotations to identify the date that
|
8583
|
+
# completed on-demand rotations were performed. You can monitor rotation
|
8584
|
+
# of the key material for your KMS keys in CloudTrail and Amazon
|
8585
|
+
# CloudWatch.
|
8586
|
+
#
|
8587
|
+
# On-demand key rotation is supported only on [symmetric encryption KMS
|
8588
|
+
# keys][3]. You cannot perform on-demand rotation of [asymmetric KMS
|
8589
|
+
# keys][4], [HMAC KMS keys][5], KMS keys with [imported key
|
8590
|
+
# material][6], or KMS keys in a [custom key store][7]. To perform
|
8591
|
+
# on-demand rotation of a set of related [multi-Region keys][8], invoke
|
8592
|
+
# the on-demand rotation on the primary key.
|
8593
|
+
#
|
8594
|
+
# You cannot initiate on-demand rotation of [Amazon Web Services managed
|
8595
|
+
# KMS keys][9]. KMS always rotates the key material of Amazon Web
|
8596
|
+
# Services managed keys every year. Rotation of [Amazon Web Services
|
8597
|
+
# owned KMS keys][10] is managed by the Amazon Web Services service that
|
8598
|
+
# owns the key.
|
8599
|
+
#
|
8600
|
+
# The KMS key that you use for this operation must be in a compatible
|
8601
|
+
# key state. For details, see [Key states of KMS keys][11] in the *Key
|
8602
|
+
# Management Service Developer Guide*.
|
8603
|
+
#
|
8604
|
+
# **Cross-account use**: No. You cannot perform this operation on a KMS
|
8605
|
+
# key in a different Amazon Web Services account.
|
8606
|
+
#
|
8607
|
+
# **Required permissions**: [kms:RotateKeyOnDemand][12] (key policy)
|
8608
|
+
#
|
8609
|
+
# **Related operations:**
|
8610
|
+
#
|
8611
|
+
# * EnableKeyRotation
|
8612
|
+
#
|
8613
|
+
# * DisableKeyRotation
|
8614
|
+
#
|
8615
|
+
# * GetKeyRotationStatus
|
8616
|
+
#
|
8617
|
+
# * ListKeyRotations
|
8618
|
+
#
|
8619
|
+
# **Eventual consistency**: The KMS API follows an eventual consistency
|
8620
|
+
# model. For more information, see [KMS eventual consistency][13].
|
8621
|
+
#
|
8622
|
+
#
|
8623
|
+
#
|
8624
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-on-demand
|
8625
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
8626
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks
|
8627
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
8628
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
8629
|
+
# [6]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
8630
|
+
# [7]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
8631
|
+
# [8]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
8632
|
+
# [9]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
8633
|
+
# [10]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk
|
8634
|
+
# [11]: https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html
|
8635
|
+
# [12]: https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html
|
8636
|
+
# [13]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
8637
|
+
#
|
8638
|
+
# @option params [required, String] :key_id
|
8639
|
+
# Identifies a symmetric encryption KMS key. You cannot perform
|
8640
|
+
# on-demand rotation of [asymmetric KMS keys][1], [HMAC KMS keys][2],
|
8641
|
+
# KMS keys with [imported key material][3], or KMS keys in a [custom key
|
8642
|
+
# store][4]. To perform on-demand rotation of a set of related
|
8643
|
+
# [multi-Region keys][5], invoke the on-demand rotation on the primary
|
8644
|
+
# key.
|
8645
|
+
#
|
8646
|
+
# Specify the key ID or key ARN of the KMS key.
|
8647
|
+
#
|
8648
|
+
# For example:
|
8649
|
+
#
|
8650
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
8651
|
+
#
|
8652
|
+
# * Key ARN:
|
8653
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
8654
|
+
#
|
8655
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
8656
|
+
# DescribeKey.
|
8657
|
+
#
|
8658
|
+
#
|
8659
|
+
#
|
8660
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
8661
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
8662
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
8663
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
8664
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
8665
|
+
#
|
8666
|
+
# @return [Types::RotateKeyOnDemandResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
8667
|
+
#
|
8668
|
+
# * {Types::RotateKeyOnDemandResponse#key_id #key_id} => String
|
8669
|
+
#
|
8670
|
+
#
|
8671
|
+
# @example Example: To perform on-demand rotation of key material
|
8672
|
+
#
|
8673
|
+
# # The following example immediately initiates rotation of the key material for the specified KMS key.
|
8674
|
+
#
|
8675
|
+
# resp = client.rotate_key_on_demand({
|
8676
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The identifier of the KMS key whose key material you want to initiate on-demand rotation on. You can use the key ID or the Amazon Resource Name (ARN) of the KMS key.
|
8677
|
+
# })
|
8678
|
+
#
|
8679
|
+
# resp.to_h outputs the following:
|
8680
|
+
# {
|
8681
|
+
# key_id: "1234abcd-12ab-34cd-56ef-1234567890ab", # The KMS key that you initiated on-demand rotation on.
|
8682
|
+
# }
|
8683
|
+
#
|
8684
|
+
# @example Request syntax with placeholder values
|
8685
|
+
#
|
8686
|
+
# resp = client.rotate_key_on_demand({
|
8687
|
+
# key_id: "KeyIdType", # required
|
8688
|
+
# })
|
8689
|
+
#
|
8690
|
+
# @example Response structure
|
8691
|
+
#
|
8692
|
+
# resp.key_id #=> String
|
8693
|
+
#
|
8694
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemand AWS API Documentation
|
8695
|
+
#
|
8696
|
+
# @overload rotate_key_on_demand(params = {})
|
8697
|
+
# @param [Hash] params ({})
|
8698
|
+
def rotate_key_on_demand(params = {}, options = {})
|
8699
|
+
req = build_request(:rotate_key_on_demand, params)
|
8700
|
+
req.send_request(options)
|
8701
|
+
end
|
8702
|
+
|
8375
8703
|
# Schedules the deletion of a KMS key. By default, KMS applies a waiting
|
8376
8704
|
# period of 30 days, but you can specify a waiting period of 7-30 days.
|
8377
8705
|
# When this operation is successful, the key state of the KMS key
|
@@ -10105,7 +10433,7 @@ module Aws::KMS
|
|
10105
10433
|
params: params,
|
10106
10434
|
config: config)
|
10107
10435
|
context[:gem_name] = 'aws-sdk-kms'
|
10108
|
-
context[:gem_version] = '1.
|
10436
|
+
context[:gem_version] = '1.79.0'
|
10109
10437
|
Seahorse::Client::Request.new(handlers, context)
|
10110
10438
|
end
|
10111
10439
|
|
@@ -31,6 +31,7 @@ module Aws::KMS
|
|
31
31
|
CloudHsmClusterNotActiveException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotActiveException')
|
32
32
|
CloudHsmClusterNotFoundException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotFoundException')
|
33
33
|
CloudHsmClusterNotRelatedException = Shapes::StructureShape.new(name: 'CloudHsmClusterNotRelatedException')
|
34
|
+
ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
|
34
35
|
ConnectCustomKeyStoreRequest = Shapes::StructureShape.new(name: 'ConnectCustomKeyStoreRequest')
|
35
36
|
ConnectCustomKeyStoreResponse = Shapes::StructureShape.new(name: 'ConnectCustomKeyStoreResponse')
|
36
37
|
ConnectionErrorCodeType = Shapes::StringShape.new(name: 'ConnectionErrorCodeType')
|
@@ -150,6 +151,8 @@ module Aws::KMS
|
|
150
151
|
ListGrantsResponse = Shapes::StructureShape.new(name: 'ListGrantsResponse')
|
151
152
|
ListKeyPoliciesRequest = Shapes::StructureShape.new(name: 'ListKeyPoliciesRequest')
|
152
153
|
ListKeyPoliciesResponse = Shapes::StructureShape.new(name: 'ListKeyPoliciesResponse')
|
154
|
+
ListKeyRotationsRequest = Shapes::StructureShape.new(name: 'ListKeyRotationsRequest')
|
155
|
+
ListKeyRotationsResponse = Shapes::StructureShape.new(name: 'ListKeyRotationsResponse')
|
153
156
|
ListKeysRequest = Shapes::StructureShape.new(name: 'ListKeysRequest')
|
154
157
|
ListKeysResponse = Shapes::StructureShape.new(name: 'ListKeysResponse')
|
155
158
|
ListResourceTagsRequest = Shapes::StructureShape.new(name: 'ListResourceTagsRequest')
|
@@ -184,6 +187,12 @@ module Aws::KMS
|
|
184
187
|
ReplicateKeyResponse = Shapes::StructureShape.new(name: 'ReplicateKeyResponse')
|
185
188
|
RetireGrantRequest = Shapes::StructureShape.new(name: 'RetireGrantRequest')
|
186
189
|
RevokeGrantRequest = Shapes::StructureShape.new(name: 'RevokeGrantRequest')
|
190
|
+
RotateKeyOnDemandRequest = Shapes::StructureShape.new(name: 'RotateKeyOnDemandRequest')
|
191
|
+
RotateKeyOnDemandResponse = Shapes::StructureShape.new(name: 'RotateKeyOnDemandResponse')
|
192
|
+
RotationPeriodInDaysType = Shapes::IntegerShape.new(name: 'RotationPeriodInDaysType')
|
193
|
+
RotationType = Shapes::StringShape.new(name: 'RotationType')
|
194
|
+
RotationsList = Shapes::ListShape.new(name: 'RotationsList')
|
195
|
+
RotationsListEntry = Shapes::StructureShape.new(name: 'RotationsListEntry')
|
187
196
|
ScheduleKeyDeletionRequest = Shapes::StructureShape.new(name: 'ScheduleKeyDeletionRequest')
|
188
197
|
ScheduleKeyDeletionResponse = Shapes::StructureShape.new(name: 'ScheduleKeyDeletionResponse')
|
189
198
|
SignRequest = Shapes::StructureShape.new(name: 'SignRequest')
|
@@ -266,6 +275,9 @@ module Aws::KMS
|
|
266
275
|
CloudHsmClusterNotRelatedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
|
267
276
|
CloudHsmClusterNotRelatedException.struct_class = Types::CloudHsmClusterNotRelatedException
|
268
277
|
|
278
|
+
ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessageType, location_name: "message"))
|
279
|
+
ConflictException.struct_class = Types::ConflictException
|
280
|
+
|
269
281
|
ConnectCustomKeyStoreRequest.add_member(:custom_key_store_id, Shapes::ShapeRef.new(shape: CustomKeyStoreIdType, required: true, location_name: "CustomKeyStoreId"))
|
270
282
|
ConnectCustomKeyStoreRequest.struct_class = Types::ConnectCustomKeyStoreRequest
|
271
283
|
|
@@ -413,6 +425,7 @@ module Aws::KMS
|
|
413
425
|
EnableKeyRequest.struct_class = Types::EnableKeyRequest
|
414
426
|
|
415
427
|
EnableKeyRotationRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
428
|
+
EnableKeyRotationRequest.add_member(:rotation_period_in_days, Shapes::ShapeRef.new(shape: RotationPeriodInDaysType, location_name: "RotationPeriodInDays"))
|
416
429
|
EnableKeyRotationRequest.struct_class = Types::EnableKeyRotationRequest
|
417
430
|
|
418
431
|
EncryptRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
@@ -525,6 +538,10 @@ module Aws::KMS
|
|
525
538
|
GetKeyRotationStatusRequest.struct_class = Types::GetKeyRotationStatusRequest
|
526
539
|
|
527
540
|
GetKeyRotationStatusResponse.add_member(:key_rotation_enabled, Shapes::ShapeRef.new(shape: BooleanType, location_name: "KeyRotationEnabled"))
|
541
|
+
GetKeyRotationStatusResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
|
542
|
+
GetKeyRotationStatusResponse.add_member(:rotation_period_in_days, Shapes::ShapeRef.new(shape: RotationPeriodInDaysType, location_name: "RotationPeriodInDays"))
|
543
|
+
GetKeyRotationStatusResponse.add_member(:next_rotation_date, Shapes::ShapeRef.new(shape: DateType, location_name: "NextRotationDate"))
|
544
|
+
GetKeyRotationStatusResponse.add_member(:on_demand_rotation_start_date, Shapes::ShapeRef.new(shape: DateType, location_name: "OnDemandRotationStartDate"))
|
528
545
|
GetKeyRotationStatusResponse.struct_class = Types::GetKeyRotationStatusResponse
|
529
546
|
|
530
547
|
GetParametersForImportRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
@@ -696,6 +713,16 @@ module Aws::KMS
|
|
696
713
|
ListKeyPoliciesResponse.add_member(:truncated, Shapes::ShapeRef.new(shape: BooleanType, location_name: "Truncated"))
|
697
714
|
ListKeyPoliciesResponse.struct_class = Types::ListKeyPoliciesResponse
|
698
715
|
|
716
|
+
ListKeyRotationsRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
717
|
+
ListKeyRotationsRequest.add_member(:limit, Shapes::ShapeRef.new(shape: LimitType, location_name: "Limit"))
|
718
|
+
ListKeyRotationsRequest.add_member(:marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "Marker"))
|
719
|
+
ListKeyRotationsRequest.struct_class = Types::ListKeyRotationsRequest
|
720
|
+
|
721
|
+
ListKeyRotationsResponse.add_member(:rotations, Shapes::ShapeRef.new(shape: RotationsList, location_name: "Rotations"))
|
722
|
+
ListKeyRotationsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "NextMarker"))
|
723
|
+
ListKeyRotationsResponse.add_member(:truncated, Shapes::ShapeRef.new(shape: BooleanType, location_name: "Truncated"))
|
724
|
+
ListKeyRotationsResponse.struct_class = Types::ListKeyRotationsResponse
|
725
|
+
|
699
726
|
ListKeysRequest.add_member(:limit, Shapes::ShapeRef.new(shape: LimitType, location_name: "Limit"))
|
700
727
|
ListKeysRequest.add_member(:marker, Shapes::ShapeRef.new(shape: MarkerType, location_name: "Marker"))
|
701
728
|
ListKeysRequest.struct_class = Types::ListKeysRequest
|
@@ -793,6 +820,19 @@ module Aws::KMS
|
|
793
820
|
RevokeGrantRequest.add_member(:dry_run, Shapes::ShapeRef.new(shape: NullableBooleanType, location_name: "DryRun"))
|
794
821
|
RevokeGrantRequest.struct_class = Types::RevokeGrantRequest
|
795
822
|
|
823
|
+
RotateKeyOnDemandRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
824
|
+
RotateKeyOnDemandRequest.struct_class = Types::RotateKeyOnDemandRequest
|
825
|
+
|
826
|
+
RotateKeyOnDemandResponse.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
|
827
|
+
RotateKeyOnDemandResponse.struct_class = Types::RotateKeyOnDemandResponse
|
828
|
+
|
829
|
+
RotationsList.member = Shapes::ShapeRef.new(shape: RotationsListEntry)
|
830
|
+
|
831
|
+
RotationsListEntry.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, location_name: "KeyId"))
|
832
|
+
RotationsListEntry.add_member(:rotation_date, Shapes::ShapeRef.new(shape: DateType, location_name: "RotationDate"))
|
833
|
+
RotationsListEntry.add_member(:rotation_type, Shapes::ShapeRef.new(shape: RotationType, location_name: "RotationType"))
|
834
|
+
RotationsListEntry.struct_class = Types::RotationsListEntry
|
835
|
+
|
796
836
|
ScheduleKeyDeletionRequest.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyIdType, required: true, location_name: "KeyId"))
|
797
837
|
ScheduleKeyDeletionRequest.add_member(:pending_window_in_days, Shapes::ShapeRef.new(shape: PendingWindowInDaysType, location_name: "PendingWindowInDays"))
|
798
838
|
ScheduleKeyDeletionRequest.struct_class = Types::ScheduleKeyDeletionRequest
|
@@ -1132,6 +1172,7 @@ module Aws::KMS
|
|
1132
1172
|
o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
|
1133
1173
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1134
1174
|
o[:pager] = Aws::Pager.new(
|
1175
|
+
more_results: "truncated",
|
1135
1176
|
limit_key: "limit",
|
1136
1177
|
tokens: {
|
1137
1178
|
"next_marker" => "marker"
|
@@ -1424,6 +1465,7 @@ module Aws::KMS
|
|
1424
1465
|
o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
|
1425
1466
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1426
1467
|
o[:pager] = Aws::Pager.new(
|
1468
|
+
more_results: "truncated",
|
1427
1469
|
limit_key: "limit",
|
1428
1470
|
tokens: {
|
1429
1471
|
"next_marker" => "marker"
|
@@ -1445,6 +1487,7 @@ module Aws::KMS
|
|
1445
1487
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1446
1488
|
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1447
1489
|
o[:pager] = Aws::Pager.new(
|
1490
|
+
more_results: "truncated",
|
1448
1491
|
limit_key: "limit",
|
1449
1492
|
tokens: {
|
1450
1493
|
"next_marker" => "marker"
|
@@ -1464,6 +1507,28 @@ module Aws::KMS
|
|
1464
1507
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1465
1508
|
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1466
1509
|
o[:pager] = Aws::Pager.new(
|
1510
|
+
more_results: "truncated",
|
1511
|
+
limit_key: "limit",
|
1512
|
+
tokens: {
|
1513
|
+
"next_marker" => "marker"
|
1514
|
+
}
|
1515
|
+
)
|
1516
|
+
end)
|
1517
|
+
|
1518
|
+
api.add_operation(:list_key_rotations, Seahorse::Model::Operation.new.tap do |o|
|
1519
|
+
o.name = "ListKeyRotations"
|
1520
|
+
o.http_method = "POST"
|
1521
|
+
o.http_request_uri = "/"
|
1522
|
+
o.input = Shapes::ShapeRef.new(shape: ListKeyRotationsRequest)
|
1523
|
+
o.output = Shapes::ShapeRef.new(shape: ListKeyRotationsResponse)
|
1524
|
+
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1525
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
|
1526
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
|
1527
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1528
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1529
|
+
o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
|
1530
|
+
o[:pager] = Aws::Pager.new(
|
1531
|
+
more_results: "truncated",
|
1467
1532
|
limit_key: "limit",
|
1468
1533
|
tokens: {
|
1469
1534
|
"next_marker" => "marker"
|
@@ -1481,6 +1546,7 @@ module Aws::KMS
|
|
1481
1546
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1482
1547
|
o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
|
1483
1548
|
o[:pager] = Aws::Pager.new(
|
1549
|
+
more_results: "truncated",
|
1484
1550
|
limit_key: "limit",
|
1485
1551
|
tokens: {
|
1486
1552
|
"next_marker" => "marker"
|
@@ -1499,6 +1565,7 @@ module Aws::KMS
|
|
1499
1565
|
o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
|
1500
1566
|
o.errors << Shapes::ShapeRef.new(shape: InvalidMarkerException)
|
1501
1567
|
o[:pager] = Aws::Pager.new(
|
1568
|
+
more_results: "truncated",
|
1502
1569
|
limit_key: "limit",
|
1503
1570
|
tokens: {
|
1504
1571
|
"next_marker" => "marker"
|
@@ -1518,6 +1585,7 @@ module Aws::KMS
|
|
1518
1585
|
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1519
1586
|
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1520
1587
|
o[:pager] = Aws::Pager.new(
|
1588
|
+
more_results: "truncated",
|
1521
1589
|
limit_key: "limit",
|
1522
1590
|
tokens: {
|
1523
1591
|
"next_marker" => "marker"
|
@@ -1609,6 +1677,23 @@ module Aws::KMS
|
|
1609
1677
|
o.errors << Shapes::ShapeRef.new(shape: DryRunOperationException)
|
1610
1678
|
end)
|
1611
1679
|
|
1680
|
+
api.add_operation(:rotate_key_on_demand, Seahorse::Model::Operation.new.tap do |o|
|
1681
|
+
o.name = "RotateKeyOnDemand"
|
1682
|
+
o.http_method = "POST"
|
1683
|
+
o.http_request_uri = "/"
|
1684
|
+
o.input = Shapes::ShapeRef.new(shape: RotateKeyOnDemandRequest)
|
1685
|
+
o.output = Shapes::ShapeRef.new(shape: RotateKeyOnDemandResponse)
|
1686
|
+
o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
|
1687
|
+
o.errors << Shapes::ShapeRef.new(shape: DisabledException)
|
1688
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidArnException)
|
1689
|
+
o.errors << Shapes::ShapeRef.new(shape: DependencyTimeoutException)
|
1690
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInternalException)
|
1691
|
+
o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
|
1692
|
+
o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
|
1693
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
1694
|
+
o.errors << Shapes::ShapeRef.new(shape: ConflictException)
|
1695
|
+
end)
|
1696
|
+
|
1612
1697
|
api.add_operation(:schedule_key_deletion, Seahorse::Model::Operation.new.tap do |o|
|
1613
1698
|
o.name = "ScheduleKeyDeletion"
|
1614
1699
|
o.http_method = "POST"
|
@@ -460,6 +460,20 @@ module Aws::KMS
|
|
460
460
|
end
|
461
461
|
end
|
462
462
|
|
463
|
+
class ListKeyRotations
|
464
|
+
def self.build(context)
|
465
|
+
unless context.config.regional_endpoint
|
466
|
+
endpoint = context.config.endpoint.to_s
|
467
|
+
end
|
468
|
+
Aws::KMS::EndpointParameters.new(
|
469
|
+
region: context.config.region,
|
470
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
471
|
+
use_fips: context.config.use_fips_endpoint,
|
472
|
+
endpoint: endpoint,
|
473
|
+
)
|
474
|
+
end
|
475
|
+
end
|
476
|
+
|
463
477
|
class ListKeys
|
464
478
|
def self.build(context)
|
465
479
|
unless context.config.regional_endpoint
|
@@ -572,6 +586,20 @@ module Aws::KMS
|
|
572
586
|
end
|
573
587
|
end
|
574
588
|
|
589
|
+
class RotateKeyOnDemand
|
590
|
+
def self.build(context)
|
591
|
+
unless context.config.regional_endpoint
|
592
|
+
endpoint = context.config.endpoint.to_s
|
593
|
+
end
|
594
|
+
Aws::KMS::EndpointParameters.new(
|
595
|
+
region: context.config.region,
|
596
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
597
|
+
use_fips: context.config.use_fips_endpoint,
|
598
|
+
endpoint: endpoint,
|
599
|
+
)
|
600
|
+
end
|
601
|
+
end
|
602
|
+
|
575
603
|
class ScheduleKeyDeletion
|
576
604
|
def self.build(context)
|
577
605
|
unless context.config.regional_endpoint
|
data/lib/aws-sdk-kms/errors.rb
CHANGED
@@ -33,6 +33,7 @@ module Aws::KMS
|
|
33
33
|
# * {CloudHsmClusterNotActiveException}
|
34
34
|
# * {CloudHsmClusterNotFoundException}
|
35
35
|
# * {CloudHsmClusterNotRelatedException}
|
36
|
+
# * {ConflictException}
|
36
37
|
# * {CustomKeyStoreHasCMKsException}
|
37
38
|
# * {CustomKeyStoreInvalidStateException}
|
38
39
|
# * {CustomKeyStoreNameInUseException}
|
@@ -171,6 +172,21 @@ module Aws::KMS
|
|
171
172
|
end
|
172
173
|
end
|
173
174
|
|
175
|
+
class ConflictException < ServiceError
|
176
|
+
|
177
|
+
# @param [Seahorse::Client::RequestContext] context
|
178
|
+
# @param [String] message
|
179
|
+
# @param [Aws::KMS::Types::ConflictException] data
|
180
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
181
|
+
super(context, message, data)
|
182
|
+
end
|
183
|
+
|
184
|
+
# @return [String]
|
185
|
+
def message
|
186
|
+
@message || @data[:message]
|
187
|
+
end
|
188
|
+
end
|
189
|
+
|
174
190
|
class CustomKeyStoreHasCMKsException < ServiceError
|
175
191
|
|
176
192
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -122,6 +122,8 @@ module Aws::KMS
|
|
122
122
|
Aws::KMS::Endpoints::ListGrants.build(context)
|
123
123
|
when :list_key_policies
|
124
124
|
Aws::KMS::Endpoints::ListKeyPolicies.build(context)
|
125
|
+
when :list_key_rotations
|
126
|
+
Aws::KMS::Endpoints::ListKeyRotations.build(context)
|
125
127
|
when :list_keys
|
126
128
|
Aws::KMS::Endpoints::ListKeys.build(context)
|
127
129
|
when :list_resource_tags
|
@@ -138,6 +140,8 @@ module Aws::KMS
|
|
138
140
|
Aws::KMS::Endpoints::RetireGrant.build(context)
|
139
141
|
when :revoke_grant
|
140
142
|
Aws::KMS::Endpoints::RevokeGrant.build(context)
|
143
|
+
when :rotate_key_on_demand
|
144
|
+
Aws::KMS::Endpoints::RotateKeyOnDemand.build(context)
|
141
145
|
when :schedule_key_deletion
|
142
146
|
Aws::KMS::Endpoints::ScheduleKeyDeletion.build(context)
|
143
147
|
when :sign
|
data/lib/aws-sdk-kms/types.rb
CHANGED
@@ -242,6 +242,21 @@ module Aws::KMS
|
|
242
242
|
include Aws::Structure
|
243
243
|
end
|
244
244
|
|
245
|
+
# The request was rejected because an automatic rotation of this key is
|
246
|
+
# currently in progress or scheduled to begin within the next 20
|
247
|
+
# minutes.
|
248
|
+
#
|
249
|
+
# @!attribute [rw] message
|
250
|
+
# @return [String]
|
251
|
+
#
|
252
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ConflictException AWS API Documentation
|
253
|
+
#
|
254
|
+
class ConflictException < Struct.new(
|
255
|
+
:message)
|
256
|
+
SENSITIVE = []
|
257
|
+
include Aws::Structure
|
258
|
+
end
|
259
|
+
|
245
260
|
# @!attribute [rw] custom_key_store_id
|
246
261
|
# Enter the key store ID of the custom key store that you want to
|
247
262
|
# connect. To find the ID of a custom key store, use the
|
@@ -1801,8 +1816,8 @@ module Aws::KMS
|
|
1801
1816
|
# @!attribute [rw] truncated
|
1802
1817
|
# A flag that indicates whether there are more items in the list. When
|
1803
1818
|
# this value is true, the list in this response is truncated. To get
|
1804
|
-
# more items, pass the value of the `NextMarker` element in
|
1805
|
-
#
|
1819
|
+
# more items, pass the value of the `NextMarker` element in this
|
1820
|
+
# response to the `Marker` parameter in a subsequent request.
|
1806
1821
|
# @return [Boolean]
|
1807
1822
|
#
|
1808
1823
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/DescribeCustomKeyStoresResponse AWS API Documentation
|
@@ -2036,10 +2051,31 @@ module Aws::KMS
|
|
2036
2051
|
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
2037
2052
|
# @return [String]
|
2038
2053
|
#
|
2054
|
+
# @!attribute [rw] rotation_period_in_days
|
2055
|
+
# Use this parameter to specify a custom period of time between each
|
2056
|
+
# rotation date. If no value is specified, the default value is 365
|
2057
|
+
# days.
|
2058
|
+
#
|
2059
|
+
# The rotation period defines the number of days after you enable
|
2060
|
+
# automatic key rotation that KMS will rotate your key material, and
|
2061
|
+
# the number of days between each automatic rotation thereafter.
|
2062
|
+
#
|
2063
|
+
# You can use the [ `kms:RotationPeriodInDays` ][1] condition key to
|
2064
|
+
# further constrain the values that principals can specify in the
|
2065
|
+
# `RotationPeriodInDays` parameter.
|
2066
|
+
#
|
2067
|
+
#
|
2068
|
+
#
|
2069
|
+
#
|
2070
|
+
#
|
2071
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days
|
2072
|
+
# @return [Integer]
|
2073
|
+
#
|
2039
2074
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/EnableKeyRotationRequest AWS API Documentation
|
2040
2075
|
#
|
2041
2076
|
class EnableKeyRotationRequest < Struct.new(
|
2042
|
-
:key_id
|
2077
|
+
:key_id,
|
2078
|
+
:rotation_period_in_days)
|
2043
2079
|
SENSITIVE = []
|
2044
2080
|
include Aws::Structure
|
2045
2081
|
end
|
@@ -3109,10 +3145,42 @@ module Aws::KMS
|
|
3109
3145
|
# A Boolean value that specifies whether key rotation is enabled.
|
3110
3146
|
# @return [Boolean]
|
3111
3147
|
#
|
3148
|
+
# @!attribute [rw] key_id
|
3149
|
+
# Identifies the specified symmetric encryption KMS key.
|
3150
|
+
# @return [String]
|
3151
|
+
#
|
3152
|
+
# @!attribute [rw] rotation_period_in_days
|
3153
|
+
# The number of days between each automatic rotation. The default
|
3154
|
+
# value is 365 days.
|
3155
|
+
# @return [Integer]
|
3156
|
+
#
|
3157
|
+
# @!attribute [rw] next_rotation_date
|
3158
|
+
# The next date that KMS will automatically rotate the key material.
|
3159
|
+
# @return [Time]
|
3160
|
+
#
|
3161
|
+
# @!attribute [rw] on_demand_rotation_start_date
|
3162
|
+
# Identifies the date and time that an in progress on-demand rotation
|
3163
|
+
# was initiated.
|
3164
|
+
#
|
3165
|
+
# The KMS API follows an [eventual consistency][1] model due to the
|
3166
|
+
# distributed nature of the system. As a result, there might be a
|
3167
|
+
# slight delay between initiating on-demand key rotation and the
|
3168
|
+
# rotation's completion. Once the on-demand rotation is complete, use
|
3169
|
+
# ListKeyRotations to view the details of the on-demand rotation.
|
3170
|
+
#
|
3171
|
+
#
|
3172
|
+
#
|
3173
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/programming-eventual-consistency.html
|
3174
|
+
# @return [Time]
|
3175
|
+
#
|
3112
3176
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/GetKeyRotationStatusResponse AWS API Documentation
|
3113
3177
|
#
|
3114
3178
|
class GetKeyRotationStatusResponse < Struct.new(
|
3115
|
-
:key_rotation_enabled
|
3179
|
+
:key_rotation_enabled,
|
3180
|
+
:key_id,
|
3181
|
+
:rotation_period_in_days,
|
3182
|
+
:next_rotation_date,
|
3183
|
+
:on_demand_rotation_start_date)
|
3116
3184
|
SENSITIVE = []
|
3117
3185
|
include Aws::Structure
|
3118
3186
|
end
|
@@ -4216,8 +4284,8 @@ module Aws::KMS
|
|
4216
4284
|
# @!attribute [rw] truncated
|
4217
4285
|
# A flag that indicates whether there are more items in the list. When
|
4218
4286
|
# this value is true, the list in this response is truncated. To get
|
4219
|
-
# more items, pass the value of the `NextMarker` element in
|
4220
|
-
#
|
4287
|
+
# more items, pass the value of the `NextMarker` element in this
|
4288
|
+
# response to the `Marker` parameter in a subsequent request.
|
4221
4289
|
# @return [Boolean]
|
4222
4290
|
#
|
4223
4291
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListAliasesResponse AWS API Documentation
|
@@ -4299,8 +4367,8 @@ module Aws::KMS
|
|
4299
4367
|
# @!attribute [rw] truncated
|
4300
4368
|
# A flag that indicates whether there are more items in the list. When
|
4301
4369
|
# this value is true, the list in this response is truncated. To get
|
4302
|
-
# more items, pass the value of the `NextMarker` element in
|
4303
|
-
#
|
4370
|
+
# more items, pass the value of the `NextMarker` element in this
|
4371
|
+
# response to the `Marker` parameter in a subsequent request.
|
4304
4372
|
# @return [Boolean]
|
4305
4373
|
#
|
4306
4374
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListGrantsResponse AWS API Documentation
|
@@ -4369,8 +4437,8 @@ module Aws::KMS
|
|
4369
4437
|
# @!attribute [rw] truncated
|
4370
4438
|
# A flag that indicates whether there are more items in the list. When
|
4371
4439
|
# this value is true, the list in this response is truncated. To get
|
4372
|
-
# more items, pass the value of the `NextMarker` element in
|
4373
|
-
#
|
4440
|
+
# more items, pass the value of the `NextMarker` element in this
|
4441
|
+
# response to the `Marker` parameter in a subsequent request.
|
4374
4442
|
# @return [Boolean]
|
4375
4443
|
#
|
4376
4444
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyPoliciesResponse AWS API Documentation
|
@@ -4383,6 +4451,74 @@ module Aws::KMS
|
|
4383
4451
|
include Aws::Structure
|
4384
4452
|
end
|
4385
4453
|
|
4454
|
+
# @!attribute [rw] key_id
|
4455
|
+
# Gets the key rotations for the specified KMS key.
|
4456
|
+
#
|
4457
|
+
# Specify the key ID or key ARN of the KMS key.
|
4458
|
+
#
|
4459
|
+
# For example:
|
4460
|
+
#
|
4461
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
4462
|
+
#
|
4463
|
+
# * Key ARN:
|
4464
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
4465
|
+
#
|
4466
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
4467
|
+
# DescribeKey.
|
4468
|
+
# @return [String]
|
4469
|
+
#
|
4470
|
+
# @!attribute [rw] limit
|
4471
|
+
# Use this parameter to specify the maximum number of items to return.
|
4472
|
+
# When this value is present, KMS does not return more than the
|
4473
|
+
# specified number of items, but it might return fewer.
|
4474
|
+
#
|
4475
|
+
# This value is optional. If you include a value, it must be between 1
|
4476
|
+
# and 1000, inclusive. If you do not include a value, it defaults to
|
4477
|
+
# 100.
|
4478
|
+
# @return [Integer]
|
4479
|
+
#
|
4480
|
+
# @!attribute [rw] marker
|
4481
|
+
# Use this parameter in a subsequent request after you receive a
|
4482
|
+
# response with truncated results. Set it to the value of `NextMarker`
|
4483
|
+
# from the truncated response you just received.
|
4484
|
+
# @return [String]
|
4485
|
+
#
|
4486
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotationsRequest AWS API Documentation
|
4487
|
+
#
|
4488
|
+
class ListKeyRotationsRequest < Struct.new(
|
4489
|
+
:key_id,
|
4490
|
+
:limit,
|
4491
|
+
:marker)
|
4492
|
+
SENSITIVE = []
|
4493
|
+
include Aws::Structure
|
4494
|
+
end
|
4495
|
+
|
4496
|
+
# @!attribute [rw] rotations
|
4497
|
+
# A list of completed key material rotations.
|
4498
|
+
# @return [Array<Types::RotationsListEntry>]
|
4499
|
+
#
|
4500
|
+
# @!attribute [rw] next_marker
|
4501
|
+
# When `Truncated` is true, this element is present and contains the
|
4502
|
+
# value to use for the `Marker` parameter in a subsequent request.
|
4503
|
+
# @return [String]
|
4504
|
+
#
|
4505
|
+
# @!attribute [rw] truncated
|
4506
|
+
# A flag that indicates whether there are more items in the list. When
|
4507
|
+
# this value is true, the list in this response is truncated. To get
|
4508
|
+
# more items, pass the value of the `NextMarker` element in this
|
4509
|
+
# response to the `Marker` parameter in a subsequent request.
|
4510
|
+
# @return [Boolean]
|
4511
|
+
#
|
4512
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeyRotationsResponse AWS API Documentation
|
4513
|
+
#
|
4514
|
+
class ListKeyRotationsResponse < Struct.new(
|
4515
|
+
:rotations,
|
4516
|
+
:next_marker,
|
4517
|
+
:truncated)
|
4518
|
+
SENSITIVE = []
|
4519
|
+
include Aws::Structure
|
4520
|
+
end
|
4521
|
+
|
4386
4522
|
# @!attribute [rw] limit
|
4387
4523
|
# Use this parameter to specify the maximum number of items to return.
|
4388
4524
|
# When this value is present, KMS does not return more than the
|
@@ -4420,8 +4556,8 @@ module Aws::KMS
|
|
4420
4556
|
# @!attribute [rw] truncated
|
4421
4557
|
# A flag that indicates whether there are more items in the list. When
|
4422
4558
|
# this value is true, the list in this response is truncated. To get
|
4423
|
-
# more items, pass the value of the `NextMarker` element in
|
4424
|
-
#
|
4559
|
+
# more items, pass the value of the `NextMarker` element in this
|
4560
|
+
# response to the `Marker` parameter in a subsequent request.
|
4425
4561
|
# @return [Boolean]
|
4426
4562
|
#
|
4427
4563
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListKeysResponse AWS API Documentation
|
@@ -4502,8 +4638,8 @@ module Aws::KMS
|
|
4502
4638
|
# @!attribute [rw] truncated
|
4503
4639
|
# A flag that indicates whether there are more items in the list. When
|
4504
4640
|
# this value is true, the list in this response is truncated. To get
|
4505
|
-
# more items, pass the value of the `NextMarker` element in
|
4506
|
-
#
|
4641
|
+
# more items, pass the value of the `NextMarker` element in this
|
4642
|
+
# response to the `Marker` parameter in a subsequent request.
|
4507
4643
|
# @return [Boolean]
|
4508
4644
|
#
|
4509
4645
|
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/ListResourceTagsResponse AWS API Documentation
|
@@ -5327,6 +5463,87 @@ module Aws::KMS
|
|
5327
5463
|
include Aws::Structure
|
5328
5464
|
end
|
5329
5465
|
|
5466
|
+
# @!attribute [rw] key_id
|
5467
|
+
# Identifies a symmetric encryption KMS key. You cannot perform
|
5468
|
+
# on-demand rotation of [asymmetric KMS keys][1], [HMAC KMS keys][2],
|
5469
|
+
# KMS keys with [imported key material][3], or KMS keys in a [custom
|
5470
|
+
# key store][4]. To perform on-demand rotation of a set of related
|
5471
|
+
# [multi-Region keys][5], invoke the on-demand rotation on the primary
|
5472
|
+
# key.
|
5473
|
+
#
|
5474
|
+
# Specify the key ID or key ARN of the KMS key.
|
5475
|
+
#
|
5476
|
+
# For example:
|
5477
|
+
#
|
5478
|
+
# * Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
|
5479
|
+
#
|
5480
|
+
# * Key ARN:
|
5481
|
+
# `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
|
5482
|
+
#
|
5483
|
+
# To get the key ID and key ARN for a KMS key, use ListKeys or
|
5484
|
+
# DescribeKey.
|
5485
|
+
#
|
5486
|
+
#
|
5487
|
+
#
|
5488
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
|
5489
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html
|
5490
|
+
# [3]: https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html
|
5491
|
+
# [4]: https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html
|
5492
|
+
# [5]: https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-manage.html#multi-region-rotate
|
5493
|
+
# @return [String]
|
5494
|
+
#
|
5495
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemandRequest AWS API Documentation
|
5496
|
+
#
|
5497
|
+
class RotateKeyOnDemandRequest < Struct.new(
|
5498
|
+
:key_id)
|
5499
|
+
SENSITIVE = []
|
5500
|
+
include Aws::Structure
|
5501
|
+
end
|
5502
|
+
|
5503
|
+
# @!attribute [rw] key_id
|
5504
|
+
# Identifies the symmetric encryption KMS key that you initiated
|
5505
|
+
# on-demand rotation on.
|
5506
|
+
# @return [String]
|
5507
|
+
#
|
5508
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotateKeyOnDemandResponse AWS API Documentation
|
5509
|
+
#
|
5510
|
+
class RotateKeyOnDemandResponse < Struct.new(
|
5511
|
+
:key_id)
|
5512
|
+
SENSITIVE = []
|
5513
|
+
include Aws::Structure
|
5514
|
+
end
|
5515
|
+
|
5516
|
+
# Contains information about completed key material rotations.
|
5517
|
+
#
|
5518
|
+
# @!attribute [rw] key_id
|
5519
|
+
# Unique identifier of the key.
|
5520
|
+
# @return [String]
|
5521
|
+
#
|
5522
|
+
# @!attribute [rw] rotation_date
|
5523
|
+
# Date and time that the key material rotation completed. Formatted as
|
5524
|
+
# Unix time.
|
5525
|
+
# @return [Time]
|
5526
|
+
#
|
5527
|
+
# @!attribute [rw] rotation_type
|
5528
|
+
# Identifies whether the key material rotation was a scheduled
|
5529
|
+
# [automatic rotation][1] or an [on-demand rotation][2].
|
5530
|
+
#
|
5531
|
+
#
|
5532
|
+
#
|
5533
|
+
# [1]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-enable-disable
|
5534
|
+
# [2]: https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-on-demand
|
5535
|
+
# @return [String]
|
5536
|
+
#
|
5537
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kms-2014-11-01/RotationsListEntry AWS API Documentation
|
5538
|
+
#
|
5539
|
+
class RotationsListEntry < Struct.new(
|
5540
|
+
:key_id,
|
5541
|
+
:rotation_date,
|
5542
|
+
:rotation_type)
|
5543
|
+
SENSITIVE = []
|
5544
|
+
include Aws::Structure
|
5545
|
+
end
|
5546
|
+
|
5330
5547
|
# @!attribute [rw] key_id
|
5331
5548
|
# The unique identifier of the KMS key to delete.
|
5332
5549
|
#
|
data/lib/aws-sdk-kms.rb
CHANGED
data/sig/client.rbs
CHANGED
@@ -265,7 +265,8 @@ module Aws
|
|
265
265
|
|
266
266
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/KMS/Client.html#enable_key_rotation-instance_method
|
267
267
|
def enable_key_rotation: (
|
268
|
-
key_id: ::String
|
268
|
+
key_id: ::String,
|
269
|
+
?rotation_period_in_days: ::Integer
|
269
270
|
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
270
271
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
271
272
|
|
@@ -411,6 +412,10 @@ module Aws
|
|
411
412
|
interface _GetKeyRotationStatusResponseSuccess
|
412
413
|
include ::Seahorse::Client::_ResponseSuccess[Types::GetKeyRotationStatusResponse]
|
413
414
|
def key_rotation_enabled: () -> bool
|
415
|
+
def key_id: () -> ::String
|
416
|
+
def rotation_period_in_days: () -> ::Integer
|
417
|
+
def next_rotation_date: () -> ::Time
|
418
|
+
def on_demand_rotation_start_date: () -> ::Time
|
414
419
|
end
|
415
420
|
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/KMS/Client.html#get_key_rotation_status-instance_method
|
416
421
|
def get_key_rotation_status: (
|
@@ -507,6 +512,20 @@ module Aws
|
|
507
512
|
) -> _ListKeyPoliciesResponseSuccess
|
508
513
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListKeyPoliciesResponseSuccess
|
509
514
|
|
515
|
+
interface _ListKeyRotationsResponseSuccess
|
516
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::ListKeyRotationsResponse]
|
517
|
+
def rotations: () -> ::Array[Types::RotationsListEntry]
|
518
|
+
def next_marker: () -> ::String
|
519
|
+
def truncated: () -> bool
|
520
|
+
end
|
521
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/KMS/Client.html#list_key_rotations-instance_method
|
522
|
+
def list_key_rotations: (
|
523
|
+
key_id: ::String,
|
524
|
+
?limit: ::Integer,
|
525
|
+
?marker: ::String
|
526
|
+
) -> _ListKeyRotationsResponseSuccess
|
527
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListKeyRotationsResponseSuccess
|
528
|
+
|
510
529
|
interface _ListKeysResponseSuccess
|
511
530
|
include ::Seahorse::Client::_ResponseSuccess[Types::ListKeysResponse]
|
512
531
|
def keys: () -> ::Array[Types::KeyListEntry]
|
@@ -618,6 +637,16 @@ module Aws
|
|
618
637
|
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
619
638
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
620
639
|
|
640
|
+
interface _RotateKeyOnDemandResponseSuccess
|
641
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::RotateKeyOnDemandResponse]
|
642
|
+
def key_id: () -> ::String
|
643
|
+
end
|
644
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/KMS/Client.html#rotate_key_on_demand-instance_method
|
645
|
+
def rotate_key_on_demand: (
|
646
|
+
key_id: ::String
|
647
|
+
) -> _RotateKeyOnDemandResponseSuccess
|
648
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _RotateKeyOnDemandResponseSuccess
|
649
|
+
|
621
650
|
interface _ScheduleKeyDeletionResponseSuccess
|
622
651
|
include ::Seahorse::Client::_ResponseSuccess[Types::ScheduleKeyDeletionResponse]
|
623
652
|
def key_id: () -> ::String
|
data/sig/errors.rbs
CHANGED
@@ -29,6 +29,9 @@ module Aws
|
|
29
29
|
class CloudHsmClusterNotRelatedException < ::Aws::Errors::ServiceError
|
30
30
|
def message: () -> ::String
|
31
31
|
end
|
32
|
+
class ConflictException < ::Aws::Errors::ServiceError
|
33
|
+
def message: () -> ::String
|
34
|
+
end
|
32
35
|
class CustomKeyStoreHasCMKsException < ::Aws::Errors::ServiceError
|
33
36
|
def message: () -> ::String
|
34
37
|
end
|
data/sig/types.rbs
CHANGED
@@ -57,6 +57,11 @@ module Aws::KMS
|
|
57
57
|
SENSITIVE: []
|
58
58
|
end
|
59
59
|
|
60
|
+
class ConflictException
|
61
|
+
attr_accessor message: ::String
|
62
|
+
SENSITIVE: []
|
63
|
+
end
|
64
|
+
|
60
65
|
class ConnectCustomKeyStoreRequest
|
61
66
|
attr_accessor custom_key_store_id: ::String
|
62
67
|
SENSITIVE: []
|
@@ -264,6 +269,7 @@ module Aws::KMS
|
|
264
269
|
|
265
270
|
class EnableKeyRotationRequest
|
266
271
|
attr_accessor key_id: ::String
|
272
|
+
attr_accessor rotation_period_in_days: ::Integer
|
267
273
|
SENSITIVE: []
|
268
274
|
end
|
269
275
|
|
@@ -409,6 +415,10 @@ module Aws::KMS
|
|
409
415
|
|
410
416
|
class GetKeyRotationStatusResponse
|
411
417
|
attr_accessor key_rotation_enabled: bool
|
418
|
+
attr_accessor key_id: ::String
|
419
|
+
attr_accessor rotation_period_in_days: ::Integer
|
420
|
+
attr_accessor next_rotation_date: ::Time
|
421
|
+
attr_accessor on_demand_rotation_start_date: ::Time
|
412
422
|
SENSITIVE: []
|
413
423
|
end
|
414
424
|
|
@@ -638,6 +648,20 @@ module Aws::KMS
|
|
638
648
|
SENSITIVE: []
|
639
649
|
end
|
640
650
|
|
651
|
+
class ListKeyRotationsRequest
|
652
|
+
attr_accessor key_id: ::String
|
653
|
+
attr_accessor limit: ::Integer
|
654
|
+
attr_accessor marker: ::String
|
655
|
+
SENSITIVE: []
|
656
|
+
end
|
657
|
+
|
658
|
+
class ListKeyRotationsResponse
|
659
|
+
attr_accessor rotations: ::Array[Types::RotationsListEntry]
|
660
|
+
attr_accessor next_marker: ::String
|
661
|
+
attr_accessor truncated: bool
|
662
|
+
SENSITIVE: []
|
663
|
+
end
|
664
|
+
|
641
665
|
class ListKeysRequest
|
642
666
|
attr_accessor limit: ::Integer
|
643
667
|
attr_accessor marker: ::String
|
@@ -763,6 +787,23 @@ module Aws::KMS
|
|
763
787
|
SENSITIVE: []
|
764
788
|
end
|
765
789
|
|
790
|
+
class RotateKeyOnDemandRequest
|
791
|
+
attr_accessor key_id: ::String
|
792
|
+
SENSITIVE: []
|
793
|
+
end
|
794
|
+
|
795
|
+
class RotateKeyOnDemandResponse
|
796
|
+
attr_accessor key_id: ::String
|
797
|
+
SENSITIVE: []
|
798
|
+
end
|
799
|
+
|
800
|
+
class RotationsListEntry
|
801
|
+
attr_accessor key_id: ::String
|
802
|
+
attr_accessor rotation_date: ::Time
|
803
|
+
attr_accessor rotation_type: ("AUTOMATIC" | "ON_DEMAND")
|
804
|
+
SENSITIVE: []
|
805
|
+
end
|
806
|
+
|
766
807
|
class ScheduleKeyDeletionRequest
|
767
808
|
attr_accessor key_id: ::String
|
768
809
|
attr_accessor pending_window_in_days: ::Integer
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-kms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.79.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-04-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|