diff --git a/weed/s3api/auth_signature_v4.go b/weed/s3api/auth_signature_v4.go index 3c1c51b811..eeaf912441 100644 --- a/weed/s3api/auth_signature_v4.go +++ b/weed/s3api/auth_signature_v4.go @@ -539,6 +539,11 @@ func (iam *IdentityAccessManagement) validateSTSSessionToken(r *http.Request, se } else { delete(claims, "aws:username") } + if sessionInfo.ParentUser != "" { + claims["aws:userid"] = sessionInfo.ParentUser + } else { + delete(claims, "aws:userid") + } // Key the principal on the OIDC subject so a session resolves to the same // identity on the SigV4 and JWT paths (see s3_iam_middleware.go); fall back to