mirror of
https://github.com/janeczku/calibre-web
synced 2025-10-12 22:27:41 +00:00
Improved js password strength check
Improved check of CJK-Characters
This commit is contained in:
@@ -22,6 +22,7 @@ import random
|
||||
import io
|
||||
import mimetypes
|
||||
import re
|
||||
import regex
|
||||
import shutil
|
||||
import socket
|
||||
from datetime import datetime, timedelta
|
||||
@@ -54,7 +55,8 @@ from . import calibre_db, cli_param
|
||||
from .tasks.convert import TaskConvert
|
||||
from . import logger, config, db, ub, fs
|
||||
from . import gdriveutils as gd
|
||||
from .constants import STATIC_DIR as _STATIC_DIR, CACHE_TYPE_THUMBNAILS, THUMBNAIL_TYPE_COVER, THUMBNAIL_TYPE_SERIES, SUPPORTED_CALIBRE_BINARIES
|
||||
from .constants import (STATIC_DIR as _STATIC_DIR, CACHE_TYPE_THUMBNAILS, THUMBNAIL_TYPE_COVER, THUMBNAIL_TYPE_SERIES,
|
||||
SUPPORTED_CALIBRE_BINARIES)
|
||||
from .subproc_wrapper import process_wait
|
||||
from .services.worker import WorkerThread
|
||||
from .tasks.mail import TaskEmail
|
||||
@@ -694,14 +696,16 @@ def valid_password(check_password):
|
||||
if config.config_password_min_length > 0:
|
||||
verify += r"^(?=.{" + str(config.config_password_min_length) + ",}$)"
|
||||
if config.config_password_number:
|
||||
verify += r"(?=.*?\d)"
|
||||
verify += "(?=.*?\d)"
|
||||
if config.config_password_lower:
|
||||
verify += r"(?=.*?[a-z])"
|
||||
verify += "(?=.*?[\p{Ll}])"
|
||||
if config.config_password_upper:
|
||||
verify += r"(?=.*?[A-Z])"
|
||||
verify += "(?=.*?[\p{Lu}])"
|
||||
if config.config_password_character:
|
||||
verify += "(?=.*?[\p{Letter}])"
|
||||
if config.config_password_special:
|
||||
verify += r"(?=.*?[^A-Za-z\s0-9])"
|
||||
match = re.match(verify, unidecode.unidecode(check_password))
|
||||
verify += "(?=.*?[^\p{Letter}\s0-9])"
|
||||
match = regex.match(verify, check_password)
|
||||
if not match:
|
||||
raise Exception(_("Password doesn't comply with password validation rules"))
|
||||
return check_password
|
||||
|
Reference in New Issue
Block a user