From Dev.to
Direct Image Upload to Object Storage Using JS in Browser (5 MiB Tenant Boundaries)
Short answer: Use a short-lived signed request from an authenticated control plane, send the image directly from browser JavaScript to object storage, and verify ownership before publishing the avatar...
