aws-sdk-s3control 1.117.0 → 1.118.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cc21d4df1f2a21ecd7727edbe79f833d2af50e5bd2ac839d3599f381f4448fde
4
- data.tar.gz: 9cdc3913c3f465d618303f88731198540806709d52ab5cbd7ae2ba70d12f37f8
3
+ metadata.gz: dfcbb1c9d169ef63f638ea6a3ce1c8c7ec98e629c968437ce0f5a0113bc7dce4
4
+ data.tar.gz: d58fd0d62d54e297832c0b1c2d896bf4634c2331a8362bf54b4c37b551a38ed2
5
5
  SHA512:
6
- metadata.gz: 02a4e39ffe82536d5a04b8dd49f674139c4f86dd32e06a0363c12b54623ef109b972a83e916d0b73cc5035bd31b71b4fe1189ca0d1208730e83f814bcb515a7e
7
- data.tar.gz: 1ccdfa9fc1c69afbdf76f166d6d7f92e9412cd1f2a8f8faeba45f3129343b570725266b07207261c10ef60358aff6712092028765ea4a420c73567fe08a64d9b
6
+ metadata.gz: 0232f31f238a6e9ff83996bdcb39650492271bfbae3f984cf2ff6fd8daf4a6d0199b531f807da893ee85b9d392c0a2ad8e4f4b7101b42682113f2382b9e4cdb4
7
+ data.tar.gz: f9f36f951a91d08e201049bcfccecd60088f6cb848f82e06da99e5f094da2646137b737169e12e578cdbfd1dfb6d78e9954c899334b6af29ffc15262b8246031
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.118.0 (2025-09-15)
5
+ ------------------
6
+
7
+ * Feature - Introduce three new encryption filters: EncryptionType (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C, NOT-SSE), KmsKeyArn (for SSE-KMS and DSSE-KMS), and BucketKeyEnabled (for SSE-KMS).
8
+
4
9
  1.117.0 (2025-08-26)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.117.0
1
+ 1.118.0
@@ -1570,6 +1570,23 @@ module Aws::S3Control
1570
1570
  # object_size_greater_than_bytes: 1,
1571
1571
  # object_size_less_than_bytes: 1,
1572
1572
  # match_any_storage_class: ["STANDARD"], # accepts STANDARD, STANDARD_IA, ONEZONE_IA, GLACIER, INTELLIGENT_TIERING, DEEP_ARCHIVE, GLACIER_IR
1573
+ # match_any_object_encryption: [
1574
+ # {
1575
+ # sses3: {
1576
+ # },
1577
+ # ssekms: {
1578
+ # kms_key_arn: "NonEmptyKmsKeyArnString",
1579
+ # bucket_key_enabled: false,
1580
+ # },
1581
+ # dssekms: {
1582
+ # kms_key_arn: "NonEmptyKmsKeyArnString",
1583
+ # },
1584
+ # ssec: {
1585
+ # },
1586
+ # notsse: {
1587
+ # },
1588
+ # },
1589
+ # ],
1573
1590
  # },
1574
1591
  # enable_manifest_output: false, # required
1575
1592
  # },
@@ -3154,6 +3171,10 @@ module Aws::S3Control
3154
3171
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.object_size_less_than_bytes #=> Integer
3155
3172
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_storage_class #=> Array
3156
3173
  # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_storage_class[0] #=> String, one of "STANDARD", "STANDARD_IA", "ONEZONE_IA", "GLACIER", "INTELLIGENT_TIERING", "DEEP_ARCHIVE", "GLACIER_IR"
3174
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_object_encryption #=> Array
3175
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_object_encryption[0].ssekms.kms_key_arn #=> String
3176
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_object_encryption[0].ssekms.bucket_key_enabled #=> Boolean
3177
+ # resp.job.manifest_generator.s3_job_manifest_generator.filter.match_any_object_encryption[0].dssekms.kms_key_arn #=> String
3157
3178
  # resp.job.manifest_generator.s3_job_manifest_generator.enable_manifest_output #=> Boolean
3158
3179
  # resp.job.generated_manifest_descriptor.format #=> String, one of "S3InventoryReport_CSV_20211130"
3159
3180
  # resp.job.generated_manifest_descriptor.location.object_arn #=> String
@@ -8489,7 +8510,7 @@ module Aws::S3Control
8489
8510
  tracer: tracer
8490
8511
  )
8491
8512
  context[:gem_name] = 'aws-sdk-s3control'
8492
- context[:gem_version] = '1.117.0'
8513
+ context[:gem_version] = '1.118.0'
8493
8514
  Seahorse::Client::Request.new(handlers, context)
8494
8515
  end
8495
8516
 
@@ -90,6 +90,7 @@ module Aws::S3Control
90
90
  CreationDate = Shapes::TimestampShape.new(name: 'CreationDate')
91
91
  CreationTimestamp = Shapes::TimestampShape.new(name: 'CreationTimestamp')
92
92
  Credentials = Shapes::StructureShape.new(name: 'Credentials')
93
+ DSSEKMSFilter = Shapes::StructureShape.new(name: 'DSSEKMSFilter')
93
94
  DataSourceId = Shapes::StringShape.new(name: 'DataSourceId')
94
95
  DataSourceType = Shapes::StringShape.new(name: 'DataSourceType')
95
96
  Date = Shapes::TimestampShape.new(name: 'Date')
@@ -326,6 +327,7 @@ module Aws::S3Control
326
327
  NetworkOrigin = Shapes::StringShape.new(name: 'NetworkOrigin')
327
328
  NoSuchPublicAccessBlockConfiguration = Shapes::StructureShape.new(name: 'NoSuchPublicAccessBlockConfiguration')
328
329
  NoSuchPublicAccessBlockConfigurationMessage = Shapes::StringShape.new(name: 'NoSuchPublicAccessBlockConfigurationMessage')
330
+ NonEmptyKmsKeyArnString = Shapes::StringShape.new(name: 'NonEmptyKmsKeyArnString')
329
331
  NonEmptyMaxLength1024String = Shapes::StringShape.new(name: 'NonEmptyMaxLength1024String')
330
332
  NonEmptyMaxLength1024StringList = Shapes::ListShape.new(name: 'NonEmptyMaxLength1024StringList')
331
333
  NonEmptyMaxLength2048String = Shapes::StringShape.new(name: 'NonEmptyMaxLength2048String')
@@ -336,8 +338,11 @@ module Aws::S3Control
336
338
  NoncurrentVersionTransition = Shapes::StructureShape.new(name: 'NoncurrentVersionTransition')
337
339
  NoncurrentVersionTransitionList = Shapes::ListShape.new(name: 'NoncurrentVersionTransitionList')
338
340
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
341
+ NotSSEFilter = Shapes::StructureShape.new(name: 'NotSSEFilter')
339
342
  ObjectAgeValue = Shapes::IntegerShape.new(name: 'ObjectAgeValue')
340
343
  ObjectCreationTime = Shapes::TimestampShape.new(name: 'ObjectCreationTime')
344
+ ObjectEncryptionFilter = Shapes::UnionShape.new(name: 'ObjectEncryptionFilter')
345
+ ObjectEncryptionFilterList = Shapes::ListShape.new(name: 'ObjectEncryptionFilterList')
341
346
  ObjectLambdaAccessPoint = Shapes::StructureShape.new(name: 'ObjectLambdaAccessPoint')
342
347
  ObjectLambdaAccessPointAlias = Shapes::StructureShape.new(name: 'ObjectLambdaAccessPointAlias')
343
348
  ObjectLambdaAccessPointAliasStatus = Shapes::StringShape.new(name: 'ObjectLambdaAccessPointAliasStatus')
@@ -471,11 +476,14 @@ module Aws::S3Control
471
476
  S3Tag = Shapes::StructureShape.new(name: 'S3Tag')
472
477
  S3TagSet = Shapes::ListShape.new(name: 'S3TagSet')
473
478
  S3UserMetadata = Shapes::MapShape.new(name: 'S3UserMetadata')
479
+ SSECFilter = Shapes::StructureShape.new(name: 'SSECFilter')
474
480
  SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS', locationName: "SSE-KMS")
475
481
  SSEKMSEncryption = Shapes::StructureShape.new(name: 'SSEKMSEncryption', locationName: "SSE-KMS")
482
+ SSEKMSFilter = Shapes::StructureShape.new(name: 'SSEKMSFilter')
476
483
  SSEKMSKeyId = Shapes::StringShape.new(name: 'SSEKMSKeyId')
477
484
  SSES3 = Shapes::StructureShape.new(name: 'SSES3', locationName: "SSE-S3")
478
485
  SSES3Encryption = Shapes::StructureShape.new(name: 'SSES3Encryption', locationName: "SSE-S3")
486
+ SSES3Filter = Shapes::StructureShape.new(name: 'SSES3Filter')
479
487
  Scope = Shapes::StructureShape.new(name: 'Scope')
480
488
  ScopePermission = Shapes::StringShape.new(name: 'ScopePermission')
481
489
  ScopePermissionList = Shapes::ListShape.new(name: 'ScopePermissionList')
@@ -771,6 +779,9 @@ module Aws::S3Control
771
779
  Credentials.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location_name: "Expiration"))
772
780
  Credentials.struct_class = Types::Credentials
773
781
 
782
+ DSSEKMSFilter.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: NonEmptyKmsKeyArnString, location_name: "KmsKeyArn", metadata: {"box" => true}))
783
+ DSSEKMSFilter.struct_class = Types::DSSEKMSFilter
784
+
774
785
  DeleteAccessGrantRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-account-id", metadata: {"contextParam" => {"name" => "AccountId"}}))
775
786
  DeleteAccessGrantRequest.add_member(:access_grant_id, Shapes::ShapeRef.new(shape: AccessGrantId, required: true, location: "uri", location_name: "id"))
776
787
  DeleteAccessGrantRequest.struct_class = Types::DeleteAccessGrantRequest
@@ -1240,6 +1251,7 @@ module Aws::S3Control
1240
1251
  JobManifestGeneratorFilter.add_member(:object_size_greater_than_bytes, Shapes::ShapeRef.new(shape: ObjectSizeGreaterThanBytes, location_name: "ObjectSizeGreaterThanBytes", metadata: {"box" => true}))
1241
1252
  JobManifestGeneratorFilter.add_member(:object_size_less_than_bytes, Shapes::ShapeRef.new(shape: ObjectSizeLessThanBytes, location_name: "ObjectSizeLessThanBytes", metadata: {"box" => true}))
1242
1253
  JobManifestGeneratorFilter.add_member(:match_any_storage_class, Shapes::ShapeRef.new(shape: StorageClassList, location_name: "MatchAnyStorageClass"))
1254
+ JobManifestGeneratorFilter.add_member(:match_any_object_encryption, Shapes::ShapeRef.new(shape: ObjectEncryptionFilterList, location_name: "MatchAnyObjectEncryption"))
1243
1255
  JobManifestGeneratorFilter.struct_class = Types::JobManifestGeneratorFilter
1244
1256
 
1245
1257
  JobManifestLocation.add_member(:object_arn, Shapes::ShapeRef.new(shape: S3KeyArnString, required: true, location_name: "ObjectArn"))
@@ -1561,6 +1573,24 @@ module Aws::S3Control
1561
1573
  NotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
1562
1574
  NotFoundException.struct_class = Types::NotFoundException
1563
1575
 
1576
+ NotSSEFilter.struct_class = Types::NotSSEFilter
1577
+
1578
+ ObjectEncryptionFilter.add_member(:sses3, Shapes::ShapeRef.new(shape: SSES3Filter, location_name: "SSE-S3"))
1579
+ ObjectEncryptionFilter.add_member(:ssekms, Shapes::ShapeRef.new(shape: SSEKMSFilter, location_name: "SSE-KMS"))
1580
+ ObjectEncryptionFilter.add_member(:dssekms, Shapes::ShapeRef.new(shape: DSSEKMSFilter, location_name: "DSSE-KMS"))
1581
+ ObjectEncryptionFilter.add_member(:ssec, Shapes::ShapeRef.new(shape: SSECFilter, location_name: "SSE-C"))
1582
+ ObjectEncryptionFilter.add_member(:notsse, Shapes::ShapeRef.new(shape: NotSSEFilter, location_name: "NOT-SSE"))
1583
+ ObjectEncryptionFilter.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
1584
+ ObjectEncryptionFilter.add_member_subclass(:sses3, Types::ObjectEncryptionFilter::Sses3)
1585
+ ObjectEncryptionFilter.add_member_subclass(:ssekms, Types::ObjectEncryptionFilter::Ssekms)
1586
+ ObjectEncryptionFilter.add_member_subclass(:dssekms, Types::ObjectEncryptionFilter::Dssekms)
1587
+ ObjectEncryptionFilter.add_member_subclass(:ssec, Types::ObjectEncryptionFilter::Ssec)
1588
+ ObjectEncryptionFilter.add_member_subclass(:notsse, Types::ObjectEncryptionFilter::Notsse)
1589
+ ObjectEncryptionFilter.add_member_subclass(:unknown, Types::ObjectEncryptionFilter::Unknown)
1590
+ ObjectEncryptionFilter.struct_class = Types::ObjectEncryptionFilter
1591
+
1592
+ ObjectEncryptionFilterList.member = Shapes::ShapeRef.new(shape: ObjectEncryptionFilter, location_name: "ObjectEncryption")
1593
+
1564
1594
  ObjectLambdaAccessPoint.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location_name: "Name"))
1565
1595
  ObjectLambdaAccessPoint.add_member(:object_lambda_access_point_arn, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointArn, location_name: "ObjectLambdaAccessPointArn"))
1566
1596
  ObjectLambdaAccessPoint.add_member(:alias, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointAlias, location_name: "Alias"))
@@ -1906,16 +1936,24 @@ module Aws::S3Control
1906
1936
  S3UserMetadata.key = Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String)
1907
1937
  S3UserMetadata.value = Shapes::ShapeRef.new(shape: MaxLength1024String)
1908
1938
 
1939
+ SSECFilter.struct_class = Types::SSECFilter
1940
+
1909
1941
  SSEKMS.add_member(:key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, required: true, location_name: "KeyId"))
1910
1942
  SSEKMS.struct_class = Types::SSEKMS
1911
1943
 
1912
1944
  SSEKMSEncryption.add_member(:key_id, Shapes::ShapeRef.new(shape: KmsKeyArnString, required: true, location_name: "KeyId"))
1913
1945
  SSEKMSEncryption.struct_class = Types::SSEKMSEncryption
1914
1946
 
1947
+ SSEKMSFilter.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: NonEmptyKmsKeyArnString, location_name: "KmsKeyArn", metadata: {"box" => true}))
1948
+ SSEKMSFilter.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "BucketKeyEnabled", metadata: {"box" => true}))
1949
+ SSEKMSFilter.struct_class = Types::SSEKMSFilter
1950
+
1915
1951
  SSES3.struct_class = Types::SSES3
1916
1952
 
1917
1953
  SSES3Encryption.struct_class = Types::SSES3Encryption
1918
1954
 
1955
+ SSES3Filter.struct_class = Types::SSES3Filter
1956
+
1919
1957
  Scope.add_member(:prefixes, Shapes::ShapeRef.new(shape: PrefixesList, location_name: "Prefixes"))
1920
1958
  Scope.add_member(:permissions, Shapes::ShapeRef.new(shape: ScopePermissionList, location_name: "Permissions"))
1921
1959
  Scope.struct_class = Types::Scope
@@ -1462,6 +1462,39 @@ module Aws::S3Control
1462
1462
  include Aws::Structure
1463
1463
  end
1464
1464
 
1465
+ # A filter that returns objects that are encrypted by dual-layer
1466
+ # server-side encryption with Amazon Web Services Key Management Service
1467
+ # (KMS) keys (DSSE-KMS). You can further refine your filtering by
1468
+ # optionally providing a KMS Key ARN to create an object list of
1469
+ # DSSE-KMS objects with that specific KMS Key ARN.
1470
+ #
1471
+ # @!attribute [rw] kms_key_arn
1472
+ # The Amazon Resource Name (ARN) of the customer managed KMS key to
1473
+ # use for the filter to return objects that are encrypted by the
1474
+ # specified key. For best performance, we recommend using the
1475
+ # `KMSKeyArn` filter in conjunction with other object metadata
1476
+ # filters, like `MatchAnyPrefix`, `CreatedAfter`, or
1477
+ # `MatchAnyStorageClass`.
1478
+ #
1479
+ # <note markdown="1"> You must provide the full KMS Key ARN. You can't use an alias name
1480
+ # or alias ARN. For more information, see [ KMS keys][1] in the
1481
+ # *Amazon Web Services Key Management Service Developer Guide*.
1482
+ #
1483
+ # </note>
1484
+ #
1485
+ #
1486
+ #
1487
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN
1488
+ # @return [String]
1489
+ #
1490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DSSEKMSFilter AWS API Documentation
1491
+ #
1492
+ class DSSEKMSFilter < Struct.new(
1493
+ :kms_key_arn)
1494
+ SENSITIVE = []
1495
+ include Aws::Structure
1496
+ end
1497
+
1465
1498
  # @!attribute [rw] account_id
1466
1499
  # The Amazon Web Services account ID of the S3 Access Grants instance.
1467
1500
  # @return [String]
@@ -3998,6 +4031,16 @@ module Aws::S3Control
3998
4031
  # objects that are stored with the specified storage class.
3999
4032
  # @return [Array<String>]
4000
4033
  #
4034
+ # @!attribute [rw] match_any_object_encryption
4035
+ # If provided, the generated object list includes only source bucket
4036
+ # objects with the indicated server-side encryption type (SSE-S3,
4037
+ # SSE-KMS, DSSE-KMS, SSE-C, or NOT-SSE). If you select SSE-KMS or
4038
+ # DSSE-KMS, you can optionally further filter your results by
4039
+ # specifying a specific KMS Key ARN. If you select SSE-KMS, you can
4040
+ # also optionally further filter your results by Bucket Key enabled
4041
+ # status.
4042
+ # @return [Array<Types::ObjectEncryptionFilter>]
4043
+ #
4001
4044
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/JobManifestGeneratorFilter AWS API Documentation
4002
4045
  #
4003
4046
  class JobManifestGeneratorFilter < Struct.new(
@@ -4008,7 +4051,8 @@ module Aws::S3Control
4008
4051
  :key_name_constraint,
4009
4052
  :object_size_greater_than_bytes,
4010
4053
  :object_size_less_than_bytes,
4011
- :match_any_storage_class)
4054
+ :match_any_storage_class,
4055
+ :match_any_object_encryption)
4012
4056
  SENSITIVE = []
4013
4057
  include Aws::Structure
4014
4058
  end
@@ -4469,7 +4513,7 @@ module Aws::S3Control
4469
4513
  #
4470
4514
  # @!attribute [rw] noncurrent_version_transitions
4471
4515
  # Specifies the transition rule for the lifecycle rule that describes
4472
- # when noncurrent objects transition to a specific storage class. If
4516
+ # when non-current objects transition to a specific storage class. If
4473
4517
  # your bucket is versioning-enabled (or versioning is suspended), you
4474
4518
  # can set this action to request that Amazon S3 transition noncurrent
4475
4519
  # object versions to a specific storage class at a set period in the
@@ -5924,6 +5968,72 @@ module Aws::S3Control
5924
5968
  include Aws::Structure
5925
5969
  end
5926
5970
 
5971
+ # A filter that returns objects that aren't server-side encrypted.
5972
+ #
5973
+ # @api private
5974
+ #
5975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/NotSSEFilter AWS API Documentation
5976
+ #
5977
+ class NotSSEFilter < Aws::EmptyStructure; end
5978
+
5979
+ # An optional filter for the `S3JobManifestGenerator` that identifies
5980
+ # the subset of objects by encryption type. This filter is used to
5981
+ # create an object list for S3 Batch Operations jobs. If provided, this
5982
+ # filter will generate an object list that only includes objects with
5983
+ # the specified encryption type.
5984
+ #
5985
+ # @note ObjectEncryptionFilter is a union - when making an API calls you must set exactly one of the members.
5986
+ #
5987
+ # @note ObjectEncryptionFilter is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ObjectEncryptionFilter corresponding to the set member.
5988
+ #
5989
+ # @!attribute [rw] sses3
5990
+ # Filters for objects that are encrypted by server-side encryption
5991
+ # with Amazon S3 managed keys (SSE-S3).
5992
+ # @return [Types::SSES3Filter]
5993
+ #
5994
+ # @!attribute [rw] ssekms
5995
+ # Filters for objects that are encrypted by server-side encryption
5996
+ # with Amazon Web Services Key Management Service (KMS) keys
5997
+ # (SSE-KMS).
5998
+ # @return [Types::SSEKMSFilter]
5999
+ #
6000
+ # @!attribute [rw] dssekms
6001
+ # Filters for objects that are encrypted by dual-layer server-side
6002
+ # encryption with Amazon Web Services Key Management Service (KMS)
6003
+ # keys (DSSE-KMS).
6004
+ # @return [Types::DSSEKMSFilter]
6005
+ #
6006
+ # @!attribute [rw] ssec
6007
+ # Filters for objects that are encrypted by server-side encryption
6008
+ # with customer-provided keys (SSE-C).
6009
+ # @return [Types::SSECFilter]
6010
+ #
6011
+ # @!attribute [rw] notsse
6012
+ # Filters for objects that are not encrypted by server-side
6013
+ # encryption.
6014
+ # @return [Types::NotSSEFilter]
6015
+ #
6016
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ObjectEncryptionFilter AWS API Documentation
6017
+ #
6018
+ class ObjectEncryptionFilter < Struct.new(
6019
+ :sses3,
6020
+ :ssekms,
6021
+ :dssekms,
6022
+ :ssec,
6023
+ :notsse,
6024
+ :unknown)
6025
+ SENSITIVE = []
6026
+ include Aws::Structure
6027
+ include Aws::Structure::Union
6028
+
6029
+ class Sses3 < ObjectEncryptionFilter; end
6030
+ class Ssekms < ObjectEncryptionFilter; end
6031
+ class Dssekms < ObjectEncryptionFilter; end
6032
+ class Ssec < ObjectEncryptionFilter; end
6033
+ class Notsse < ObjectEncryptionFilter; end
6034
+ class Unknown < ObjectEncryptionFilter; end
6035
+ end
6036
+
5927
6037
  # An access point with an attached Lambda function used to access
5928
6038
  # transformed data from an Amazon S3 bucket.
5929
6039
  #
@@ -7900,6 +8010,15 @@ module Aws::S3Control
7900
8010
  include Aws::Structure
7901
8011
  end
7902
8012
 
8013
+ # A filter that returns objects that are encrypted by server-side
8014
+ # encryption with customer-provided keys (SSE-C).
8015
+ #
8016
+ # @api private
8017
+ #
8018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSECFilter AWS API Documentation
8019
+ #
8020
+ class SSECFilter < Aws::EmptyStructure; end
8021
+
7903
8022
  # @!attribute [rw] key_id
7904
8023
  # A container for the ARN of the SSE-KMS encryption. This property is
7905
8024
  # read-only and follows the following format: `
@@ -7932,6 +8051,50 @@ module Aws::S3Control
7932
8051
  include Aws::Structure
7933
8052
  end
7934
8053
 
8054
+ # A filter that returns objects that are encrypted by server-side
8055
+ # encryption with Amazon Web Services KMS (SSE-KMS).
8056
+ #
8057
+ # @!attribute [rw] kms_key_arn
8058
+ # The Amazon Resource Name (ARN) of the customer managed KMS key to
8059
+ # use for the filter to return objects that are encrypted by the
8060
+ # specified key. For best performance, we recommend using the
8061
+ # `KMSKeyArn` filter in conjunction with other object metadata
8062
+ # filters, like `MatchAnyPrefix`, `CreatedAfter`, or
8063
+ # `MatchAnyStorageClass`.
8064
+ #
8065
+ # <note markdown="1"> You must provide the full KMS Key ARN. You can't use an alias name
8066
+ # or alias ARN. For more information, see [ KMS keys][1] in the
8067
+ # *Amazon Web Services Key Management Service Developer Guide*.
8068
+ #
8069
+ # </note>
8070
+ #
8071
+ #
8072
+ #
8073
+ # [1]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN
8074
+ # @return [String]
8075
+ #
8076
+ # @!attribute [rw] bucket_key_enabled
8077
+ # Specifies whether Amazon S3 should use an S3 Bucket Key for object
8078
+ # encryption with server-side encryption using Amazon Web Services Key
8079
+ # Management Service (Amazon Web Services KMS) keys (SSE-KMS). If
8080
+ # specified, will filter SSE-KMS encrypted objects by S3 Bucket Key
8081
+ # status. For more information, see [Reducing the cost of SSE-KMS with
8082
+ # Amazon S3 Bucket Keys][1] in the *Amazon S3 User Guide*.
8083
+ #
8084
+ #
8085
+ #
8086
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html
8087
+ # @return [Boolean]
8088
+ #
8089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSEKMSFilter AWS API Documentation
8090
+ #
8091
+ class SSEKMSFilter < Struct.new(
8092
+ :kms_key_arn,
8093
+ :bucket_key_enabled)
8094
+ SENSITIVE = []
8095
+ include Aws::Structure
8096
+ end
8097
+
7935
8098
  # @api private
7936
8099
  #
7937
8100
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSES3 AWS API Documentation
@@ -7947,6 +8110,15 @@ module Aws::S3Control
7947
8110
  #
7948
8111
  class SSES3Encryption < Aws::EmptyStructure; end
7949
8112
 
8113
+ # A filter that returns objects that are encrypted by server-side
8114
+ # encryption with Amazon S3 managed keys (SSE-S3).
8115
+ #
8116
+ # @api private
8117
+ #
8118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/SSES3Filter AWS API Documentation
8119
+ #
8120
+ class SSES3Filter < Aws::EmptyStructure; end
8121
+
7950
8122
  # You can use the access point scope to restrict access to specific
7951
8123
  # prefixes, API operations, or a combination of both.
7952
8124
  #
@@ -54,7 +54,7 @@ module Aws::S3Control
54
54
  autoload :EndpointProvider, 'aws-sdk-s3control/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-s3control/endpoints'
56
56
 
57
- GEM_VERSION = '1.117.0'
57
+ GEM_VERSION = '1.118.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -420,7 +420,24 @@ module Aws
420
420
  }?,
421
421
  object_size_greater_than_bytes: ::Integer?,
422
422
  object_size_less_than_bytes: ::Integer?,
423
- match_any_storage_class: Array[("STANDARD" | "STANDARD_IA" | "ONEZONE_IA" | "GLACIER" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")]?
423
+ match_any_storage_class: Array[("STANDARD" | "STANDARD_IA" | "ONEZONE_IA" | "GLACIER" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")]?,
424
+ match_any_object_encryption: Array[
425
+ {
426
+ sses3: {
427
+ }?,
428
+ ssekms: {
429
+ kms_key_arn: ::String?,
430
+ bucket_key_enabled: bool?
431
+ }?,
432
+ dssekms: {
433
+ kms_key_arn: ::String?
434
+ }?,
435
+ ssec: {
436
+ }?,
437
+ notsse: {
438
+ }?
439
+ },
440
+ ]?
424
441
  }?,
425
442
  enable_manifest_output: bool
426
443
  }?
data/sig/types.rbs CHANGED
@@ -298,6 +298,11 @@ module Aws::S3Control
298
298
  SENSITIVE: [:access_key_id, :secret_access_key, :session_token]
299
299
  end
300
300
 
301
+ class DSSEKMSFilter
302
+ attr_accessor kms_key_arn: ::String
303
+ SENSITIVE: []
304
+ end
305
+
301
306
  class DeleteAccessGrantRequest
302
307
  attr_accessor account_id: ::String
303
308
  attr_accessor access_grant_id: ::String
@@ -966,6 +971,7 @@ module Aws::S3Control
966
971
  attr_accessor object_size_greater_than_bytes: ::Integer
967
972
  attr_accessor object_size_less_than_bytes: ::Integer
968
973
  attr_accessor match_any_storage_class: ::Array[("STANDARD" | "STANDARD_IA" | "ONEZONE_IA" | "GLACIER" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")]
974
+ attr_accessor match_any_object_encryption: ::Array[Types::ObjectEncryptionFilter]
969
975
  SENSITIVE: []
970
976
  end
971
977
 
@@ -1386,6 +1392,32 @@ module Aws::S3Control
1386
1392
  SENSITIVE: []
1387
1393
  end
1388
1394
 
1395
+ class NotSSEFilter < Aws::EmptyStructure
1396
+ end
1397
+
1398
+ class ObjectEncryptionFilter
1399
+ attr_accessor sses3: Types::SSES3Filter
1400
+ attr_accessor ssekms: Types::SSEKMSFilter
1401
+ attr_accessor dssekms: Types::DSSEKMSFilter
1402
+ attr_accessor ssec: Types::SSECFilter
1403
+ attr_accessor notsse: Types::NotSSEFilter
1404
+ attr_accessor unknown: untyped
1405
+ SENSITIVE: []
1406
+
1407
+ class Sses3 < ObjectEncryptionFilter
1408
+ end
1409
+ class Ssekms < ObjectEncryptionFilter
1410
+ end
1411
+ class Dssekms < ObjectEncryptionFilter
1412
+ end
1413
+ class Ssec < ObjectEncryptionFilter
1414
+ end
1415
+ class Notsse < ObjectEncryptionFilter
1416
+ end
1417
+ class Unknown < ObjectEncryptionFilter
1418
+ end
1419
+ end
1420
+
1389
1421
  class ObjectLambdaAccessPoint
1390
1422
  attr_accessor name: ::String
1391
1423
  attr_accessor object_lambda_access_point_arn: ::String
@@ -1813,6 +1845,9 @@ module Aws::S3Control
1813
1845
  SENSITIVE: []
1814
1846
  end
1815
1847
 
1848
+ class SSECFilter < Aws::EmptyStructure
1849
+ end
1850
+
1816
1851
  class SSEKMS
1817
1852
  attr_accessor key_id: ::String
1818
1853
  SENSITIVE: []
@@ -1823,12 +1858,21 @@ module Aws::S3Control
1823
1858
  SENSITIVE: []
1824
1859
  end
1825
1860
 
1861
+ class SSEKMSFilter
1862
+ attr_accessor kms_key_arn: ::String
1863
+ attr_accessor bucket_key_enabled: bool
1864
+ SENSITIVE: []
1865
+ end
1866
+
1826
1867
  class SSES3 < Aws::EmptyStructure
1827
1868
  end
1828
1869
 
1829
1870
  class SSES3Encryption < Aws::EmptyStructure
1830
1871
  end
1831
1872
 
1873
+ class SSES3Filter < Aws::EmptyStructure
1874
+ end
1875
+
1832
1876
  class Scope
1833
1877
  attr_accessor prefixes: ::Array[::String]
1834
1878
  attr_accessor permissions: ::Array[("GetObject" | "GetObjectAttributes" | "ListMultipartUploadParts" | "ListBucket" | "ListBucketMultipartUploads" | "PutObject" | "DeleteObject" | "AbortMultipartUpload")]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3control
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.117.0
4
+ version: 1.118.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services