mirror of https://github.com/jumpserver/jumpserver
perf: 优化rdp文件名的显示
parent
abcd12f645
commit
acf8b5798b
|
@ -22,7 +22,6 @@ from ..serializers import (
|
||||||
)
|
)
|
||||||
from ..models import ConnectionToken
|
from ..models import ConnectionToken
|
||||||
|
|
||||||
|
|
||||||
__all__ = ['ConnectionTokenViewSet', 'SuperConnectionTokenViewSet']
|
__all__ = ['ConnectionTokenViewSet', 'SuperConnectionTokenViewSet']
|
||||||
|
|
||||||
|
|
||||||
|
@ -174,9 +173,8 @@ class ConnectionTokenMixin:
|
||||||
rdp_options['remoteapplicationname:s'] = name
|
rdp_options['remoteapplicationname:s'] = name
|
||||||
else:
|
else:
|
||||||
name = '*'
|
name = '*'
|
||||||
|
prefix_name = f'{token.user.username}-{name}'
|
||||||
filename = "{}-{}-jumpserver".format(token.user.username, name)
|
filename = self.get_connect_filename(prefix_name)
|
||||||
filename = urllib.parse.quote(filename)
|
|
||||||
|
|
||||||
content = ''
|
content = ''
|
||||||
for k, v in rdp_options.items():
|
for k, v in rdp_options.items():
|
||||||
|
@ -184,6 +182,15 @@ class ConnectionTokenMixin:
|
||||||
|
|
||||||
return filename, content
|
return filename, content
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def get_connect_filename(prefix_name):
|
||||||
|
prefix_name = prefix_name.replace('/', '_')
|
||||||
|
prefix_name = prefix_name.replace('\\', '_')
|
||||||
|
prefix_name = prefix_name.replace('.', '_')
|
||||||
|
filename = f'{prefix_name}-jumpserver'
|
||||||
|
filename = urllib.parse.quote(filename)
|
||||||
|
return filename
|
||||||
|
|
||||||
def get_ssh_token(self, token: ConnectionToken):
|
def get_ssh_token(self, token: ConnectionToken):
|
||||||
if token.asset:
|
if token.asset:
|
||||||
name = token.asset.hostname
|
name = token.asset.hostname
|
||||||
|
@ -191,7 +198,8 @@ class ConnectionTokenMixin:
|
||||||
name = token.application.name
|
name = token.application.name
|
||||||
else:
|
else:
|
||||||
name = '*'
|
name = '*'
|
||||||
filename = f'{token.user.username}-{name}-jumpserver'
|
prefix_name = f'{token.user.username}-{name}'
|
||||||
|
filename = self.get_connect_filename(prefix_name)
|
||||||
|
|
||||||
endpoint = self.get_smart_endpoint(
|
endpoint = self.get_smart_endpoint(
|
||||||
protocol='ssh', asset=token.asset, application=token.application
|
protocol='ssh', asset=token.asset, application=token.application
|
||||||
|
@ -326,4 +334,3 @@ class SuperConnectionTokenViewSet(ConnectionTokenViewSet):
|
||||||
'msg': f'Token is renewed, date expired: {date_expired}'
|
'msg': f'Token is renewed, date expired: {date_expired}'
|
||||||
}
|
}
|
||||||
return Response(data=data, status=status.HTTP_200_OK)
|
return Response(data=data, status=status.HTTP_200_OK)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue