Expand description
S3 service implementation for Rustack.
This crate implements the S3 business logic provider (RustackS3) that can
be plugged into the rustack-s3-http service layer via the S3Handler trait.
It supports bucket CRUD, object CRUD, multipart uploads, versioning, CORS,
tagging, ACLs, encryption metadata, checksums, object lock, and more.
§Architecture
rustack-s3-http (routing, XML, auth)
|
v
RustackS3 (S3Handler trait impl in server)
|
v
S3ServiceState (buckets, global index)
|
v
StorageBackend (in-memory + spillover)Re-exports§
Modules§
- auth
- S3 authentication via the
CredentialProvidertrait. - checksums
- Checksum computation for S3 objects.
- config
- S3-specific configuration.
- cors
- CORS rule matching and response header generation.
- error
- S3-specific error types.
- ops
- S3 operation handlers.
- provider
- S3 provider that owns the business logic state.
- state
- S3 service state management.
- storage
- In-memory storage backend for S3 object body data.
- utils
- Shared utilities for the S3 service.
- validation
- Validation for S3 requests.