aboutsummaryrefslogtreecommitdiff
path: root/weed/s3api/bucket_metadata.go
diff options
context:
space:
mode:
authorKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2023-09-25 20:34:12 +0500
committerGitHub <noreply@github.com>2023-09-25 08:34:12 -0700
commitf8b94cac0e91660ff4dc33bb458e973b4de6523b (patch)
tree46226e5a964b65546ac299b4ad2e8cb5b7b81d0b /weed/s3api/bucket_metadata.go
parentc9177c92e5b6459d15d112738b7a3862655a853f (diff)
downloadseaweedfs-f8b94cac0e91660ff4dc33bb458e973b4de6523b.tar.xz
seaweedfs-f8b94cac0e91660ff4dc33bb458e973b4de6523b.zip
[s3acl] Step1: move s3account.AccountManager into to iam.S3ApiConfiguration (#4859)
* move s3account.AccountManager into to iam.S3ApiConfiguration and switch to Interface https://github.com/seaweedfs/seaweedfs/issues/4519 * fix: test bucket acl default and adjust the variable names * fix: s3 api config test --------- Co-authored-by: Konstantin Lebedev <9497591+kmlebedev@users.noreply.github.co> Co-authored-by: Chris Lu <chrislusf@users.noreply.github.com>
Diffstat (limited to 'weed/s3api/bucket_metadata.go')
-rw-r--r--weed/s3api/bucket_metadata.go15
1 files changed, 7 insertions, 8 deletions
diff --git a/weed/s3api/bucket_metadata.go b/weed/s3api/bucket_metadata.go
index f4088e6b3..d1f487104 100644
--- a/weed/s3api/bucket_metadata.go
+++ b/weed/s3api/bucket_metadata.go
@@ -6,7 +6,6 @@ import (
"github.com/seaweedfs/seaweedfs/weed/glog"
"github.com/seaweedfs/seaweedfs/weed/pb/filer_pb"
"github.com/seaweedfs/seaweedfs/weed/s3api/s3_constants"
- "github.com/seaweedfs/seaweedfs/weed/s3api/s3account"
"github.com/seaweedfs/seaweedfs/weed/s3api/s3err"
"github.com/seaweedfs/seaweedfs/weed/util"
"math"
@@ -19,7 +18,7 @@ var loadBucketMetadataFromFiler = func(r *BucketRegistry, bucketName string) (*B
return nil, err
}
- return buildBucketMetadata(r.s3a.accountManager, entry), nil
+ return buildBucketMetadata(r.s3a.iam, entry), nil
}
type BucketMetaData struct {
@@ -73,13 +72,13 @@ func (r *BucketRegistry) init() error {
}
func (r *BucketRegistry) LoadBucketMetadata(entry *filer_pb.Entry) {
- bucketMetadata := buildBucketMetadata(r.s3a.accountManager, entry)
+ bucketMetadata := buildBucketMetadata(r.s3a.iam, entry)
r.metadataCacheLock.Lock()
defer r.metadataCacheLock.Unlock()
r.metadataCache[entry.Name] = bucketMetadata
}
-func buildBucketMetadata(accountManager *s3account.AccountManager, entry *filer_pb.Entry) *BucketMetaData {
+func buildBucketMetadata(accountManager AccountManager, entry *filer_pb.Entry) *BucketMetaData {
entryJson, _ := json.Marshal(entry)
glog.V(3).Infof("build bucket metadata,entry=%s", entryJson)
bucketMetadata := &BucketMetaData{
@@ -90,8 +89,8 @@ func buildBucketMetadata(accountManager *s3account.AccountManager, entry *filer_
// Default owner: `AccountAdmin`
Owner: &s3.Owner{
- ID: &s3account.AccountAdmin.Id,
- DisplayName: &s3account.AccountAdmin.Name,
+ ID: &AccountAdmin.Id,
+ DisplayName: &AccountAdmin.DisplayName,
},
}
if entry.Extended != nil {
@@ -112,8 +111,8 @@ func buildBucketMetadata(accountManager *s3account.AccountManager, entry *filer_
acpOwnerBytes, ok := entry.Extended[s3_constants.ExtAmzOwnerKey]
if ok && len(acpOwnerBytes) > 0 {
ownerAccountId := string(acpOwnerBytes)
- ownerAccountName, exists := accountManager.IdNameMapping[ownerAccountId]
- if !exists {
+ ownerAccountName := accountManager.GetAccountNameById(ownerAccountId)
+ if ownerAccountName == "" {
glog.Warningf("owner[id=%s] is invalid, bucket: %s", ownerAccountId, bucketMetadata.Name)
} else {
bucketMetadata.Owner = &s3.Owner{