aws-sdk-backup 1.33.0 → 1.34.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 477db29fed1a07d045bb148798161a6876066674373298acc7bb1b6e0c9521ae
4
- data.tar.gz: 759b811e2cded6f09dcddf1a9bc62a1cc181abb9191d08a8a8adce88bffb6fcf
3
+ metadata.gz: 0ebad1986daeb768ef8b1bad1482bd91a4bd9ac8623b2ecd9dfd81d20842fac9
4
+ data.tar.gz: d3b80ddd0750ea3ffac8827fb8a58e76aebd8f40748a165047ed2723d1b0397d
5
5
  SHA512:
6
- metadata.gz: 3b3cae0f124f2680a88e2dc6d94f42de125606b187aa20ecc5a5bd5a16185ebb95f229f67068d6704686f86bc24b97b5831b98ecaf9e11a18a428131bf8da206
7
- data.tar.gz: 6b3ea0012b2597eb815cdba08a4a87b6c1df3b10d3268678e509535323b221d79ebe4d084f600ab3a3492a4ffd0058406a1d1df08de1bce17db7773ecfd055a5
6
+ metadata.gz: 50bbefbf352c4371f20ecd7ecda1f55c342d6226efc4ddf8a2c411bc65f48ea0767f542ca08b76c0154dac667192848f0390f539533c5e90cebb2f0e52477a1d
7
+ data.tar.gz: ee6fc23d98bc6df646a32b8f5a82e148d0d7a445122f26f19a1a9a094ded33e39c365ad0668e13e80867ee1a36fd4715e3d8b5f59ce9633ea933943dcf751093
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.34.0 (2021-10-07)
5
+ ------------------
6
+
7
+ * Feature - Launch of AWS Backup Vault Lock, which protects your backups from malicious and accidental actions, works with existing backup policies, and helps you meet compliance requirements.
8
+
4
9
  1.33.0 (2021-10-05)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.33.0
1
+ 1.34.0
@@ -850,6 +850,38 @@ module Aws::Backup
850
850
  req.send_request(options)
851
851
  end
852
852
 
853
+ # Deletes Backup Vault Lock from a backup vault specified by a backup
854
+ # vault name.
855
+ #
856
+ # If the Vault Lock configuration is immutable, then you cannot delete
857
+ # Vault Lock using API operations, and you will receive an
858
+ # `InvalidRequestException` if you attempt to do so. For more
859
+ # information, see [Vault Lock][1] in the *Backup Developer Guide*.
860
+ #
861
+ #
862
+ #
863
+ # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/vault-lock.html
864
+ #
865
+ # @option params [required, String] :backup_vault_name
866
+ # The name of the backup vault from which to delete Backup Vault Lock.
867
+ #
868
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
869
+ #
870
+ # @example Request syntax with placeholder values
871
+ #
872
+ # resp = client.delete_backup_vault_lock_configuration({
873
+ # backup_vault_name: "BackupVaultName", # required
874
+ # })
875
+ #
876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultLockConfiguration AWS API Documentation
877
+ #
878
+ # @overload delete_backup_vault_lock_configuration(params = {})
879
+ # @param [Hash] params ({})
880
+ def delete_backup_vault_lock_configuration(params = {}, options = {})
881
+ req = build_request(:delete_backup_vault_lock_configuration, params)
882
+ req.send_request(options)
883
+ end
884
+
853
885
  # Deletes event notifications for the specified backup vault.
854
886
  #
855
887
  # @option params [required, String] :backup_vault_name
@@ -1040,6 +1072,10 @@ module Aws::Backup
1040
1072
  # * {Types::DescribeBackupVaultOutput#creation_date #creation_date} => Time
1041
1073
  # * {Types::DescribeBackupVaultOutput#creator_request_id #creator_request_id} => String
1042
1074
  # * {Types::DescribeBackupVaultOutput#number_of_recovery_points #number_of_recovery_points} => Integer
1075
+ # * {Types::DescribeBackupVaultOutput#locked #locked} => Boolean
1076
+ # * {Types::DescribeBackupVaultOutput#min_retention_days #min_retention_days} => Integer
1077
+ # * {Types::DescribeBackupVaultOutput#max_retention_days #max_retention_days} => Integer
1078
+ # * {Types::DescribeBackupVaultOutput#lock_date #lock_date} => Time
1043
1079
  #
1044
1080
  # @example Request syntax with placeholder values
1045
1081
  #
@@ -1055,6 +1091,10 @@ module Aws::Backup
1055
1091
  # resp.creation_date #=> Time
1056
1092
  # resp.creator_request_id #=> String
1057
1093
  # resp.number_of_recovery_points #=> Integer
1094
+ # resp.locked #=> Boolean
1095
+ # resp.min_retention_days #=> Integer
1096
+ # resp.max_retention_days #=> Integer
1097
+ # resp.lock_date #=> Time
1058
1098
  #
1059
1099
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVault AWS API Documentation
1060
1100
  #
@@ -2242,6 +2282,10 @@ module Aws::Backup
2242
2282
  # resp.backup_vault_list[0].encryption_key_arn #=> String
2243
2283
  # resp.backup_vault_list[0].creator_request_id #=> String
2244
2284
  # resp.backup_vault_list[0].number_of_recovery_points #=> Integer
2285
+ # resp.backup_vault_list[0].locked #=> Boolean
2286
+ # resp.backup_vault_list[0].min_retention_days #=> Integer
2287
+ # resp.backup_vault_list[0].max_retention_days #=> Integer
2288
+ # resp.backup_vault_list[0].lock_date #=> Time
2245
2289
  # resp.next_token #=> String
2246
2290
  #
2247
2291
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaults AWS API Documentation
@@ -2886,6 +2930,97 @@ module Aws::Backup
2886
2930
  req.send_request(options)
2887
2931
  end
2888
2932
 
2933
+ # Applies Backup Vault Lock to a backup vault, preventing attempts to
2934
+ # delete any recovery point stored in or created in a backup vault.
2935
+ # Vault Lock also prevents attempts to update the lifecycle policy that
2936
+ # controls the retention period of any recovery point currently stored
2937
+ # in a backup vault. If specified, Vault Lock enforces a minimum and
2938
+ # maximum retention period for future backup and copy jobs that target a
2939
+ # backup vault.
2940
+ #
2941
+ # @option params [required, String] :backup_vault_name
2942
+ # The Backup Vault Lock configuration that specifies the name of the
2943
+ # backup vault it protects.
2944
+ #
2945
+ # @option params [Integer] :min_retention_days
2946
+ # The Backup Vault Lock configuration that specifies the minimum
2947
+ # retention period that the vault retains its recovery points. This
2948
+ # setting can be useful if, for example, your organization's policies
2949
+ # require you to retain certain data for at least seven years (2555
2950
+ # days).
2951
+ #
2952
+ # If this parameter is not specified, Vault Lock will not enforce a
2953
+ # minimum retention period.
2954
+ #
2955
+ # If this parameter is specified, any backup or copy job to the vault
2956
+ # must have a lifecycle policy with a retention period equal to or
2957
+ # longer than the minimum retention period. If the job's retention
2958
+ # period is shorter than that minimum retention period, then the vault
2959
+ # fails that backup or copy job, and you should either modify your
2960
+ # lifecycle settings or use a different vault. Recovery points already
2961
+ # saved in the vault prior to Vault Lock are not affected.
2962
+ #
2963
+ # @option params [Integer] :max_retention_days
2964
+ # The Backup Vault Lock configuration that specifies the maximum
2965
+ # retention period that the vault retains its recovery points. This
2966
+ # setting can be useful if, for example, your organization's policies
2967
+ # require you to destroy certain data after retaining it for four years
2968
+ # (1460 days).
2969
+ #
2970
+ # If this parameter is not included, Vault Lock does not enforce a
2971
+ # maximum retention period on the recovery points in the vault. If this
2972
+ # parameter is included without a value, Vault Lock will not enforce a
2973
+ # maximum retention period.
2974
+ #
2975
+ # If this parameter is specified, any backup or copy job to the vault
2976
+ # must have a lifecycle policy with a retention period equal to or
2977
+ # shorter than the maximum retention period. If the job's retention
2978
+ # period is longer than that maximum retention period, then the vault
2979
+ # fails the backup or copy job, and you should either modify your
2980
+ # lifecycle settings or use a different vault. Recovery points already
2981
+ # saved in the vault prior to Vault Lock are not affected.
2982
+ #
2983
+ # @option params [Integer] :changeable_for_days
2984
+ # The Backup Vault Lock configuration that specifies the number of days
2985
+ # before the lock date. For example, setting `ChangeableForDays` to 30
2986
+ # on Jan. 1, 2022 at 8pm UTC will set the lock date to Jan. 31, 2022 at
2987
+ # 8pm UTC.
2988
+ #
2989
+ # Backup enforces a 72-hour cooling-off period before Vault Lock takes
2990
+ # effect and becomes immutable. Therefore, you must set
2991
+ # `ChangeableForDays` to 3 or greater.
2992
+ #
2993
+ # Before the lock date, you can delete Vault Lock from the vault using
2994
+ # `DeleteBackupVaultLockConfiguration` or change the Vault Lock
2995
+ # configuration using `PutBackupVaultLockConfiguration`. On and after
2996
+ # the lock date, the Vault Lock becomes immutable and cannot be changed
2997
+ # or deleted.
2998
+ #
2999
+ # If this parameter is not specified, you can delete Vault Lock from the
3000
+ # vault using `DeleteBackupVaultLockConfiguration` or change the Vault
3001
+ # Lock configuration using `PutBackupVaultLockConfiguration` at any
3002
+ # time.
3003
+ #
3004
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3005
+ #
3006
+ # @example Request syntax with placeholder values
3007
+ #
3008
+ # resp = client.put_backup_vault_lock_configuration({
3009
+ # backup_vault_name: "BackupVaultName", # required
3010
+ # min_retention_days: 1,
3011
+ # max_retention_days: 1,
3012
+ # changeable_for_days: 1,
3013
+ # })
3014
+ #
3015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfiguration AWS API Documentation
3016
+ #
3017
+ # @overload put_backup_vault_lock_configuration(params = {})
3018
+ # @param [Hash] params ({})
3019
+ def put_backup_vault_lock_configuration(params = {}, options = {})
3020
+ req = build_request(:put_backup_vault_lock_configuration, params)
3021
+ req.send_request(options)
3022
+ end
3023
+
2889
3024
  # Turns on notifications on a backup vault for the specified topic and
2890
3025
  # events.
2891
3026
  #
@@ -3722,7 +3857,7 @@ module Aws::Backup
3722
3857
  params: params,
3723
3858
  config: config)
3724
3859
  context[:gem_name] = 'aws-sdk-backup'
3725
- context[:gem_version] = '1.33.0'
3860
+ context[:gem_version] = '1.34.0'
3726
3861
  Seahorse::Client::Request.new(handlers, context)
3727
3862
  end
3728
3863
 
@@ -79,6 +79,7 @@ module Aws::Backup
79
79
  DeleteBackupSelectionInput = Shapes::StructureShape.new(name: 'DeleteBackupSelectionInput')
80
80
  DeleteBackupVaultAccessPolicyInput = Shapes::StructureShape.new(name: 'DeleteBackupVaultAccessPolicyInput')
81
81
  DeleteBackupVaultInput = Shapes::StructureShape.new(name: 'DeleteBackupVaultInput')
82
+ DeleteBackupVaultLockConfigurationInput = Shapes::StructureShape.new(name: 'DeleteBackupVaultLockConfigurationInput')
82
83
  DeleteBackupVaultNotificationsInput = Shapes::StructureShape.new(name: 'DeleteBackupVaultNotificationsInput')
83
84
  DeleteFrameworkInput = Shapes::StructureShape.new(name: 'DeleteFrameworkInput')
84
85
  DeleteRecoveryPointInput = Shapes::StructureShape.new(name: 'DeleteRecoveryPointInput')
@@ -185,6 +186,7 @@ module Aws::Backup
185
186
  ProtectedResource = Shapes::StructureShape.new(name: 'ProtectedResource')
186
187
  ProtectedResourcesList = Shapes::ListShape.new(name: 'ProtectedResourcesList')
187
188
  PutBackupVaultAccessPolicyInput = Shapes::StructureShape.new(name: 'PutBackupVaultAccessPolicyInput')
189
+ PutBackupVaultLockConfigurationInput = Shapes::StructureShape.new(name: 'PutBackupVaultLockConfigurationInput')
188
190
  PutBackupVaultNotificationsInput = Shapes::StructureShape.new(name: 'PutBackupVaultNotificationsInput')
189
191
  RecoveryPointByBackupVault = Shapes::StructureShape.new(name: 'RecoveryPointByBackupVault')
190
192
  RecoveryPointByBackupVaultList = Shapes::ListShape.new(name: 'RecoveryPointByBackupVaultList')
@@ -373,6 +375,10 @@ module Aws::Backup
373
375
  BackupVaultListMember.add_member(:encryption_key_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "EncryptionKeyArn"))
374
376
  BackupVaultListMember.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: string, location_name: "CreatorRequestId"))
375
377
  BackupVaultListMember.add_member(:number_of_recovery_points, Shapes::ShapeRef.new(shape: long, location_name: "NumberOfRecoveryPoints"))
378
+ BackupVaultListMember.add_member(:locked, Shapes::ShapeRef.new(shape: Boolean, location_name: "Locked"))
379
+ BackupVaultListMember.add_member(:min_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MinRetentionDays"))
380
+ BackupVaultListMember.add_member(:max_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MaxRetentionDays"))
381
+ BackupVaultListMember.add_member(:lock_date, Shapes::ShapeRef.new(shape: timestamp, location_name: "LockDate"))
376
382
  BackupVaultListMember.struct_class = Types::BackupVaultListMember
377
383
 
378
384
  CalculatedLifecycle.add_member(:move_to_cold_storage_at, Shapes::ShapeRef.new(shape: timestamp, location_name: "MoveToColdStorageAt"))
@@ -504,6 +510,9 @@ module Aws::Backup
504
510
  DeleteBackupVaultInput.add_member(:backup_vault_name, Shapes::ShapeRef.new(shape: string, required: true, location: "uri", location_name: "backupVaultName"))
505
511
  DeleteBackupVaultInput.struct_class = Types::DeleteBackupVaultInput
506
512
 
513
+ DeleteBackupVaultLockConfigurationInput.add_member(:backup_vault_name, Shapes::ShapeRef.new(shape: BackupVaultName, required: true, location: "uri", location_name: "backupVaultName"))
514
+ DeleteBackupVaultLockConfigurationInput.struct_class = Types::DeleteBackupVaultLockConfigurationInput
515
+
507
516
  DeleteBackupVaultNotificationsInput.add_member(:backup_vault_name, Shapes::ShapeRef.new(shape: BackupVaultName, required: true, location: "uri", location_name: "backupVaultName"))
508
517
  DeleteBackupVaultNotificationsInput.struct_class = Types::DeleteBackupVaultNotificationsInput
509
518
 
@@ -557,6 +566,10 @@ module Aws::Backup
557
566
  DescribeBackupVaultOutput.add_member(:creation_date, Shapes::ShapeRef.new(shape: timestamp, location_name: "CreationDate"))
558
567
  DescribeBackupVaultOutput.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: string, location_name: "CreatorRequestId"))
559
568
  DescribeBackupVaultOutput.add_member(:number_of_recovery_points, Shapes::ShapeRef.new(shape: long, location_name: "NumberOfRecoveryPoints"))
569
+ DescribeBackupVaultOutput.add_member(:locked, Shapes::ShapeRef.new(shape: Boolean, location_name: "Locked"))
570
+ DescribeBackupVaultOutput.add_member(:min_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MinRetentionDays"))
571
+ DescribeBackupVaultOutput.add_member(:max_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MaxRetentionDays"))
572
+ DescribeBackupVaultOutput.add_member(:lock_date, Shapes::ShapeRef.new(shape: timestamp, location_name: "LockDate"))
560
573
  DescribeBackupVaultOutput.struct_class = Types::DescribeBackupVaultOutput
561
574
 
562
575
  DescribeCopyJobInput.add_member(:copy_job_id, Shapes::ShapeRef.new(shape: string, required: true, location: "uri", location_name: "copyJobId"))
@@ -954,6 +967,12 @@ module Aws::Backup
954
967
  PutBackupVaultAccessPolicyInput.add_member(:policy, Shapes::ShapeRef.new(shape: IAMPolicy, location_name: "Policy"))
955
968
  PutBackupVaultAccessPolicyInput.struct_class = Types::PutBackupVaultAccessPolicyInput
956
969
 
970
+ PutBackupVaultLockConfigurationInput.add_member(:backup_vault_name, Shapes::ShapeRef.new(shape: BackupVaultName, required: true, location: "uri", location_name: "backupVaultName"))
971
+ PutBackupVaultLockConfigurationInput.add_member(:min_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MinRetentionDays"))
972
+ PutBackupVaultLockConfigurationInput.add_member(:max_retention_days, Shapes::ShapeRef.new(shape: Long, location_name: "MaxRetentionDays"))
973
+ PutBackupVaultLockConfigurationInput.add_member(:changeable_for_days, Shapes::ShapeRef.new(shape: Long, location_name: "ChangeableForDays"))
974
+ PutBackupVaultLockConfigurationInput.struct_class = Types::PutBackupVaultLockConfigurationInput
975
+
957
976
  PutBackupVaultNotificationsInput.add_member(:backup_vault_name, Shapes::ShapeRef.new(shape: BackupVaultName, required: true, location: "uri", location_name: "backupVaultName"))
958
977
  PutBackupVaultNotificationsInput.add_member(:sns_topic_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "SNSTopicArn"))
959
978
  PutBackupVaultNotificationsInput.add_member(:backup_vault_events, Shapes::ShapeRef.new(shape: BackupVaultEvents, required: true, location_name: "BackupVaultEvents"))
@@ -1324,6 +1343,19 @@ module Aws::Backup
1324
1343
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1325
1344
  end)
1326
1345
 
1346
+ api.add_operation(:delete_backup_vault_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
1347
+ o.name = "DeleteBackupVaultLockConfiguration"
1348
+ o.http_method = "DELETE"
1349
+ o.http_request_uri = "/backup-vaults/{backupVaultName}/vault-lock"
1350
+ o.input = Shapes::ShapeRef.new(shape: DeleteBackupVaultLockConfigurationInput)
1351
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1352
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1353
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1354
+ o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
1355
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1356
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1357
+ end)
1358
+
1327
1359
  api.add_operation(:delete_backup_vault_notifications, Seahorse::Model::Operation.new.tap do |o|
1328
1360
  o.name = "DeleteBackupVaultNotifications"
1329
1361
  o.http_method = "DELETE"
@@ -1894,6 +1926,19 @@ module Aws::Backup
1894
1926
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1895
1927
  end)
1896
1928
 
1929
+ api.add_operation(:put_backup_vault_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
1930
+ o.name = "PutBackupVaultLockConfiguration"
1931
+ o.http_method = "PUT"
1932
+ o.http_request_uri = "/backup-vaults/{backupVaultName}/vault-lock"
1933
+ o.input = Shapes::ShapeRef.new(shape: PutBackupVaultLockConfigurationInput)
1934
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1935
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1936
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1937
+ o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
1938
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1939
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1940
+ end)
1941
+
1897
1942
  api.add_operation(:put_backup_vault_notifications, Seahorse::Model::Operation.new.tap do |o|
1898
1943
  o.name = "PutBackupVaultNotifications"
1899
1944
  o.http_method = "PUT"
@@ -773,6 +773,56 @@ module Aws::Backup
773
773
  # The number of recovery points that are stored in a backup vault.
774
774
  # @return [Integer]
775
775
  #
776
+ # @!attribute [rw] locked
777
+ # A Boolean value that indicates whether Backup Vault Lock applies to
778
+ # the selected backup vault. If `true`, Vault Lock prevents delete and
779
+ # update operations on the recovery points in the selected vault.
780
+ # @return [Boolean]
781
+ #
782
+ # @!attribute [rw] min_retention_days
783
+ # The Backup Vault Lock setting that specifies the minimum retention
784
+ # period that the vault retains its recovery points. If this parameter
785
+ # is not specified, Vault Lock does not enforce a minimum retention
786
+ # period.
787
+ #
788
+ # If specified, any backup or copy job to the vault must have a
789
+ # lifecycle policy with a retention period equal to or longer than the
790
+ # minimum retention period. If the job's retention period is shorter
791
+ # than that minimum retention period, then the vault fails the backup
792
+ # or copy job, and you should either modify your lifecycle settings or
793
+ # use a different vault. Recovery points already stored in the vault
794
+ # prior to Vault Lock are not affected.
795
+ # @return [Integer]
796
+ #
797
+ # @!attribute [rw] max_retention_days
798
+ # The Backup Vault Lock setting that specifies the maximum retention
799
+ # period that the vault retains its recovery points. If this parameter
800
+ # is not specified, Vault Lock does not enforce a maximum retention
801
+ # period on the recovery points in the vault (allowing indefinite
802
+ # storage).
803
+ #
804
+ # If specified, any backup or copy job to the vault must have a
805
+ # lifecycle policy with a retention period equal to or shorter than
806
+ # the maximum retention period. If the job's retention period is
807
+ # longer than that maximum retention period, then the vault fails the
808
+ # backup or copy job, and you should either modify your lifecycle
809
+ # settings or use a different vault. Recovery points already stored in
810
+ # the vault prior to Vault Lock are not affected.
811
+ # @return [Integer]
812
+ #
813
+ # @!attribute [rw] lock_date
814
+ # The date and time when Backup Vault Lock configuration becomes
815
+ # immutable, meaning it cannot be changed or deleted.
816
+ #
817
+ # If you applied Vault Lock to your vault without specifying a lock
818
+ # date, you can change your Vault Lock settings, or delete Vault Lock
819
+ # from the vault entirely, at any time.
820
+ #
821
+ # This value is in Unix format, Coordinated Universal Time (UTC), and
822
+ # accurate to milliseconds. For example, the value 1516925490.087
823
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
824
+ # @return [Time]
825
+ #
776
826
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupVaultListMember AWS API Documentation
777
827
  #
778
828
  class BackupVaultListMember < Struct.new(
@@ -781,7 +831,11 @@ module Aws::Backup
781
831
  :creation_date,
782
832
  :encryption_key_arn,
783
833
  :creator_request_id,
784
- :number_of_recovery_points)
834
+ :number_of_recovery_points,
835
+ :locked,
836
+ :min_retention_days,
837
+ :max_retention_days,
838
+ :lock_date)
785
839
  SENSITIVE = []
786
840
  include Aws::Structure
787
841
  end
@@ -1697,6 +1751,25 @@ module Aws::Backup
1697
1751
  include Aws::Structure
1698
1752
  end
1699
1753
 
1754
+ # @note When making an API call, you may pass DeleteBackupVaultLockConfigurationInput
1755
+ # data as a hash:
1756
+ #
1757
+ # {
1758
+ # backup_vault_name: "BackupVaultName", # required
1759
+ # }
1760
+ #
1761
+ # @!attribute [rw] backup_vault_name
1762
+ # The name of the backup vault from which to delete Backup Vault Lock.
1763
+ # @return [String]
1764
+ #
1765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultLockConfigurationInput AWS API Documentation
1766
+ #
1767
+ class DeleteBackupVaultLockConfigurationInput < Struct.new(
1768
+ :backup_vault_name)
1769
+ SENSITIVE = []
1770
+ include Aws::Structure
1771
+ end
1772
+
1700
1773
  # @note When making an API call, you may pass DeleteBackupVaultNotificationsInput
1701
1774
  # data as a hash:
1702
1775
  #
@@ -2033,6 +2106,57 @@ module Aws::Backup
2033
2106
  # The number of recovery points that are stored in a backup vault.
2034
2107
  # @return [Integer]
2035
2108
  #
2109
+ # @!attribute [rw] locked
2110
+ # A Boolean that indicates whether Backup Vault Lock is currently
2111
+ # protecting the backup vault. `True` means that Vault Lock causes
2112
+ # delete or update operations on the recovery points stored in the
2113
+ # vault to fail.
2114
+ # @return [Boolean]
2115
+ #
2116
+ # @!attribute [rw] min_retention_days
2117
+ # The Backup Vault Lock setting that specifies the minimum retention
2118
+ # period that the vault retains its recovery points. If this parameter
2119
+ # is not specified, Vault Lock does not enforce a minimum retention
2120
+ # period.
2121
+ #
2122
+ # If specified, any backup or copy job to the vault must have a
2123
+ # lifecycle policy with a retention period equal to or longer than the
2124
+ # minimum retention period. If the job's retention period is shorter
2125
+ # than that minimum retention period, then the vault fails the backup
2126
+ # or copy job, and you should either modify your lifecycle settings or
2127
+ # use a different vault. Recovery points already stored in the vault
2128
+ # prior to Vault Lock are not affected.
2129
+ # @return [Integer]
2130
+ #
2131
+ # @!attribute [rw] max_retention_days
2132
+ # The Backup Vault Lock setting that specifies the maximum retention
2133
+ # period that the vault retains its recovery points. If this parameter
2134
+ # is not specified, Vault Lock does not enforce a maximum retention
2135
+ # period on the recovery points in the vault (allowing indefinite
2136
+ # storage).
2137
+ #
2138
+ # If specified, any backup or copy job to the vault must have a
2139
+ # lifecycle policy with a retention period equal to or shorter than
2140
+ # the maximum retention period. If the job's retention period is
2141
+ # longer than that maximum retention period, then the vault fails the
2142
+ # backup or copy job, and you should either modify your lifecycle
2143
+ # settings or use a different vault. Recovery points already stored in
2144
+ # the vault prior to Vault Lock are not affected.
2145
+ # @return [Integer]
2146
+ #
2147
+ # @!attribute [rw] lock_date
2148
+ # The date and time when Backup Vault Lock configuration cannot be
2149
+ # changed or deleted.
2150
+ #
2151
+ # If you applied Vault Lock to your vault without specifying a lock
2152
+ # date, you can change any of your Vault Lock settings, or delete
2153
+ # Vault Lock from the vault entirely, at any time.
2154
+ #
2155
+ # This value is in Unix format, Coordinated Universal Time (UTC), and
2156
+ # accurate to milliseconds. For example, the value 1516925490.087
2157
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2158
+ # @return [Time]
2159
+ #
2036
2160
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultOutput AWS API Documentation
2037
2161
  #
2038
2162
  class DescribeBackupVaultOutput < Struct.new(
@@ -2041,7 +2165,11 @@ module Aws::Backup
2041
2165
  :encryption_key_arn,
2042
2166
  :creation_date,
2043
2167
  :creator_request_id,
2044
- :number_of_recovery_points)
2168
+ :number_of_recovery_points,
2169
+ :locked,
2170
+ :min_retention_days,
2171
+ :max_retention_days,
2172
+ :lock_date)
2045
2173
  SENSITIVE = []
2046
2174
  include Aws::Structure
2047
2175
  end
@@ -4453,6 +4581,94 @@ module Aws::Backup
4453
4581
  include Aws::Structure
4454
4582
  end
4455
4583
 
4584
+ # @note When making an API call, you may pass PutBackupVaultLockConfigurationInput
4585
+ # data as a hash:
4586
+ #
4587
+ # {
4588
+ # backup_vault_name: "BackupVaultName", # required
4589
+ # min_retention_days: 1,
4590
+ # max_retention_days: 1,
4591
+ # changeable_for_days: 1,
4592
+ # }
4593
+ #
4594
+ # @!attribute [rw] backup_vault_name
4595
+ # The Backup Vault Lock configuration that specifies the name of the
4596
+ # backup vault it protects.
4597
+ # @return [String]
4598
+ #
4599
+ # @!attribute [rw] min_retention_days
4600
+ # The Backup Vault Lock configuration that specifies the minimum
4601
+ # retention period that the vault retains its recovery points. This
4602
+ # setting can be useful if, for example, your organization's policies
4603
+ # require you to retain certain data for at least seven years (2555
4604
+ # days).
4605
+ #
4606
+ # If this parameter is not specified, Vault Lock will not enforce a
4607
+ # minimum retention period.
4608
+ #
4609
+ # If this parameter is specified, any backup or copy job to the vault
4610
+ # must have a lifecycle policy with a retention period equal to or
4611
+ # longer than the minimum retention period. If the job's retention
4612
+ # period is shorter than that minimum retention period, then the vault
4613
+ # fails that backup or copy job, and you should either modify your
4614
+ # lifecycle settings or use a different vault. Recovery points already
4615
+ # saved in the vault prior to Vault Lock are not affected.
4616
+ # @return [Integer]
4617
+ #
4618
+ # @!attribute [rw] max_retention_days
4619
+ # The Backup Vault Lock configuration that specifies the maximum
4620
+ # retention period that the vault retains its recovery points. This
4621
+ # setting can be useful if, for example, your organization's policies
4622
+ # require you to destroy certain data after retaining it for four
4623
+ # years (1460 days).
4624
+ #
4625
+ # If this parameter is not included, Vault Lock does not enforce a
4626
+ # maximum retention period on the recovery points in the vault. If
4627
+ # this parameter is included without a value, Vault Lock will not
4628
+ # enforce a maximum retention period.
4629
+ #
4630
+ # If this parameter is specified, any backup or copy job to the vault
4631
+ # must have a lifecycle policy with a retention period equal to or
4632
+ # shorter than the maximum retention period. If the job's retention
4633
+ # period is longer than that maximum retention period, then the vault
4634
+ # fails the backup or copy job, and you should either modify your
4635
+ # lifecycle settings or use a different vault. Recovery points already
4636
+ # saved in the vault prior to Vault Lock are not affected.
4637
+ # @return [Integer]
4638
+ #
4639
+ # @!attribute [rw] changeable_for_days
4640
+ # The Backup Vault Lock configuration that specifies the number of
4641
+ # days before the lock date. For example, setting `ChangeableForDays`
4642
+ # to 30 on Jan. 1, 2022 at 8pm UTC will set the lock date to Jan. 31,
4643
+ # 2022 at 8pm UTC.
4644
+ #
4645
+ # Backup enforces a 72-hour cooling-off period before Vault Lock takes
4646
+ # effect and becomes immutable. Therefore, you must set
4647
+ # `ChangeableForDays` to 3 or greater.
4648
+ #
4649
+ # Before the lock date, you can delete Vault Lock from the vault using
4650
+ # `DeleteBackupVaultLockConfiguration` or change the Vault Lock
4651
+ # configuration using `PutBackupVaultLockConfiguration`. On and after
4652
+ # the lock date, the Vault Lock becomes immutable and cannot be
4653
+ # changed or deleted.
4654
+ #
4655
+ # If this parameter is not specified, you can delete Vault Lock from
4656
+ # the vault using `DeleteBackupVaultLockConfiguration` or change the
4657
+ # Vault Lock configuration using `PutBackupVaultLockConfiguration` at
4658
+ # any time.
4659
+ # @return [Integer]
4660
+ #
4661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfigurationInput AWS API Documentation
4662
+ #
4663
+ class PutBackupVaultLockConfigurationInput < Struct.new(
4664
+ :backup_vault_name,
4665
+ :min_retention_days,
4666
+ :max_retention_days,
4667
+ :changeable_for_days)
4668
+ SENSITIVE = []
4669
+ include Aws::Structure
4670
+ end
4671
+
4456
4672
  # @note When making an API call, you may pass PutBackupVaultNotificationsInput
4457
4673
  # data as a hash:
4458
4674
  #
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-backup/customizations'
48
48
  # @!group service
49
49
  module Aws::Backup
50
50
 
51
- GEM_VERSION = '1.33.0'
51
+ GEM_VERSION = '1.34.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-backup
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.33.0
4
+ version: 1.34.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: 2021-10-05 00:00:00.000000000 Z
11
+ date: 2021-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core