pub struct AccessControl { /* private fields */ }Expand description
Access control for checking permissions.
Implementations§
Source§impl AccessControl
impl AccessControl
Sourcepub fn builder() -> AccessControlBuilder
pub fn builder() -> AccessControlBuilder
Create a new builder.
Sourcepub fn check(
&self,
user: &str,
permission: &Permission,
) -> Result<(), AccessDenied>
pub fn check( &self, user: &str, permission: &Permission, ) -> Result<(), AccessDenied>
Check if a user has access to a permission.
Sourcepub async fn check_and_audit(
&self,
user: &str,
permission: &Permission,
) -> Result<(), AuthError>
pub async fn check_and_audit( &self, user: &str, permission: &Permission, ) -> Result<(), AuthError>
Check and log the access attempt.
Sourcepub fn user_roles(&self, user: &str) -> Vec<&Role>
pub fn user_roles(&self, user: &str) -> Vec<&Role>
Get all roles assigned to a user.
Sourcepub fn role_names(&self) -> Vec<&str>
pub fn role_names(&self) -> Vec<&str>
Get all role names.
Trait Implementations§
Source§impl Clone for AccessControl
impl Clone for AccessControl
Source§fn clone(&self) -> AccessControl
fn clone(&self) -> AccessControl
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 moreAuto Trait Implementations§
impl Freeze for AccessControl
impl !RefUnwindSafe for AccessControl
impl Send for AccessControl
impl Sync for AccessControl
impl Unpin for AccessControl
impl !UnwindSafe for AccessControl
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