提交 f11d3c1c 编写于 作者: X xinwen 提交者: baltery

fix: 过期用户登录提示无效

上级 f0bad5f1
...@@ -16,6 +16,7 @@ reason_user_not_exist = 'user_not_exist' ...@@ -16,6 +16,7 @@ reason_user_not_exist = 'user_not_exist'
reason_password_expired = 'password_expired' reason_password_expired = 'password_expired'
reason_user_invalid = 'user_invalid' reason_user_invalid = 'user_invalid'
reason_user_inactive = 'user_inactive' reason_user_inactive = 'user_inactive'
reason_user_expired = 'user_expired'
reason_backend_not_match = 'backend_not_match' reason_backend_not_match = 'backend_not_match'
reason_acl_not_allow = 'acl_not_allow' reason_acl_not_allow = 'acl_not_allow'
...@@ -28,6 +29,7 @@ reason_choices = { ...@@ -28,6 +29,7 @@ reason_choices = {
reason_password_expired: _("Password expired"), reason_password_expired: _("Password expired"),
reason_user_invalid: _('Disabled or expired'), reason_user_invalid: _('Disabled or expired'),
reason_user_inactive: _("This account is inactive."), reason_user_inactive: _("This account is inactive."),
reason_user_expired: _("This account is expired"),
reason_backend_not_match: _("Auth backend not match"), reason_backend_not_match: _("Auth backend not match"),
reason_acl_not_allow: _("ACL is not allowed"), reason_acl_not_allow: _("ACL is not allowed"),
} }
......
...@@ -171,7 +171,7 @@ class AuthMixin: ...@@ -171,7 +171,7 @@ class AuthMixin:
if not user: if not user:
self.raise_credential_error(errors.reason_password_failed) self.raise_credential_error(errors.reason_password_failed)
elif user.is_expired: elif user.is_expired:
self.raise_credential_error(errors.reason_user_inactive) self.raise_credential_error(errors.reason_user_expired)
elif not user.is_active: elif not user.is_active:
self.raise_credential_error(errors.reason_user_inactive) self.raise_credential_error(errors.reason_user_inactive)
return user return user
......
...@@ -667,6 +667,11 @@ class User(AuthMixin, TokenMixin, RoleMixin, MFAMixin, AbstractUser): ...@@ -667,6 +667,11 @@ class User(AuthMixin, TokenMixin, RoleMixin, MFAMixin, AbstractUser):
else: else:
return user_default return user_default
def unblock_login(self):
from users.utils import LoginBlockUtil, MFABlockUtils
LoginBlockUtil.unblock_user(self.username)
MFABlockUtils.unblock_user(self.username)
@property @property
def login_blocked(self): def login_blocked(self):
from users.utils import LoginBlockUtil, MFABlockUtils from users.utils import LoginBlockUtil, MFABlockUtils
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册