Browse Source
Merge pull request #3986 from admav/config_email_change
New config option disable email change
pull/3990/head
Daniel García
1 year ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with
14 additions and
0 deletions
-
.env.template
-
src/api/core/accounts.rs
-
src/config.rs
|
|
@ -97,6 +97,10 @@ |
|
|
|
## Disabled by default. Also check the EVENT_CLEANUP_SCHEDULE and EVENTS_DAYS_RETAIN settings. |
|
|
|
# ORG_EVENTS_ENABLED=false |
|
|
|
|
|
|
|
## Controls whether users can change their email. |
|
|
|
## This setting applies globally to all users |
|
|
|
# EMAIL_CHANGE_ALLOWED=true |
|
|
|
|
|
|
|
## Number of days to retain events stored in the database. |
|
|
|
## If unset (the default), events are kept indefinitely and the scheduled job is disabled! |
|
|
|
# EVENTS_DAYS_RETAIN= |
|
|
|
|
|
@ -533,6 +533,10 @@ struct EmailTokenData { |
|
|
|
|
|
|
|
#[post("/accounts/email-token", data = "<data>")] |
|
|
|
async fn post_email_token(data: JsonUpcase<EmailTokenData>, headers: Headers, mut conn: DbConn) -> EmptyResult { |
|
|
|
if !CONFIG.email_change_allowed() { |
|
|
|
err!("Email change is not allowed."); |
|
|
|
} |
|
|
|
|
|
|
|
let data: EmailTokenData = data.into_inner().data; |
|
|
|
let mut user = headers.user; |
|
|
|
|
|
|
@ -579,6 +583,10 @@ async fn post_email( |
|
|
|
mut conn: DbConn, |
|
|
|
nt: Notify<'_>, |
|
|
|
) -> EmptyResult { |
|
|
|
if !CONFIG.email_change_allowed() { |
|
|
|
err!("Email change is not allowed."); |
|
|
|
} |
|
|
|
|
|
|
|
let data: ChangeEmailData = data.into_inner().data; |
|
|
|
let mut user = headers.user; |
|
|
|
|
|
|
|
|
|
@ -480,6 +480,8 @@ make_config! { |
|
|
|
invitation_expiration_hours: u32, false, def, 120; |
|
|
|
/// Allow emergency access |> Controls whether users can enable emergency access to their accounts. This setting applies globally to all users.
|
|
|
|
emergency_access_allowed: bool, true, def, true; |
|
|
|
/// Allow email change |> Controls whether users can change their email. This setting applies globally to all users.
|
|
|
|
email_change_allowed: bool, true, def, true; |
|
|
|
/// Password iterations |> Number of server-side passwords hashing iterations for the password hash.
|
|
|
|
/// The default for new users. If changed, it will be updated during login for existing users.
|
|
|
|
password_iterations: i32, true, def, 600_000; |
|
|
|