- Added JWT authentication with token generation and validation. - Introduced user registration functionality with email and password. - Integrated Argon2 for password hashing. - Created SQLite user repository for user data persistence. - Updated application context to include user repository and configuration settings. - Added environment variable support for JWT secret and registration allowance. - Enhanced error handling for unauthorized access and validation errors. - Updated presentation layer to handle login and registration requests.
14 lines
316 B
Rust
14 lines
316 B
Rust
#[derive(Clone)]
|
|
pub struct AppConfig {
|
|
pub allow_registration: bool,
|
|
}
|
|
|
|
impl AppConfig {
|
|
pub fn from_env() -> Self {
|
|
let allow_registration = std::env::var("ALLOW_REGISTRATION")
|
|
.map(|v| v == "true" || v == "1")
|
|
.unwrap_or(false);
|
|
Self { allow_registration }
|
|
}
|
|
}
|