AWS Security ChangesHomeSearch

AWS AmazonS3 documentation change

Service: AmazonS3 · 2025-04-16 · Documentation low

File: AmazonS3/latest/userguide/common-bucket-patterns.md

Summary

Updated documentation to consistently use 'general purpose bucket' terminology throughout, clarified bucket naming recommendations, and adjusted references to bucket-level features and quotas

Security assessment

Changes focus on terminology standardization (adding 'general purpose' qualifier) and documentation clarity. While bucket naming recommendations about unpredictability could have security implications, this is existing guidance rather than new security content. No specific vulnerabilities or new security features are addressed.

Diff

diff --git a/AmazonS3/latest/userguide/common-bucket-patterns.md b/AmazonS3/latest/userguide/common-bucket-patterns.md
index b5d5a33e8..86a26e35c 100644
--- a//AmazonS3/latest/userguide/common-bucket-patterns.md
+++ b//AmazonS3/latest/userguide/common-bucket-patterns.md
@@ -5 +5 @@
-Multi-tenant bucket patternBucket-per-use pattern
+Multi-tenant general purpose bucket patternBucket-per-use pattern
@@ -7 +7 @@ Multi-tenant bucket patternBucket-per-use pattern
-# Common bucket patterns for building applications on Amazon S3
+# Common general purpose bucket patterns for building applications on Amazon S3
@@ -13 +13 @@ When you build applications on Amazon S3, you can use unique general purpose buc
-We recommend that you create bucket names that are not predictable. Do not write code assuming your chosen bucket name is available unless you have already created the bucket. One method for creating bucket names that are not predictable is to append a Globally Unique Identifier (GUID) to your bucket name, for example, `amzn-s3-demo-bucket-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`. For more information about general purpose bucket naming rules, see [General purpose bucket naming rules](./bucketnamingrules.html).
+We recommend that you create general purpose bucket names that are not predictable. Do not write code assuming your chosen bucket name is available unless you have already created the bucket. One method for creating bucket names that are not predictable is to append a Globally Unique Identifier (GUID) to your bucket name, for example, `amzn-s3-demo-bucket-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`. For more information about general purpose bucket naming rules, see [General purpose bucket naming rules](./bucketnamingrules.html).
@@ -17 +17 @@ We recommend that you create bucket names that are not predictable. Do not write
-  * Multi-tenant bucket pattern
+  * Multi-tenant general purpose bucket pattern
@@ -24 +24 @@ We recommend that you create bucket names that are not predictable. Do not write
-## Multi-tenant bucket pattern
+## Multi-tenant general purpose bucket pattern
@@ -26 +26 @@ We recommend that you create bucket names that are not predictable. Do not write
-With multi-tenant buckets, you create a single bucket for a team or workload. You use [unique S3 prefixes](./using-prefixes.html) to organize the objects that you store in the bucket. A prefix is a string of characters at the beginning of the object key name. A prefix can be any length, subject to the maximum length of the object key name (1,024 bytes). You can think of prefixes as a way to organize your data in a similar way to directories. However, prefixes are not directories. 
+With multi-tenant buckets, you create a single general purpose bucket for a team or workload. You use [unique S3 prefixes](./using-prefixes.html) to organize the objects that you store in the bucket. A prefix is a string of characters at the beginning of the object key name. A prefix can be any length, subject to the maximum length of the object key name (1,024 bytes). You can think of prefixes as a way to organize your data in a similar way to directories. However, prefixes are not directories. 
@@ -41 +41 @@ For example, to store information about cities, you might organize it by contine
-This pattern scales well when you have hundreds of unique datasets within a bucket. With prefixes, you can easily organize and group these datasets.
+This pattern scales well when you have hundreds of unique datasets within a general purpose bucket. With prefixes, you can easily organize and group these datasets.
@@ -43 +43 @@ This pattern scales well when you have hundreds of unique datasets within a buck
-However, one potential drawback to the multi-tenant bucket pattern is that many S3 bucket-level features like [default bucket encryption](./bucket-encryption.html), [S3 Versioning](./versioning-workflows.html), and [S3 Requester Pays](./RequesterPaysBuckets.html) are set at the bucket-level and not the prefix-level. If the different datasets within the multi-tenant bucket have unique requirements, the fact that you can't configure many S3 bucket-level features at the prefix-level can make it difficult for you to specify the correct settings for each dataset. Additionally, in a multi-tenant bucket, [cost allocation](./BucketBilling.html) can become complex as you work to understand the storage, requests, and data transfer associated with specific prefixes. 
+However, one potential drawback to the multi-tenant general purpose bucket pattern is that many S3 bucket-level features like [default bucket encryption](./bucket-encryption.html), [S3 Versioning](./versioning-workflows.html), and [S3 Requester Pays](./RequesterPaysBuckets.html) are set at the bucket-level and not the prefix-level. If the different datasets within the multi-tenant bucket have unique requirements, the fact that you can't configure many S3 bucket-level features at the prefix-level can make it difficult for you to specify the correct settings for each dataset. Additionally, in a multi-tenant bucket, [cost allocation](./BucketBilling.html) can become complex as you work to understand the storage, requests, and data transfer associated with specific prefixes. 
@@ -47 +47 @@ However, one potential drawback to the multi-tenant bucket pattern is that many
-With the bucket-per-use pattern, you create a bucket for each distinct dataset, end user, or team. Because you can configure S3 bucket-level features for each of these buckets, you can use this pattern to configure unique bucket-level settings. For example, you can configure features like [default bucket encryption](./bucket-encryption.html), [S3 Versioning](./versioning-workflows.html), and [S3 Requester Pays](./RequesterPaysBuckets.html) in a way that is customized to the dataset in each bucket. Using one bucket for each distinct dataset, end user, or team can also help you simplify both your access management and cost allocation strategies.
+With the bucket-per-use pattern, you create a general purpose bucket for each distinct dataset, end user, or team. Because you can configure S3 bucket-level features for each of these buckets, you can use this pattern to configure unique bucket-level settings. For example, you can configure features like [default bucket encryption](./bucket-encryption.html), [S3 Versioning](./versioning-workflows.html), and [S3 Requester Pays](./RequesterPaysBuckets.html) in a way that is customized to the dataset in each bucket. Using one bucket for each distinct dataset, end user, or team can also help you simplify both your access management and cost allocation strategies.
@@ -49 +49 @@ With the bucket-per-use pattern, you create a bucket for each distinct dataset,
-A potential drawback to this strategy is that you will need to manage potentially thousands of buckets. All AWS accounts have a default bucket quota of 10,000 general purpose buckets. You can increase the bucket quota for an account by submitting a quota increase request. To request an increase for general purpose buckets, visit the [Service Quotas console](https://console.aws.amazon.com/servicequotas/home/services/s3/quotas/).
+A potential drawback to this strategy is that you will need to manage potentially thousands of buckets. All AWS accounts have a default quota of 10,000 general purpose buckets. You can increase the bucket quota for an account by submitting a quota increase request. To request an increase for general purpose buckets, visit the [Service Quotas console](https://console.aws.amazon.com/servicequotas/home/services/s3/quotas/).
@@ -51 +51 @@ A potential drawback to this strategy is that you will need to manage potentiall
-To manage your bucket-per-use pattern and simplify your infrastructure management, you can use [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html#welcome-simplify-infrastructure-management). You can create a custom AWS CloudFormation template for your pattern that already defines all of your desired settings for your S3 buckets so that you can easily deploy and track any changes to your infrastructure. For more information, see [AWS::S3::Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html) in the _AWS CloudFormation User Guide_.
+To manage your bucket-per-use pattern and simplify your infrastructure management, you can use [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html#welcome-simplify-infrastructure-management). You can create a custom AWS CloudFormation template for your pattern that already defines all of your desired settings for your S3 general purpose buckets so that you can easily deploy and track any changes to your infrastructure. For more information, see [AWS::S3::Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html) in the _AWS CloudFormation User Guide_.
@@ -61 +61 @@ To use the Amazon Web Services Documentation, Javascript must be enabled. Please
-Buckets overview
+General purpose buckets overview