Architecture Overview
Design Philosophy
Core Architecture
Authenticator Trait
pub trait Authenticator {
/// Primary authentication method
async fn authenticate(
&mut self,
event_bus: Option<&EventBus>,
) -> AuthResult<UserProfile>;
/// Optional: Verify if a token is still valid
async fn verify(&self, token: &str) -> AuthResult<UserProfile> {
Err(AuthError::Custom("Verification not supported".into()))
}
/// Optional: Invalidate a token
async fn logout(&self, token: &str) -> AuthResult<()> {
Ok(())
}
}UserProfile Structure
Field
Offline
Microsoft
Azuriom
Error Handling
Authentication Flows
Offline Mode
Microsoft OAuth2
Azuriom CMS
Event System Integration
HTTP Client Architecture
Thread Safety
Shared State
Concurrent Authentication
Security Considerations
Password Handling
Token Storage
UUID Generation
Performance Characteristics
Provider
Network Requests
Typical Latency
Blocking Operations
Extension Points
Custom Providers
Custom Event Types
Best Practices
Error Handling
Event Bus Usage
Token Management
Last updated