OCI Object Storage S3 Compatibility Enhancements – POST Uploads & Virtual Hosted URLs Explained
Oracle Cloud Infrastructure (OCI) continues to improve its S3 Compatibility API for OCI Object Storage, making it easier for teams to integrate OCI Object Storage with AWS S3–compatible tools, SDKs, and applications. In this post, I’m summarizing two key enhancements:
- S3 POST Upload Support – secure, browser-based direct uploads
- Virtual-Hosted Style URLs – improved compatibility for S3 clients and tools
Reference: Oracle blog post – S3 Compatibility API Enhancements for OCI Object Storage
Why This Update Matters
Many organizations build applications and automation around the AWS S3 ecosystem (SDKs, CLI tools, backup utilities, frameworks). When OCI Object Storage becomes more S3-compatible, it reduces friction for:
- Hybrid / multi-cloud design
- Migrating S3-based apps or tooling to OCI
- Using third-party tools that assume AWS-like URL patterns
- Browser / web application workflows for uploads
1) S3 POST Upload Support (Secure Direct Browser Uploads)
Traditionally, many S3 integrations rely heavily on PUT requests (single request upload). OCI now supports S3 POST, which is especially useful for browser-based uploads using an HTML form and a pre-signed policy.
What is S3 POST?
S3 POST allows a user’s browser (or client) to upload directly to Object Storage using a signed POST policy generated by the backend. The backend defines upload rules and the client uploads without needing long-lived credentials.
Benefits of S3 POST
- Improved Security: No permanent credentials exposed to the browser/client.
- Fine-Grained Control: You can restrict file size, content-type, key prefix, and policy expiration.
- Reduced Backend Load: Upload traffic doesn’t need to pass through your application server.
- Web-Friendly: Works naturally with HTML forms and modern web apps.
Typical Flow (High Level)
- User requests upload authorization from the application backend.
- Backend generates a pre-signed POST policy with conditions (size, type, expiry).
- User uploads directly to OCI Object Storage using POST form parameters + policy.
- Application can validate/store metadata, and process the uploaded object.
2) Virtual-Hosted Style URL Support
OCI Object Storage S3 Compatibility has historically been used widely with path-style addressing. Oracle is enhancing support for virtual-hosted style URLs to align more closely with AWS S3 behavior.
Path-Style vs Virtual-Hosted Style
Path-Style URL (bucket appears in the path):
https://<namespace>.compat.objectstorage.<region>.oraclecloud.com/<bucket-name>/<object-name>
Virtual-Hosted Style URL (bucket appears in the hostname):
https://<bucket-name>.vhcompat.objectstorage.<region>.oraclecloud.com/<object-name>
Why Virtual-Hosted Style is Important
- Better Tool Compatibility: Some SDKs/tools expect virtual-hosted style and may not work correctly with path-style.
- Smoother Migrations: Apps built for AWS S3 often assume this URL format.
- More AWS-Like Experience: Improves “drop-in” compatibility for S3 ecosystem clients.
Architecture Overview (Simple)
Below is a simple conceptual view of how modern browser uploads and S3-compatible access can look in OCI:
[User Browser]
|
| (Request signed POST policy)
v
[App Backend] ---- generates ----> [Signed POST Policy + Form Fields]
|
| (Client uploads directly using POST)
v
[OCI Object Storage (S3 Compatibility API)]
Once uploaded, applications and tools can access objects using S3-compatible SDKs/clients (now with improved URL handling support).
Enterprise Benefits Summary
| Enhancement | Why It Helps |
|---|---|
| S3 POST Support | Enables secure direct uploads from browsers/clients without exposing credentials and without backend upload traffic. |
| Virtual-Hosted Style URLs | Improves compatibility with S3 tools/SDKs that expect AWS-like bucket-in-hostname patterns. |
| More S3 Compatibility | Reduces friction for multi-cloud deployments and migration of S3-based workloads. |
Final Thoughts
These enhancements are valuable for teams building cloud-native applications, especially if you already use the AWS S3 ecosystem and want an OCI Object Storage option that integrates smoothly. S3 POST enables more secure and scalable direct upload patterns, while virtual-hosted style URL support improves compatibility across tools and SDKs.
I’ll continue exploring OCI + AWS interoperability topics as part of my cloud learning journey, focusing on practical architecture and real-world integration patterns.
Suggested Labels (Blogger)
- Oracle Cloud
- OCI
- Object Storage
- S3 Compatibility
- Cloud Architecture
- Multi Cloud
- AWS Integration