feat(s3): add blockedEncryptionTypes field to s3.Bucket#37047
feat(s3): add blockedEncryptionTypes field to s3.Bucket#37047mergify[bot] merged 15 commits intoaws:mainfrom
Conversation
| * Encryption types that should be blocked for this bucket. Use `NONE` to allow all | ||
| * encryption types. | ||
| * | ||
| * @default - Amazon S3 determines which encryption types to block. |
There was a problem hiding this comment.
Yes, this isn't a particularly helpful comment, but I wrote this because the default is going to change soon. Right now, no encryption types are blocked by default, but in April, SSE-C will start being blocked by default. When that happens, we can update this to say @default - SSE-C is blocked by default.
An alternative is to say @default - no encryption types are blocked, but SSE-C will start being blocked in April 2026, but putting times in doc comments feels wrong.
There was a problem hiding this comment.
Is there any documentation for this at the moment? Like a link we can add here so the users can see which types will be blocked by default by S3? IF there is, you could add a
@see <LINK TO OFFICIAL DOC>|
Any idea why the PR Linter workflow is failing with "Bad credentials"? |
|
|
||||||||||||||
|
|
||||||||||||||
✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
Merge Queue Status
Required conditions to merge
Required conditions to stay in the queue
|
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
|
Comments on closed issues and PRs are hard for our team to see. |
Issue
Closes #36988.
Reason for this change
S3 recently added a new
BlockedEncryptionTypesfield to server-side encryption rules (docs). This field allows users to explicitly block or unblock SSE-C encryption on their bucket.Users should be able to set this field through CDK. This will become especially important when SSE-C starts being blocked by default in April (blog post).
Description of changes
Added a
blockedEncryptionTypesfield to the L2s3.Bucketconstruct.blockedEncryptionTypesis not set, behavior is same as before. No defaultblockedEncryptionTypesvalue will be chosen (this is important, we want to let S3 choose what default to apply).blockedEncryptionTypesis set andencryptionTypeisBucketEncryption.UNENCRYPTED, a server-side encryption configuration will be added with justblockedEncryptionTypesbucketKeyEnabledis explicitly set. Please confirm that this is behavior you want. I went with it becausebucketKeyEnabledis already ignored whenencryptionTypeisBucketEncryption.UNENCRYPTED.Describe any new or updated permissions being added
N/A
Description of how you validated changes
Ran unit tests, added integ tests.
MySsecBlockedBucketbucket hasSSE-Cblocked (and no default server-side encryption type explicitly set)MyKmsBucketbucket has no encryption types blockedChecklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license