Merge pull request #2405 from iRioxe/fix-cors-check

Hidden actual error message cause of CORS check Error on PUT/<bucket-name>?object-lock=
This commit is contained in:
Ben McClelland
2026-09-20 11:03:51 -07:00
committed by GitHub
2 changed files with 35 additions and 6 deletions
+6 -6
View File
@@ -123,11 +123,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutBucketOwnershipControls,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutBucketOwnershipControls, auth.PutBucketOwnershipControlsAction, auth.PermissionWrite, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, true, false),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",
@@ -137,11 +137,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutBucketVersioning,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutBucketVersioning, auth.PutBucketVersioningAction, auth.PermissionWrite, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, true, false),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",
@@ -151,11 +151,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutObjectLockConfiguration,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutObjectLockConfiguration, auth.PutBucketObjectLockConfigurationAction, auth.PermissionWrite, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, true, true),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",
@@ -165,11 +165,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutBucketCors,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutBucketCors, auth.PutBucketCorsAction, auth.PermissionWrite, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, true, true),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",
@@ -179,11 +179,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutBucketPolicy,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutBucketPolicy, auth.PutBucketPolicyAction, auth.PermissionWrite, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, false, false),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",
@@ -193,11 +193,11 @@ func (sa *S3ApiRouter) Init() {
metrics.ActionPutBucketAcl,
services,
middlewares.BucketObjectNameValidator(),
applyBucketCORS,
middlewares.AuthorizePublicBucketAccess(sa.be, metrics.ActionPutBucketAcl, auth.PutBucketAclAction, auth.PermissionWriteAcp, sa.region, false),
middlewares.VerifyPresignedV4Signature(sa.root, sa.iam, sa.region, false),
middlewares.VerifyV4Signature(sa.root, sa.iam, sa.region, false, true, false),
middlewares.VerifyChecksums(false, false, false),
applyBucketCORS,
middlewares.ParseAcl(sa.be),
))
bucketRouter.Put("",