Class BucketMetadata
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<BucketMetadata.Builder,
BucketMetadata>
Provides statistical data and other information about an S3 bucket that Amazon Macie monitors and analyzes for your account. By default, object count and storage size values include data for object parts that are the result of incomplete multipart uploads. For more information, see How Macie monitors Amazon S3 data security in the Amazon Macie User Guide.
If an error occurs when Macie attempts to retrieve and process metadata from Amazon S3 for the bucket or the bucket's objects, the value for the versioning property is false and the value for most other properties is null. Key exceptions are accountId, bucketArn, bucketCreatedAt, bucketName, lastUpdated, and region. To identify the cause of the error, refer to the errorCode and errorMessage values.
- See Also:
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal String
The unique identifier for the Amazon Web Services account that owns the bucket.Specifies whether the bucket policy for the bucket requires server-side encryption of objects when objects are added to the bucket.final String
Specifies whether the bucket policy for the bucket requires server-side encryption of objects when objects are added to the bucket.final String
The Amazon Resource Name (ARN) of the bucket.final Instant
The date and time, in UTC and extended ISO 8601 format, when the bucket was created.final String
The name of the bucket.static BucketMetadata.Builder
builder()
final Long
The total number of objects that Amazon Macie can analyze in the bucket.final Long
The total storage size, in bytes, of the objects that Amazon Macie can analyze in the bucket.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final BucketMetadataErrorCode
The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects.final String
The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects.final String
A brief description of the error (errorCode) that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final boolean
hasTags()
For responses, this returns true if the service returned a value for the Tags property.final JobDetails
Specifies whether any one-time or recurring classification jobs are configured to analyze data in the bucket, and, if so, the details of the job that ran most recently.final Instant
The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently analyzed data in the bucket while performing automated sensitive data discovery for your account.final Instant
The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently retrieved bucket or object metadata from Amazon S3 for the bucket.final Long
The total number of objects in the bucket.The total number of objects in the bucket, grouped by server-side encryption type.final BucketPublicAccess
Specifies whether the bucket is publicly accessible due to the combination of permissions settings that apply to the bucket, and provides information about those settings.final String
region()
The Amazon Web Services Region that hosts the bucket.final ReplicationDetails
Specifies whether the bucket is configured to replicate one or more objects to buckets for other Amazon Web Services accounts and, if so, which accounts.final Integer
The sensitivity score for the bucket, ranging from -1 (classification error) to 100 (sensitive).static Class
<? extends BucketMetadata.Builder> The default server-side encryption settings for the bucket.final SharedAccess
Specifies whether the bucket is shared with another Amazon Web Services account, an Amazon CloudFront origin access identity (OAI), or a CloudFront origin access control (OAC).final String
Specifies whether the bucket is shared with another Amazon Web Services account, an Amazon CloudFront origin access identity (OAI), or a CloudFront origin access control (OAC).final Long
The total storage size, in bytes, of the bucket.final Long
The total storage size, in bytes, of the objects that are compressed (.gz, .gzip, .zip) files in the bucket.final List
<KeyValuePair> tags()
An array that specifies the tags (keys and values) that are associated with the bucket.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.final ObjectLevelStatistics
The total number of objects that Amazon Macie can't analyze in the bucket.final ObjectLevelStatistics
The total storage size, in bytes, of the objects that Amazon Macie can't analyze in the bucket.final Boolean
Specifies whether versioning is enabled for the bucket.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
accountId
The unique identifier for the Amazon Web Services account that owns the bucket.
- Returns:
- The unique identifier for the Amazon Web Services account that owns the bucket.
-
allowsUnencryptedObjectUploads
Specifies whether the bucket policy for the bucket requires server-side encryption of objects when objects are added to the bucket. Possible values are:
-
FALSE - The bucket policy requires server-side encryption of new objects. PutObject requests must include a valid server-side encryption header.
-
TRUE - The bucket doesn't have a bucket policy or it has a bucket policy that doesn't require server-side encryption of new objects. If a bucket policy exists, it doesn't require PutObject requests to include a valid server-side encryption header.
-
UNKNOWN - Amazon Macie can't determine whether the bucket policy requires server-side encryption of new objects.
Valid server-side encryption headers are: x-amz-server-side-encryption with a value of AES256 or aws:kms, and x-amz-server-side-encryption-customer-algorithm with a value of AES256.
If the service returns an enum value that is not available in the current SDK version,
allowsUnencryptedObjectUploads
will returnAllowsUnencryptedObjectUploads.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromallowsUnencryptedObjectUploadsAsString()
.- Returns:
- Specifies whether the bucket policy for the bucket requires server-side encryption of objects when
objects are added to the bucket. Possible values are:
-
FALSE - The bucket policy requires server-side encryption of new objects. PutObject requests must include a valid server-side encryption header.
-
TRUE - The bucket doesn't have a bucket policy or it has a bucket policy that doesn't require server-side encryption of new objects. If a bucket policy exists, it doesn't require PutObject requests to include a valid server-side encryption header.
-
UNKNOWN - Amazon Macie can't determine whether the bucket policy requires server-side encryption of new objects.
Valid server-side encryption headers are: x-amz-server-side-encryption with a value of AES256 or aws:kms, and x-amz-server-side-encryption-customer-algorithm with a value of AES256.
-
- See Also:
-
-
allowsUnencryptedObjectUploadsAsString
Specifies whether the bucket policy for the bucket requires server-side encryption of objects when objects are added to the bucket. Possible values are:
-
FALSE - The bucket policy requires server-side encryption of new objects. PutObject requests must include a valid server-side encryption header.
-
TRUE - The bucket doesn't have a bucket policy or it has a bucket policy that doesn't require server-side encryption of new objects. If a bucket policy exists, it doesn't require PutObject requests to include a valid server-side encryption header.
-
UNKNOWN - Amazon Macie can't determine whether the bucket policy requires server-side encryption of new objects.
Valid server-side encryption headers are: x-amz-server-side-encryption with a value of AES256 or aws:kms, and x-amz-server-side-encryption-customer-algorithm with a value of AES256.
If the service returns an enum value that is not available in the current SDK version,
allowsUnencryptedObjectUploads
will returnAllowsUnencryptedObjectUploads.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromallowsUnencryptedObjectUploadsAsString()
.- Returns:
- Specifies whether the bucket policy for the bucket requires server-side encryption of objects when
objects are added to the bucket. Possible values are:
-
FALSE - The bucket policy requires server-side encryption of new objects. PutObject requests must include a valid server-side encryption header.
-
TRUE - The bucket doesn't have a bucket policy or it has a bucket policy that doesn't require server-side encryption of new objects. If a bucket policy exists, it doesn't require PutObject requests to include a valid server-side encryption header.
-
UNKNOWN - Amazon Macie can't determine whether the bucket policy requires server-side encryption of new objects.
Valid server-side encryption headers are: x-amz-server-side-encryption with a value of AES256 or aws:kms, and x-amz-server-side-encryption-customer-algorithm with a value of AES256.
-
- See Also:
-
-
bucketArn
The Amazon Resource Name (ARN) of the bucket.
- Returns:
- The Amazon Resource Name (ARN) of the bucket.
-
bucketCreatedAt
The date and time, in UTC and extended ISO 8601 format, when the bucket was created. This value can also indicate when changes such as edits to the bucket's policy were most recently made to the bucket.
- Returns:
- The date and time, in UTC and extended ISO 8601 format, when the bucket was created. This value can also indicate when changes such as edits to the bucket's policy were most recently made to the bucket.
-
bucketName
The name of the bucket.
- Returns:
- The name of the bucket.
-
classifiableObjectCount
The total number of objects that Amazon Macie can analyze in the bucket. These objects use a supported storage class and have a file name extension for a supported file or storage format.
- Returns:
- The total number of objects that Amazon Macie can analyze in the bucket. These objects use a supported storage class and have a file name extension for a supported file or storage format.
-
classifiableSizeInBytes
The total storage size, in bytes, of the objects that Amazon Macie can analyze in the bucket. These objects use a supported storage class and have a file name extension for a supported file or storage format.
If versioning is enabled for the bucket, Macie calculates this value based on the size of the latest version of each applicable object in the bucket. This value doesn't reflect the storage size of all versions of each applicable object in the bucket.
- Returns:
- The total storage size, in bytes, of the objects that Amazon Macie can analyze in the bucket. These
objects use a supported storage class and have a file name extension for a supported file or storage
format.
If versioning is enabled for the bucket, Macie calculates this value based on the size of the latest version of each applicable object in the bucket. This value doesn't reflect the storage size of all versions of each applicable object in the bucket.
-
errorCode
The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. If this value is ACCESS_DENIED, Macie doesn't have permission to retrieve the information. For example, the bucket has a restrictive bucket policy and Amazon S3 denied the request. If this value is null, Macie was able to retrieve and process the information.
If the service returns an enum value that is not available in the current SDK version,
errorCode
will returnBucketMetadataErrorCode.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromerrorCodeAsString()
.- Returns:
- The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. If this value is ACCESS_DENIED, Macie doesn't have permission to retrieve the information. For example, the bucket has a restrictive bucket policy and Amazon S3 denied the request. If this value is null, Macie was able to retrieve and process the information.
- See Also:
-
errorCodeAsString
The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. If this value is ACCESS_DENIED, Macie doesn't have permission to retrieve the information. For example, the bucket has a restrictive bucket policy and Amazon S3 denied the request. If this value is null, Macie was able to retrieve and process the information.
If the service returns an enum value that is not available in the current SDK version,
errorCode
will returnBucketMetadataErrorCode.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromerrorCodeAsString()
.- Returns:
- The error code for an error that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. If this value is ACCESS_DENIED, Macie doesn't have permission to retrieve the information. For example, the bucket has a restrictive bucket policy and Amazon S3 denied the request. If this value is null, Macie was able to retrieve and process the information.
- See Also:
-
errorMessage
A brief description of the error (errorCode) that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. This value is null if Macie was able to retrieve and process the information.
- Returns:
- A brief description of the error (errorCode) that prevented Amazon Macie from retrieving and processing information about the bucket and the bucket's objects. This value is null if Macie was able to retrieve and process the information.
-
jobDetails
Specifies whether any one-time or recurring classification jobs are configured to analyze data in the bucket, and, if so, the details of the job that ran most recently.
- Returns:
- Specifies whether any one-time or recurring classification jobs are configured to analyze data in the bucket, and, if so, the details of the job that ran most recently.
-
lastAutomatedDiscoveryTime
The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently analyzed data in the bucket while performing automated sensitive data discovery for your account. This value is null if automated sensitive data discovery is currently disabled for your account.
- Returns:
- The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently analyzed data in the bucket while performing automated sensitive data discovery for your account. This value is null if automated sensitive data discovery is currently disabled for your account.
-
lastUpdated
The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently retrieved bucket or object metadata from Amazon S3 for the bucket.
- Returns:
- The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most recently retrieved bucket or object metadata from Amazon S3 for the bucket.
-
objectCount
The total number of objects in the bucket.
- Returns:
- The total number of objects in the bucket.
-
objectCountByEncryptionType
The total number of objects in the bucket, grouped by server-side encryption type. This includes a grouping that reports the total number of objects that aren't encrypted or use client-side encryption.
- Returns:
- The total number of objects in the bucket, grouped by server-side encryption type. This includes a grouping that reports the total number of objects that aren't encrypted or use client-side encryption.
-
publicAccess
Specifies whether the bucket is publicly accessible due to the combination of permissions settings that apply to the bucket, and provides information about those settings.
- Returns:
- Specifies whether the bucket is publicly accessible due to the combination of permissions settings that apply to the bucket, and provides information about those settings.
-
region
The Amazon Web Services Region that hosts the bucket.
- Returns:
- The Amazon Web Services Region that hosts the bucket.
-
replicationDetails
Specifies whether the bucket is configured to replicate one or more objects to buckets for other Amazon Web Services accounts and, if so, which accounts.
- Returns:
- Specifies whether the bucket is configured to replicate one or more objects to buckets for other Amazon Web Services accounts and, if so, which accounts.
-
sensitivityScore
The sensitivity score for the bucket, ranging from -1 (classification error) to 100 (sensitive). This value is null if automated sensitive data discovery is currently disabled for your account.
- Returns:
- The sensitivity score for the bucket, ranging from -1 (classification error) to 100 (sensitive). This value is null if automated sensitive data discovery is currently disabled for your account.
-
serverSideEncryption
The default server-side encryption settings for the bucket.
- Returns:
- The default server-side encryption settings for the bucket.
-
sizeInBytes
The total storage size, in bytes, of the bucket.
If versioning is enabled for the bucket, Amazon Macie calculates this value based on the size of the latest version of each object in the bucket. This value doesn't reflect the storage size of all versions of each object in the bucket.
- Returns:
- The total storage size, in bytes, of the bucket.
If versioning is enabled for the bucket, Amazon Macie calculates this value based on the size of the latest version of each object in the bucket. This value doesn't reflect the storage size of all versions of each object in the bucket.
-
sizeInBytesCompressed
The total storage size, in bytes, of the objects that are compressed (.gz, .gzip, .zip) files in the bucket.
If versioning is enabled for the bucket, Amazon Macie calculates this value based on the size of the latest version of each applicable object in the bucket. This value doesn't reflect the storage size of all versions of each applicable object in the bucket.
- Returns:
- The total storage size, in bytes, of the objects that are compressed (.gz, .gzip, .zip) files in the
bucket.
If versioning is enabled for the bucket, Amazon Macie calculates this value based on the size of the latest version of each applicable object in the bucket. This value doesn't reflect the storage size of all versions of each applicable object in the bucket.
-
hasTags
public final boolean hasTags()For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
tags
An array that specifies the tags (keys and values) that are associated with the bucket.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTags()
method.- Returns:
- An array that specifies the tags (keys and values) that are associated with the bucket.
-
unclassifiableObjectCount
The total number of objects that Amazon Macie can't analyze in the bucket. These objects don't use a supported storage class or don't have a file name extension for a supported file or storage format.
- Returns:
- The total number of objects that Amazon Macie can't analyze in the bucket. These objects don't use a supported storage class or don't have a file name extension for a supported file or storage format.
-
unclassifiableObjectSizeInBytes
The total storage size, in bytes, of the objects that Amazon Macie can't analyze in the bucket. These objects don't use a supported storage class or don't have a file name extension for a supported file or storage format.
- Returns:
- The total storage size, in bytes, of the objects that Amazon Macie can't analyze in the bucket. These objects don't use a supported storage class or don't have a file name extension for a supported file or storage format.
-
versioning
Specifies whether versioning is enabled for the bucket.
- Returns:
- Specifies whether versioning is enabled for the bucket.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<BucketMetadata.Builder,
BucketMetadata> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
-
sdkFields
-