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
17ccac92
Commit
17ccac92
authored
Nov 24, 2015
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix 加密bug
parent
a7a030fe
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
6 deletions
+12
-6
views.py
jlog/views.py
+4
-2
api.py
jumpserver/api.py
+1
-1
run_websocket.py
run_websocket.py
+7
-3
No files found.
jlog/views.py
View file @
17ccac92
...
@@ -104,6 +104,7 @@ def log_record(request):
...
@@ -104,6 +104,7 @@ def log_record(request):
return
HttpResponse
(
'无日志记录!'
)
return
HttpResponse
(
'无日志记录!'
)
@require_role
(
'user'
)
def
get_role_name
(
request
):
def
get_role_name
(
request
):
asset_id
=
request
.
GET
.
get
(
'id'
,
9999
)
asset_id
=
request
.
GET
.
get
(
'id'
,
9999
)
asset
=
get_object
(
Asset
,
id
=
asset_id
)
asset
=
get_object
(
Asset
,
id
=
asset_id
)
...
@@ -113,9 +114,10 @@ def get_role_name(request):
...
@@ -113,9 +114,10 @@ def get_role_name(request):
return
HttpResponse
(
'error'
)
return
HttpResponse
(
'error'
)
@require_role
()
@require_role
(
'user'
)
def
web_terminal
(
request
):
def
web_terminal
(
request
):
asset_id
=
request
.
GET
.
get
(
'id'
)
asset_id
=
request
.
GET
.
get
(
'id'
)
web_terminal_uri
=
'ws://
%
s/terminal?id=
%
s&role=dev'
%
(
WEB_SOCKET_HOST
,
asset_id
)
role_name
=
request
.
GET
.
get
(
'role'
)
web_terminal_uri
=
'ws://
%
s/terminal?id=
%
s&role=
%
s'
%
(
WEB_SOCKET_HOST
,
asset_id
,
role_name
)
return
render_to_response
(
'jlog/web_terminal.html'
,
locals
())
return
render_to_response
(
'jlog/web_terminal.html'
,
locals
())
jumpserver/api.py
View file @
17ccac92
...
@@ -59,7 +59,7 @@ def get_asset_info(asset):
...
@@ -59,7 +59,7 @@ def get_asset_info(asset):
else
:
else
:
info
[
'port'
]
=
asset
.
port
info
[
'port'
]
=
asset
.
port
info
[
'username'
]
=
asset
.
username
info
[
'username'
]
=
asset
.
username
info
[
'password'
]
=
asset
.
password
info
[
'password'
]
=
CRYPTOR
.
decrypt
(
asset
.
password
)
return
info
return
info
...
...
run_websocket.py
View file @
17ccac92
...
@@ -257,12 +257,16 @@ class WebTerminalHandler(tornado.websocket.WebSocketHandler):
...
@@ -257,12 +257,16 @@ class WebTerminalHandler(tornado.websocket.WebSocketHandler):
login_role
=
role
login_role
=
role
break
break
if
not
login_role
:
if
not
login_role
:
logger
.
warning
(
'Websocket: Not that Role
%
s for Host:
%
s User:
%
s '
%
(
role_name
,
asset
.
name
,
logger
.
warning
(
'Websocket: Not that Role
%
s for Host:
%
s User:
%
s '
%
(
role_name
,
asset
.
host
name
,
self
.
user
.
username
))
self
.
user
.
username
))
self
.
close
()
self
.
close
()
return
return
logger
.
debug
(
'Websocket: request web terminal Host:
%
s User:
%
s Role:
%
s'
%
())
else
:
# Todo: 判断
logger
.
warning
(
'Websocket: No that Host:
%
s User:
%
s '
%
(
asset_id
,
self
.
user
.
username
))
self
.
close
()
return
logger
.
debug
(
'Websocket: request web terminal Host:
%
s User:
%
s Role:
%
s'
%
(
asset
.
hostname
,
self
.
user
.
username
,
login_role
.
name
))
self
.
term
=
WebTty
(
self
.
user
,
self
.
asset
,
login_role
)
self
.
term
=
WebTty
(
self
.
user
,
self
.
asset
,
login_role
)
self
.
term
.
get_connection
()
self
.
term
.
get_connection
()
self
.
term
.
channel
=
self
.
term
.
ssh
.
invoke_shell
(
term
=
'xterm'
)
self
.
term
.
channel
=
self
.
term
.
ssh
.
invoke_shell
(
term
=
'xterm'
)
...
...
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