BaryoDev / BaryoDev/barakoCMS

Files.S3: default UsePublicReadAcl to false

Open
#789 0 comments 0 reactions 0 assignees View on GitHub
enhancement module
Dominant language
C#
Stars
6
Forks
7
Avg merge
4h 42m
Merged PRs (30d)
307

Description

`Files:S3:UsePublicReadAcl` defaults to `true` (`BarakoCMS.Files.S3/S3StorageOptions.cs:46`), while the module README calls `false` the safer default and tells people to set it on every provider it lists.

A new AWS bucket has Object Ownership set to bucket owner enforced, which refuses ACLs, so with the default a public upload to a freshly created bucket is refused. R2, SeaweedFS and Garage ignore or refuse the ACL too. The only setup that needs `true` is an AWS bucket with ACLs turned back on.

## Change

Default `UsePublicReadAcl` to `false` in 5.0.0.

Not before: CLAUDE.md section 3 says a default must preserve existing behaviour, and a deployment on an ACL-enabled bucket that never set the flag would stop getting public-read objects on upgrade. Until then the README keeps saying to set `false`.

## Done when

- `S3StorageOptions.UsePublicReadAcl` is `false` by default, with a test that reads the default.
- The upgrade notes for 5.0 name the flag and say to set `true` only for an ACL-enabled AWS bucket.
- A `Changed` changelog fragment says the same.

Contributor guide

Open the contributing guide

Research direction

Start at BarakoCMS.Files.S3/S3StorageOptions.cs:46 and inspect the existing option default and related tests. Update the default, add a test that reads it, then update the module README, 5.0 upgrade notes, and the Changed changelog fragment; done means all three documentation items explain that true is only for ACL-enabled AWS buckets.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, csharp
Domain
cloud, documentation
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
76/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.