Expand description
User Details Service for loading users from any data source.
§Spring Security Equivalent
Similar to Spring Security’s UserDetailsService and UserDetailsManager interfaces.
§Features
- Async trait for loading users
- Support for any data source (database, LDAP, API, etc.)
- User management operations (create, update, delete)
- Caching layer support
§Example
ⓘ
use actix_security_core::http::security::user_details::{UserDetailsService, UserDetailsError};
use async_trait::async_trait;
struct MyUserDetailsService {
pool: PgPool,
}
#[async_trait]
impl UserDetailsService for MyUserDetailsService {
async fn load_user_by_username(&self, username: &str) -> Result<Option<User>, UserDetailsError> {
// Load from database...
Ok(Some(user))
}
}Structs§
- Caching
User Details Service - Caching wrapper for UserDetailsService.
- InMemory
User Details Service - In-memory implementation of UserDetailsService.
- User
Details Authenticator - Authenticator that uses a UserDetailsService for credential validation.
Enums§
- User
Details Error - Errors that can occur when loading or managing user details.
Traits§
- User
Details Manager - Extended trait for managing users (CRUD operations).
- User
Details Service - Async trait for loading user details from any data source.