mirror of https://github.com/jumpserver/jumpserver
[Update] 登录日志逻辑修改变量名
parent
2eda58eadd
commit
43370c547a
|
@ -150,23 +150,23 @@ class UserOtpAuthApi(APIView):
|
|||
|
||||
if not check_otp_code(user.otp_secret_key, otp_code):
|
||||
# Write login failed log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': user.username,
|
||||
'mfa': int(user.otp_enabled),
|
||||
'reason': LoginLog.REASON_MFA,
|
||||
'status': False
|
||||
}
|
||||
self.write_login_log(request, **kwargs)
|
||||
self.write_login_log(request, data)
|
||||
return Response({'msg': 'MFA认证失败'}, status=401)
|
||||
|
||||
# Write login success log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': user.username,
|
||||
'mfa': int(user.otp_enabled),
|
||||
'reason': LoginLog.REASON_NOTHING,
|
||||
'status': True
|
||||
}
|
||||
self.write_login_log(request, **kwargs)
|
||||
self.write_login_log(request, data)
|
||||
token = generate_token(request, user)
|
||||
return Response(
|
||||
{
|
||||
|
@ -176,7 +176,7 @@ class UserOtpAuthApi(APIView):
|
|||
)
|
||||
|
||||
@staticmethod
|
||||
def write_login_log(request, **kwargs):
|
||||
def write_login_log(request, data):
|
||||
login_ip = request.data.get('remote_addr', None)
|
||||
login_type = request.data.get('login_type', '')
|
||||
user_agent = request.data.get('HTTP_USER_AGENT', '')
|
||||
|
@ -184,13 +184,13 @@ class UserOtpAuthApi(APIView):
|
|||
if not login_ip:
|
||||
login_ip = get_login_ip(request)
|
||||
|
||||
data = {
|
||||
tmp_data = {
|
||||
'ip': login_ip,
|
||||
'type': login_type,
|
||||
'user_agent': user_agent
|
||||
}
|
||||
kwargs.update(data)
|
||||
write_login_log_async.delay(**kwargs)
|
||||
data.update(tmp_data)
|
||||
write_login_log_async.delay(**data)
|
||||
|
||||
|
||||
class UserAuthApi(APIView):
|
||||
|
@ -202,24 +202,24 @@ class UserAuthApi(APIView):
|
|||
|
||||
if not user:
|
||||
# Write login failed log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': request.data.get('username', ''),
|
||||
'mfa': LoginLog.MFA_UNKNOWN,
|
||||
'reason': LoginLog.REASON_PASSWORD,
|
||||
'status': False
|
||||
}
|
||||
self.write_login_log(request, **kwargs)
|
||||
self.write_login_log(request, data)
|
||||
return Response({'msg': msg}, status=401)
|
||||
|
||||
if not user.otp_enabled:
|
||||
# Write login success log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': user.username,
|
||||
'mfa': int(user.otp_enabled),
|
||||
'reason': LoginLog.REASON_NOTHING,
|
||||
'status': True
|
||||
}
|
||||
self.write_login_log(request, **kwargs)
|
||||
self.write_login_log(request, data)
|
||||
token = generate_token(request, user)
|
||||
return Response(
|
||||
{
|
||||
|
@ -252,7 +252,7 @@ class UserAuthApi(APIView):
|
|||
return user, msg
|
||||
|
||||
@staticmethod
|
||||
def write_login_log(request, **kwargs):
|
||||
def write_login_log(request, data):
|
||||
login_ip = request.data.get('remote_addr', None)
|
||||
login_type = request.data.get('login_type', '')
|
||||
user_agent = request.data.get('HTTP_USER_AGENT', '')
|
||||
|
@ -260,14 +260,14 @@ class UserAuthApi(APIView):
|
|||
if not login_ip:
|
||||
login_ip = get_login_ip(request)
|
||||
|
||||
data = {
|
||||
tmp_data = {
|
||||
'ip': login_ip,
|
||||
'type': login_type,
|
||||
'user_agent': user_agent,
|
||||
}
|
||||
kwargs.update(data)
|
||||
data.update(tmp_data)
|
||||
|
||||
write_login_log_async.delay(**kwargs)
|
||||
write_login_log_async.delay(**data)
|
||||
|
||||
|
||||
class UserConnectionTokenApi(APIView):
|
||||
|
|
|
@ -67,13 +67,13 @@ class UserLoginView(FormView):
|
|||
|
||||
def form_invalid(self, form):
|
||||
# Write login failed log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': form.cleaned_data.get('username'),
|
||||
'mfa': LoginLog.MFA_UNKNOWN,
|
||||
'reason': LoginLog.REASON_PASSWORD,
|
||||
'status': False
|
||||
}
|
||||
self.write_login_log(**kwargs)
|
||||
self.write_login_log(data)
|
||||
|
||||
ip = get_login_ip(self.request)
|
||||
cache.set(self.key_prefix.format(ip), 1, 3600)
|
||||
|
@ -102,13 +102,13 @@ class UserLoginView(FormView):
|
|||
# 0 & T,F
|
||||
auth_login(self.request, user)
|
||||
# Write login success log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': self.request.user.username,
|
||||
'mfa': int(self.request.user.otp_enabled),
|
||||
'reason': LoginLog.REASON_NOTHING,
|
||||
'status': True
|
||||
}
|
||||
self.write_login_log(**kwargs)
|
||||
self.write_login_log(data)
|
||||
return redirect_user_first_login_or_index(self.request, self.redirect_field_name)
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
|
@ -118,16 +118,16 @@ class UserLoginView(FormView):
|
|||
kwargs.update(context)
|
||||
return super().get_context_data(**kwargs)
|
||||
|
||||
def write_login_log(self, **kwargs):
|
||||
def write_login_log(self, data):
|
||||
login_ip = get_login_ip(self.request)
|
||||
user_agent = self.request.META.get('HTTP_USER_AGENT', '')
|
||||
data = {
|
||||
tmp_data = {
|
||||
'ip': login_ip,
|
||||
'type': 'W',
|
||||
'user_agent': user_agent
|
||||
}
|
||||
kwargs.update(data)
|
||||
write_login_log_async.delay(**kwargs)
|
||||
data.update(tmp_data)
|
||||
write_login_log_async.delay(**data)
|
||||
|
||||
|
||||
class UserLoginOtpView(FormView):
|
||||
|
@ -143,39 +143,39 @@ class UserLoginOtpView(FormView):
|
|||
if check_otp_code(otp_secret_key, otp_code):
|
||||
auth_login(self.request, user)
|
||||
# Write login success log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': self.request.user.username,
|
||||
'mfa': int(self.request.user.otp_enabled),
|
||||
'reason': LoginLog.REASON_NOTHING,
|
||||
'status': True
|
||||
}
|
||||
self.write_login_log(**kwargs)
|
||||
self.write_login_log(data)
|
||||
return redirect(self.get_success_url())
|
||||
else:
|
||||
# Write login failed log
|
||||
kwargs = {
|
||||
data = {
|
||||
'username': user.username,
|
||||
'mfa': int(user.otp_enabled),
|
||||
'reason': LoginLog.REASON_MFA,
|
||||
'status': False
|
||||
}
|
||||
self.write_login_log(**kwargs)
|
||||
self.write_login_log(data)
|
||||
form.add_error('otp_code', _('MFA code invalid'))
|
||||
return super().form_invalid(form)
|
||||
|
||||
def get_success_url(self):
|
||||
return redirect_user_first_login_or_index(self.request, self.redirect_field_name)
|
||||
|
||||
def write_login_log(self, **kwargs):
|
||||
def write_login_log(self, data):
|
||||
login_ip = get_login_ip(self.request)
|
||||
user_agent = self.request.META.get('HTTP_USER_AGENT', '')
|
||||
data = {
|
||||
tmp_data = {
|
||||
'ip': login_ip,
|
||||
'type': 'W',
|
||||
'user_agent': user_agent
|
||||
}
|
||||
kwargs.update(data)
|
||||
write_login_log_async.delay(**kwargs)
|
||||
data.update(tmp_data)
|
||||
write_login_log_async.delay(**data)
|
||||
|
||||
|
||||
@method_decorator(never_cache, name='dispatch')
|
||||
|
|
Loading…
Reference in New Issue