pub struct AccountManager { /* private fields */ }
Implementations§
Source§impl AccountManager
impl AccountManager
pub fn new( session_store: Box<dyn SessionStore>, user_store: Box<dyn UserStore>, security_policy: SecurityPolicy, ) -> Self
pub fn register_auth_provider( &mut self, name: String, provider: Box<dyn AuthProvider>, )
pub async fn authenticate( &self, credentials: Credentials, provider: Option<&str>, ) -> Result<AuthResult>
pub async fn validate_token( &self, token: &str, provider: Option<&str>, ) -> Result<Claims>
pub async fn refresh_token( &self, refresh_token: &str, provider: Option<&str>, ) -> Result<TokenPair>
pub async fn logout(&self, session_id: Option<Uuid>) -> Result<()>
pub async fn current_user(&self) -> Option<User>
pub async fn current_session(&self) -> Option<UserSession>
pub async fn check_permission( &self, user_id: UserId, resource: &str, action: &str, ) -> Result<bool>
pub async fn check_current_user_permission( &self, resource: &str, action: &str, ) -> Result<bool>
pub async fn create_user(&self, user: User) -> Result<()>
pub async fn update_user(&self, user: User) -> Result<()>
pub async fn get_user(&self, user_id: UserId) -> Result<Option<User>>
pub async fn get_user_by_username(&self, username: &str) -> Result<Option<User>>
pub async fn list_users( &self, limit: Option<u32>, offset: Option<u32>, ) -> Result<Vec<User>>
pub async fn cleanup_expired_sessions(&self) -> Result<u64>
Trait Implementations§
Source§impl Debug for AccountManager
impl Debug for AccountManager
Source§impl Manager for AccountManager
impl Manager for AccountManager
Source§fn initialize<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn initialize<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Initializes the manager
Source§fn shutdown<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn shutdown<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Shuts down the manager
Source§fn status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ManagerStatus> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn status<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ManagerStatus> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns current status
Source§fn required_permissions(&self) -> Vec<String>
fn required_permissions(&self) -> Vec<String>
Returns required permissions
Source§fn platform_requirements(&self) -> PlatformRequirements
fn platform_requirements(&self) -> PlatformRequirements
Returns platform requirements
Source§fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = HealthStatus> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = HealthStatus> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
Performs health check
Source§fn pause<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn pause<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Pauses the manager
Source§fn resume<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn resume<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Resumes the manager
Source§fn restart<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn restart<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Restarts the manager
Source§fn get_config<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<Value>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
fn get_config<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<Value>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
Gets current configuration
Source§fn update_config<'life0, 'async_trait>(
&'life0 mut self,
_config: Value,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn update_config<'life0, 'async_trait>(
&'life0 mut self,
_config: Value,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Updates configuration
Source§fn dependencies(&self) -> Vec<String>
fn dependencies(&self) -> Vec<String>
Returns dependencies
Source§fn is_essential(&self) -> bool
fn is_essential(&self) -> bool
Checks if manager is essential for system operation
Source§fn description(&self) -> Option<String>
fn description(&self) -> Option<String>
Returns manager description
Source§fn supports_runtime_reload(&self) -> bool
fn supports_runtime_reload(&self) -> bool
Checks if manager supports runtime reloading
Auto Trait Implementations§
impl Freeze for AccountManager
impl !RefUnwindSafe for AccountManager
impl Send for AccountManager
impl Sync for AccountManager
impl Unpin for AccountManager
impl !UnwindSafe for AccountManager
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
§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.