pub struct BucketConfig {
pub name: String,
pub backend_type: String,
pub backend_prefix: Option<String>,
pub anonymous_access: bool,
pub allowed_roles: Vec<String>,
pub backend_options: HashMap<String, String>,
}Expand description
Configuration for a virtual bucket exposed by the proxy.
Fields§
§name: StringThe virtual bucket name exposed to clients.
backend_type: StringProvider type: “s3”, “az”, “gcs”, etc.
backend_prefix: Option<String>Optional prefix to prepend to all keys when forwarding.
anonymous_access: boolWhether this bucket allows anonymous (unsigned) access.
allowed_roles: Vec<String>IAM role ARNs that are allowed to access this bucket. Empty means only anonymous access (if enabled) or long-lived credentials.
backend_options: HashMap<String, String>Provider-specific config passed to the object_store builder. Keys are the short aliases accepted by each provider’s ConfigKey::from_str(). S3: “endpoint”, “bucket_name”, “region”, “access_key_id”, “secret_access_key”, “skip_signature” Azure: “account_name”, “container_name”, “access_key”, “skip_signature” GCS: “bucket_name”, “service_account_key”, “skip_signature”
Implementations§
Source§impl BucketConfig
impl BucketConfig
Sourcepub fn parsed_backend_type(&self) -> Option<BackendType>
pub fn parsed_backend_type(&self) -> Option<BackendType>
Parse the backend_type string into a known BackendType.
Sourcepub fn is_s3_backend(&self) -> bool
pub fn is_s3_backend(&self) -> bool
Whether this is an S3 backend. Operations that go through raw signed HTTP rather than presigned URLs — multipart uploads and batch delete — are gated on this.
Trait Implementations§
Source§impl Clone for BucketConfig
impl Clone for BucketConfig
Source§fn clone(&self) -> BucketConfig
fn clone(&self) -> BucketConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BucketConfig
impl Debug for BucketConfig
Source§impl<'de> Deserialize<'de> for BucketConfig
impl<'de> Deserialize<'de> for BucketConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for BucketConfig
impl RefUnwindSafe for BucketConfig
impl Send for BucketConfig
impl Sync for BucketConfig
impl Unpin for BucketConfig
impl UnsafeUnpin for BucketConfig
impl UnwindSafe for BucketConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more