pub enum PrincipalRole {
Owner,
Mirror,
}Expand description
The role of a principal on a bucket.
Roles determine what operations a principal can perform and when they receive encryption access.
Variants§
Owner
Full read/write access to the bucket.
Owners:
- Always have an encrypted
SecretShare - Can modify bucket contents (add, remove, move files)
- Can add/remove other principals
- Can publish the bucket to grant mirror access
Mirror
Read-only access after publication.
Mirrors:
- Can sync bucket data (encrypted blobs) at any time
- Cannot decrypt content until the bucket is published
- Once published, read the plaintext secret from the manifest
- Cannot modify bucket contents
- Useful for CDN/gateway nodes that serve published content
Trait Implementations§
Source§impl Clone for PrincipalRole
impl Clone for PrincipalRole
Source§fn clone(&self) -> PrincipalRole
fn clone(&self) -> PrincipalRole
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PrincipalRole
impl Debug for PrincipalRole
Source§impl<'de> Deserialize<'de> for PrincipalRole
impl<'de> Deserialize<'de> for PrincipalRole
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for PrincipalRole
impl Display for PrincipalRole
Source§impl Hash for PrincipalRole
impl Hash for PrincipalRole
Source§impl PartialEq for PrincipalRole
impl PartialEq for PrincipalRole
Source§impl Serialize for PrincipalRole
impl Serialize for PrincipalRole
impl Eq for PrincipalRole
impl StructuralPartialEq for PrincipalRole
Auto Trait Implementations§
impl Freeze for PrincipalRole
impl RefUnwindSafe for PrincipalRole
impl Send for PrincipalRole
impl Sync for PrincipalRole
impl Unpin for PrincipalRole
impl UnwindSafe for PrincipalRole
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
Converts
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>
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.