|
|
@ -301,6 +301,7 @@ class MFAMixin:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class AuthPostCheckMixin:
|
|
|
|
class AuthPostCheckMixin:
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
@classmethod
|
|
|
|
def generate_reset_password_url_with_flash_msg(cls, user, message):
|
|
|
|
def generate_reset_password_url_with_flash_msg(cls, user, message):
|
|
|
|
reset_passwd_url = reverse('authentication:reset-password')
|
|
|
|
reset_passwd_url = reverse('authentication:reset-password')
|
|
|
@ -319,6 +320,8 @@ class AuthPostCheckMixin:
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
@classmethod
|
|
|
|
def _check_passwd_is_too_simple(cls, user: User, password):
|
|
|
|
def _check_passwd_is_too_simple(cls, user: User, password):
|
|
|
|
|
|
|
|
if not user.is_auth_backend_model():
|
|
|
|
|
|
|
|
return
|
|
|
|
if user.check_passwd_too_simple(password):
|
|
|
|
if user.check_passwd_too_simple(password):
|
|
|
|
message = _('Your password is too simple, please change it for security')
|
|
|
|
message = _('Your password is too simple, please change it for security')
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message=message)
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message=message)
|
|
|
@ -326,6 +329,8 @@ class AuthPostCheckMixin:
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
@classmethod
|
|
|
|
def _check_passwd_need_update(cls, user: User):
|
|
|
|
def _check_passwd_need_update(cls, user: User):
|
|
|
|
|
|
|
|
if not user.is_auth_backend_model():
|
|
|
|
|
|
|
|
return
|
|
|
|
if user.check_need_update_password():
|
|
|
|
if user.check_need_update_password():
|
|
|
|
message = _('You should to change your password before login')
|
|
|
|
message = _('You should to change your password before login')
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message)
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message)
|
|
|
@ -333,6 +338,8 @@ class AuthPostCheckMixin:
|
|
|
|
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
@classmethod
|
|
|
|
def _check_password_require_reset_or_not(cls, user: User):
|
|
|
|
def _check_password_require_reset_or_not(cls, user: User):
|
|
|
|
|
|
|
|
if not user.is_auth_backend_model():
|
|
|
|
|
|
|
|
return
|
|
|
|
if user.password_has_expired:
|
|
|
|
if user.password_has_expired:
|
|
|
|
message = _('Your password has expired, please reset before logging in')
|
|
|
|
message = _('Your password has expired, please reset before logging in')
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message)
|
|
|
|
url = cls.generate_reset_password_url_with_flash_msg(user, message)
|
|
|
|