S3: support disabling ACL with none value

This change lets you disable ACL when using S3 by using a configuration
value of `none`. This way we maintain backward compatibility with the
default setting being `private`.

Fixes: #1067
This commit is contained in:
Wade Simmons
2022-06-21 20:15:49 -04:00
committed by Benj Fassbind
parent f61514edaf
commit c9f5763a70
4 changed files with 6 additions and 3 deletions

View File

@@ -48,3 +48,4 @@ List of contributors, in chronological order:
* Chuan Liu (https://github.com/chuan)
* Samuel Mutel (https://github.com/smutel)
* Russell Greene (https://github.com/russelltg)
* Wade Simmons (https://github.com/wadey)

View File

@@ -238,7 +238,7 @@ bucket name
.
.TP
\fBacl\fR
(optional) assign ACL to published files (one of the canned ACLs in Amazon terminology)\. Useful values: \fBprivate\fR (default) or \fBpublic\-read\fR (public repository)\. Public repositories could be consumed by \fBapt\fR using HTTP endpoint (Amazon bucket should be configured for "website hosting"), for private repositories special apt S3 transport is required\.
(optional) assign ACL to published files (one of the canned ACLs in Amazon terminology)\. Useful values: \fBprivate\fR (default), \fBpublic\-read\fR (public repository) or \fBnone\fR (don\(cqt set ACL)\. Public repositories could be consumed by \fBapt\fR using HTTP endpoint (Amazon bucket should be configured for "website hosting"), for private repositories special apt S3 transport is required\.
.
.TP
\fBawsAccessKeyID\fR, \fBawsSecretAccessKey\fR

View File

@@ -223,8 +223,8 @@ and associated settings:
no prefix (bucket root)
* `acl`:
(optional) assign ACL to published files (one of the canned ACLs in Amazon
terminology). Useful values: `private` (default) or `public-read` (public
repository). Public repositories could be consumed by `apt` using
terminology). Useful values: `private` (default), `public-read` (public
repository) or `none` (don't set ACL). Public repositories could be consumed by `apt` using
HTTP endpoint (Amazon bucket should be configured for "website hosting"),
for private repositories special apt S3 transport is required.
* `awsAccessKeyID`, `awsSecretAccessKey`:

View File

@@ -49,6 +49,8 @@ func NewPublishedStorageRaw(
) (*PublishedStorage, error) {
if defaultACL == "" {
defaultACL = "private"
} else if defaultACL == "none" {
defaultACL = ""
}
if storageClass == "STANDARD" {