pub enum OpenIdentity {
Credentialless,
ServicePrincipal {
principal_id: [u8; 16],
},
ScopedServicePrincipal {
principal_id: [u8; 16],
permissions: Vec<Permission>,
},
CatalogCredentials {
username: String,
password: SecretString,
},
}Expand description
The identity requested when attaching a shared handle (spec §2.2).
Catalog credentials are verified against the live shared catalog before a handle is issued. The password allocation is zeroized when attach returns.
Variants§
Credentialless
Attach without credentials. Rejected (fail closed) when the database
catalog has require_auth enabled.
ServicePrincipal
Attach as a non-catalog service principal.
ScopedServicePrincipal
Attach as a service principal restricted to these exact permissions.
CatalogCredentials
Authenticate one catalog user on the existing shared core.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OpenIdentity
impl RefUnwindSafe for OpenIdentity
impl Send for OpenIdentity
impl Sync for OpenIdentity
impl Unpin for OpenIdentity
impl UnsafeUnpin for OpenIdentity
impl UnwindSafe for OpenIdentity
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> 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 more