Operations on buckets
The StorageGRID system supports a maximum of 1,000 buckets for each S3 tenant account.
Bucket name restrictions follow the AWS US Standard region restrictions, but you should further restrict them to DNS naming conventions to support S3 virtual hosted-style requests.
See the following for more information:
The GET Bucket (List Objects) and GET Bucket versions operations support StorageGRID consistency controls.
You can check whether updates to last access time are enabled or disabled for individual buckets.
The following table describes how StorageGRID implements S3 REST API bucket operations. To perform any of these operations, the necessary access credentials must be provided for the account.
Operation | Implementation |
---|---|
DELETE Bucket |
This operation deletes the bucket. |
DELETE Bucket cors |
This operation deletes the CORS configuration for the bucket. |
DELETE Bucket encryption |
This operation deletes the default encryption from the bucket. Existing encrypted objects remain encrypted, but any new objects added to the bucket aren't encrypted. |
DELETE Bucket lifecycle |
This operation deletes the lifecycle configuration from the bucket. See Create S3 lifecycle configuration. |
DELETE Bucket policy |
This operation deletes the policy attached to the bucket. |
DELETE Bucket replication |
This operation deletes the replication configuration attached to the bucket. |
DELETE Bucket tagging |
This operation uses the |
GET Bucket (ListObjects) (ListObjectsV2) |
This operation returns some or all (up to 1,000) of the objects in a bucket. The Storage Class for objects can have either of two values, even if the object was ingested with the
If the bucket contains large numbers of deleted keys that have the same prefix, the response might include some |
GET Bucket Object versions (ListObjectVersions) |
With READ access on a bucket, this operation with the |
GET Bucket acl |
This operation returns a positive response and the ID, DisplayName, and Permission of the bucket owner, indicating that the owner has full access to the bucket. |
GET Bucket cors |
This operation returns the |
GET Bucket encryption |
This operation returns the default encryption configuration for the bucket. |
GET Bucket lifecycle (GetBucketLifecycleConfiguration) |
This operation returns the lifecycle configuration for the bucket. See Create S3 lifecycle configuration. |
GET Bucket location |
This operation returns the region that was set using the |
GET Bucket notification (GetBucketNotificationConfiguration) |
This operation returns the notification configuration attached to the bucket. |
GET Bucket policy |
This operation returns the policy attached to the bucket. |
GET Bucket replication |
This operation returns the replication configuration attached to the bucket. |
GET Bucket tagging |
This operation uses the |
GET Bucket versioning |
This implementation uses the
|
GET Object Lock Configuration |
This operation returns the bucket default retention mode and default retention period, if configured. |
HEAD Bucket |
This operation determines if a bucket exists and you have permission to access it. This operation returns:
|
PUT Bucket |
This operation creates a new bucket. By creating the bucket, you become the bucket owner.
|
PUT Bucket cors |
This operation sets the CORS configuration for a bucket so that the bucket can service cross-origin requests. Cross-origin resource sharing (CORS) is a security mechanism that allows client web applications in one domain to access resources in a different domain. For example, suppose you use an S3 bucket named |
PUT Bucket encryption |
This operation sets the default encryption state of an existing bucket. When bucket-level encryption is enabled, any new objects added to the bucket are encrypted.StorageGRID supports server-side encryption with StorageGRID-managed keys. When specifying the server-side encryption configuration rule, set the Bucket default encryption configuration is ignored if the object upload request already specifies encryption (that is, if the request includes the |
PUT Bucket lifecycle (PutBucketLifecycleConfiguration) |
This operation creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. StorageGRID supports up to 1,000 lifecycle rules in a lifecycle configuration. Each rule can include the following XML elements:
StorageGRID does not support these actions:
See Create S3 lifecycle configuration. To understand how the Expiration action in a bucket lifecycle interacts with ILM placement instructions, see How ILM operates throughout an object’s life. Note: Bucket lifecycle configuration can be used with buckets that have S3 Object Lock enabled, but bucket lifecycle configuration is not supported for legacy Compliant buckets. |
PUT Bucket notification (PutBucketNotificationConfiguration) |
This operation configures notifications for the bucket using the notification configuration XML included in the request body. You should be aware of the following implementation details:
|
PUT Bucket policy |
This operation sets the policy attached to the bucket. |
PUT Bucket replication |
This operation configures StorageGRID CloudMirror replication for the bucket using the replication configuration XML provided in the request body. For CloudMirror replication, you should be aware of the following implementation details:
|
PUT Bucket tagging |
This operation uses the
|
PUT Bucket versioning |
This implementation uses the
|
PUT Object Lock Configuration |
This operation configures or removes the bucket default retention mode and default retention period. If the default retention period is modified, the retain-until-date of existing object versions remains the same and is not recalculated using the new default retention period. See Use S3 REST API to configure S3 Object Lock for detailed information. |