Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
43370c54
Commit
43370c54
authored
Jul 04, 2018
by
BaiJiangJie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[Update] 登录日志逻辑修改变量名
parent
2eda58ea
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
32 deletions
+32
-32
api.py
apps/users/api.py
+16
-16
login.py
apps/users/views/login.py
+16
-16
No files found.
apps/users/api.py
View file @
43370c54
...
...
@@ -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
):
...
...
apps/users/views/login.py
View file @
43370c54
...
...
@@ -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'
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment