| @@ -168,6 +168,8 @@ COOKIE_USERNAME = gitea_awesome | |||||
| COOKIE_REMEMBER_NAME = gitea_incredible | COOKIE_REMEMBER_NAME = gitea_incredible | ||||
| ; Reverse proxy authentication header name of user name | ; Reverse proxy authentication header name of user name | ||||
| REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER | REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER | ||||
| ; Sets the minimum password length for new Users | |||||
| MIN_PASSWORD_LENGTH = 6 | |||||
| [service] | [service] | ||||
| ACTIVE_CODE_LIVE_MINUTES = 180 | ACTIVE_CODE_LIVE_MINUTES = 180 | ||||
| @@ -96,6 +96,7 @@ var ( | |||||
| CookieUserName string | CookieUserName string | ||||
| CookieRememberName string | CookieRememberName string | ||||
| ReverseProxyAuthUser string | ReverseProxyAuthUser string | ||||
| MinPasswordLength int | |||||
| // Database settings | // Database settings | ||||
| UseSQLite3 bool | UseSQLite3 bool | ||||
| @@ -589,6 +590,11 @@ please consider changing to GITEA_CUSTOM`) | |||||
| CookieUserName = sec.Key("COOKIE_USERNAME").MustString("gitea_awesome") | CookieUserName = sec.Key("COOKIE_USERNAME").MustString("gitea_awesome") | ||||
| CookieRememberName = sec.Key("COOKIE_REMEMBER_NAME").MustString("gitea_incredible") | CookieRememberName = sec.Key("COOKIE_REMEMBER_NAME").MustString("gitea_incredible") | ||||
| ReverseProxyAuthUser = sec.Key("REVERSE_PROXY_AUTHENTICATION_USER").MustString("X-WEBAUTH-USER") | ReverseProxyAuthUser = sec.Key("REVERSE_PROXY_AUTHENTICATION_USER").MustString("X-WEBAUTH-USER") | ||||
| MinPasswordLength = sec.Key("MIN_PASSWORD_LENGTH").MustInt() | |||||
| if MinPasswordLength == 0 { | |||||
| MinPasswordLength = 6 | |||||
| } | |||||
| sec = Cfg.Section("attachment") | sec = Cfg.Section("attachment") | ||||
| AttachmentPath = sec.Key("PATH").MustString(path.Join(AppDataPath, "attachments")) | AttachmentPath = sec.Key("PATH").MustString(path.Join(AppDataPath, "attachments")) | ||||
| @@ -165,7 +165,7 @@ send_reset_mail = Click here to (re)send your password reset email | |||||
| reset_password = Reset Your Password | reset_password = Reset Your Password | ||||
| invalid_code = Sorry, your confirmation code has expired or not valid. | invalid_code = Sorry, your confirmation code has expired or not valid. | ||||
| reset_password_helper = Click here to reset your password | reset_password_helper = Click here to reset your password | ||||
| password_too_short = Password length cannot be less then 6. | |||||
| password_too_short = Password length cannot be less then %d. | |||||
| non_local_account = Non-local accounts cannot change passwords through Gitea. | non_local_account = Non-local accounts cannot change passwords through Gitea. | ||||
| [mail] | [mail] | ||||
| @@ -203,6 +203,11 @@ func SignUpPost(ctx *context.Context, cpt *captcha.Captcha, form auth.RegisterFo | |||||
| ctx.RenderWithErr(ctx.Tr("form.password_not_match"), tplSignUp, &form) | ctx.RenderWithErr(ctx.Tr("form.password_not_match"), tplSignUp, &form) | ||||
| return | return | ||||
| } | } | ||||
| if len(form.Password) < setting.MinPasswordLength { | |||||
| ctx.Data["Err_Password"] = true | |||||
| ctx.RenderWithErr(ctx.Tr("auth.password_too_short", setting.MinPasswordLength), tplSignUp, &form) | |||||
| return | |||||
| } | |||||
| u := &models.User{ | u := &models.User{ | ||||
| Name: form.UserName, | Name: form.UserName, | ||||
| @@ -410,7 +415,7 @@ func ResetPasswd(ctx *context.Context) { | |||||
| ctx.HTML(200, tplResetPassword) | ctx.HTML(200, tplResetPassword) | ||||
| } | } | ||||
| // ResetPasswdPost response fro reset password request | |||||
| // ResetPasswdPost response from reset password request | |||||
| func ResetPasswdPost(ctx *context.Context) { | func ResetPasswdPost(ctx *context.Context) { | ||||
| ctx.Data["Title"] = ctx.Tr("auth.reset_password") | ctx.Data["Title"] = ctx.Tr("auth.reset_password") | ||||
| @@ -424,10 +429,10 @@ func ResetPasswdPost(ctx *context.Context) { | |||||
| if u := models.VerifyUserActiveCode(code); u != nil { | if u := models.VerifyUserActiveCode(code); u != nil { | ||||
| // Validate password length. | // Validate password length. | ||||
| passwd := ctx.Query("password") | passwd := ctx.Query("password") | ||||
| if len(passwd) < 6 { | |||||
| if len(passwd) < setting.MinPasswordLength { | |||||
| ctx.Data["IsResetForm"] = true | ctx.Data["IsResetForm"] = true | ||||
| ctx.Data["Err_Password"] = true | ctx.Data["Err_Password"] = true | ||||
| ctx.RenderWithErr(ctx.Tr("auth.password_too_short"), tplResetPassword, nil) | |||||
| ctx.RenderWithErr(ctx.Tr("auth.password_too_short", setting.MinPasswordLength), tplResetPassword, nil) | |||||
| return | return | ||||
| } | } | ||||