pub struct AuthCtx { /* private fields */ }Expand description
Authorization for SQL operations (queries, DML, subscription queries).
Implementations§
Source§impl AuthCtx
impl AuthCtx
pub fn new(owner: Identity, caller: Identity) -> Self
pub fn with_permissions(caller: Identity, permissions: SqlPermissions) -> Self
Sourcepub fn for_current(owner: Identity) -> Self
pub fn for_current(owner: Identity) -> Self
For when the owner == caller
pub fn has_permission(&self, p: SqlPermission) -> bool
pub fn has_read_access(&self, table_access: StAccess) -> bool
pub fn has_write_access(&self) -> bool
pub fn exceed_row_limit(&self) -> bool
pub fn bypass_rls(&self) -> bool
pub fn caller(&self) -> Identity
Sourcepub fn for_testing() -> Self
pub fn for_testing() -> Self
WARNING: Use this only for simple test were the auth don’t matter
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AuthCtx
impl !RefUnwindSafe for AuthCtx
impl Send for AuthCtx
impl Sync for AuthCtx
impl Unpin for AuthCtx
impl UnsafeUnpin for AuthCtx
impl !UnwindSafe for AuthCtx
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<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