pub struct PermissionChecker { /* private fields */ }Expand description
Permission checker for validating access rights.
Implementations§
Source§impl PermissionChecker
impl PermissionChecker
Sourcepub fn remove_role(&mut self, role_name: &str)
pub fn remove_role(&mut self, role_name: &str)
Remove a role definition.
Sourcepub fn set_user_permissions(&mut self, user_permissions: UserPermissions)
pub fn set_user_permissions(&mut self, user_permissions: UserPermissions)
Set user permissions.
Sourcepub fn get_user_permissions(&self, user_id: &str) -> Option<&UserPermissions>
pub fn get_user_permissions(&self, user_id: &str) -> Option<&UserPermissions>
Get user permissions.
Sourcepub fn get_user_permissions_mut(
&mut self,
user_id: &str,
) -> Option<&mut UserPermissions>
pub fn get_user_permissions_mut( &mut self, user_id: &str, ) -> Option<&mut UserPermissions>
Get mutable user permissions.
Sourcepub fn add_user_permission(&mut self, user_id: &str, permission: Permission)
pub fn add_user_permission(&mut self, user_id: &str, permission: Permission)
Add a permission to a user.
Sourcepub fn add_user_role(&mut self, user_id: &str, role: impl Into<String>)
pub fn add_user_role(&mut self, user_id: &str, role: impl Into<String>)
Add a role to a user.
Sourcepub fn check_permission(
&mut self,
user_id: &str,
permission: &Permission,
) -> Result<bool>
pub fn check_permission( &mut self, user_id: &str, permission: &Permission, ) -> Result<bool>
Check if a user has a specific permission.
Sourcepub fn check_access(
&mut self,
user_id: &str,
action: &str,
resource: &str,
) -> Result<bool>
pub fn check_access( &mut self, user_id: &str, action: &str, resource: &str, ) -> Result<bool>
Check if a user has permission for a specific action on a resource.
Sourcepub fn check_instance_access(
&mut self,
user_id: &str,
action: &str,
resource: &str,
instance: &str,
) -> Result<bool>
pub fn check_instance_access( &mut self, user_id: &str, action: &str, resource: &str, instance: &str, ) -> Result<bool>
Check if a user has permission for a specific action on a resource instance.
Sourcepub fn check_token_permission(
&mut self,
token: &AuthToken,
permission: &Permission,
) -> Result<bool>
pub fn check_token_permission( &mut self, token: &AuthToken, permission: &Permission, ) -> Result<bool>
Check permission from an auth token.
Sourcepub fn create_default_roles(&mut self)
pub fn create_default_roles(&mut self)
Create some default roles for common use cases.
Sourcepub fn load_permissions(&mut self, _config: &str) -> Result<()>
pub fn load_permissions(&mut self, _config: &str) -> Result<()>
Load permissions from a configuration or database.
Trait Implementations§
Source§impl Clone for PermissionChecker
impl Clone for PermissionChecker
Source§fn clone(&self) -> PermissionChecker
fn clone(&self) -> PermissionChecker
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 PermissionChecker
impl Debug for PermissionChecker
Auto Trait Implementations§
impl Freeze for PermissionChecker
impl RefUnwindSafe for PermissionChecker
impl Send for PermissionChecker
impl Sync for PermissionChecker
impl Unpin for PermissionChecker
impl UnwindSafe for PermissionChecker
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