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
f1f06491
Commit
f1f06491
authored
Jun 29, 2018
by
BaiJiangJie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[Feature] 添加功能, 支持 telnet server.
parent
2e6d238c
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
131 additions
and
104 deletions
+131
-104
asset.py
apps/assets/forms/asset.py
+2
-2
user.py
apps/assets/forms/user.py
+2
-1
asset.py
apps/assets/models/asset.py
+14
-0
user.py
apps/assets/models/user.py
+2
-0
asset.py
apps/assets/serializers/asset.py
+1
-1
_system_user.html
apps/assets/templates/assets/_system_user.html
+9
-2
asset_create.html
apps/assets/templates/assets/asset_create.html
+6
-5
asset_update.html
apps/assets/templates/assets/asset_update.html
+1
-0
django.mo
apps/i18n/zh/LC_MESSAGES/django.mo
+0
-0
django.po
apps/i18n/zh/LC_MESSAGES/django.po
+90
-89
api.py
apps/perms/api.py
+4
-4
No files found.
apps/assets/forms/asset.py
View file @
f1f06491
...
@@ -16,7 +16,7 @@ class AssetCreateForm(forms.ModelForm):
...
@@ -16,7 +16,7 @@ class AssetCreateForm(forms.ModelForm):
fields
=
[
fields
=
[
'hostname'
,
'ip'
,
'public_ip'
,
'port'
,
'comment'
,
'hostname'
,
'ip'
,
'public_ip'
,
'port'
,
'comment'
,
'nodes'
,
'is_active'
,
'admin_user'
,
'labels'
,
'platform'
,
'nodes'
,
'is_active'
,
'admin_user'
,
'labels'
,
'platform'
,
'domain'
,
'domain'
,
'protocol'
,
]
]
widgets
=
{
widgets
=
{
...
@@ -56,7 +56,7 @@ class AssetUpdateForm(forms.ModelForm):
...
@@ -56,7 +56,7 @@ class AssetUpdateForm(forms.ModelForm):
fields
=
[
fields
=
[
'hostname'
,
'ip'
,
'port'
,
'nodes'
,
'is_active'
,
'platform'
,
'hostname'
,
'ip'
,
'port'
,
'nodes'
,
'is_active'
,
'platform'
,
'public_ip'
,
'number'
,
'comment'
,
'admin_user'
,
'labels'
,
'public_ip'
,
'number'
,
'comment'
,
'admin_user'
,
'labels'
,
'domain'
,
'domain'
,
'protocol'
,
]
]
widgets
=
{
widgets
=
{
'nodes'
:
forms
.
SelectMultiple
(
attrs
=
{
'nodes'
:
forms
.
SelectMultiple
(
attrs
=
{
...
...
apps/assets/forms/user.py
View file @
f1f06491
...
@@ -94,10 +94,11 @@ class SystemUserForm(PasswordAndKeyAuthForm):
...
@@ -94,10 +94,11 @@ class SystemUserForm(PasswordAndKeyAuthForm):
system_user
=
super
()
.
save
()
system_user
=
super
()
.
save
()
password
=
self
.
cleaned_data
.
get
(
'password'
,
''
)
or
None
password
=
self
.
cleaned_data
.
get
(
'password'
,
''
)
or
None
login_mode
=
self
.
cleaned_data
.
get
(
'login_mode'
,
''
)
or
None
login_mode
=
self
.
cleaned_data
.
get
(
'login_mode'
,
''
)
or
None
protocol
=
self
.
cleaned_data
.
get
(
'protocol'
)
or
None
auto_generate_key
=
self
.
cleaned_data
.
get
(
'auto_generate_key'
,
False
)
auto_generate_key
=
self
.
cleaned_data
.
get
(
'auto_generate_key'
,
False
)
private_key
,
public_key
=
super
()
.
gen_keys
()
private_key
,
public_key
=
super
()
.
gen_keys
()
if
login_mode
==
SystemUser
.
MANUAL_LOGIN
:
if
login_mode
==
SystemUser
.
MANUAL_LOGIN
or
protocol
==
SystemUser
.
TELNET_PROTOCOL
:
system_user
.
auto_push
=
0
system_user
.
auto_push
=
0
system_user
.
save
()
system_user
.
save
()
...
...
apps/assets/models/asset.py
View file @
f1f06491
...
@@ -57,13 +57,27 @@ class Asset(models.Model):
...
@@ -57,13 +57,27 @@ class Asset(models.Model):
(
'MacOS'
,
'MacOS'
),
(
'MacOS'
,
'MacOS'
),
(
'BSD'
,
'BSD'
),
(
'BSD'
,
'BSD'
),
(
'Windows'
,
'Windows'
),
(
'Windows'
,
'Windows'
),
(
'Windows2016'
,
'Windows(2016)'
),
(
'Other'
,
'Other'
),
(
'Other'
,
'Other'
),
)
)
SSH_PROTOCOL
=
'ssh'
RDP_PROTOCOL
=
'rdp'
TELNET_PROTOCOL
=
'telnet'
PROTOCOL_CHOICES
=
(
(
SSH_PROTOCOL
,
'ssh'
),
(
RDP_PROTOCOL
,
'rdp'
),
(
TELNET_PROTOCOL
,
'telnet (beta)'
),
)
id
=
models
.
UUIDField
(
default
=
uuid
.
uuid4
,
primary_key
=
True
)
id
=
models
.
UUIDField
(
default
=
uuid
.
uuid4
,
primary_key
=
True
)
ip
=
models
.
GenericIPAddressField
(
max_length
=
32
,
verbose_name
=
_
(
'IP'
),
ip
=
models
.
GenericIPAddressField
(
max_length
=
32
,
verbose_name
=
_
(
'IP'
),
db_index
=
True
)
db_index
=
True
)
hostname
=
models
.
CharField
(
max_length
=
128
,
unique
=
True
,
hostname
=
models
.
CharField
(
max_length
=
128
,
unique
=
True
,
verbose_name
=
_
(
'Hostname'
))
verbose_name
=
_
(
'Hostname'
))
protocol
=
models
.
CharField
(
max_length
=
128
,
default
=
SSH_PROTOCOL
,
choices
=
PROTOCOL_CHOICES
,
verbose_name
=
_
(
'Protocol'
))
port
=
models
.
IntegerField
(
default
=
22
,
verbose_name
=
_
(
'Port'
))
port
=
models
.
IntegerField
(
default
=
22
,
verbose_name
=
_
(
'Port'
))
platform
=
models
.
CharField
(
max_length
=
128
,
choices
=
PLATFORM_CHOICES
,
platform
=
models
.
CharField
(
max_length
=
128
,
choices
=
PLATFORM_CHOICES
,
default
=
'Linux'
,
verbose_name
=
_
(
'Platform'
))
default
=
'Linux'
,
verbose_name
=
_
(
'Platform'
))
...
...
apps/assets/models/user.py
View file @
f1f06491
...
@@ -95,9 +95,11 @@ class AdminUser(AssetUser):
...
@@ -95,9 +95,11 @@ class AdminUser(AssetUser):
class
SystemUser
(
AssetUser
):
class
SystemUser
(
AssetUser
):
SSH_PROTOCOL
=
'ssh'
SSH_PROTOCOL
=
'ssh'
RDP_PROTOCOL
=
'rdp'
RDP_PROTOCOL
=
'rdp'
TELNET_PROTOCOL
=
'telnet'
PROTOCOL_CHOICES
=
(
PROTOCOL_CHOICES
=
(
(
SSH_PROTOCOL
,
'ssh'
),
(
SSH_PROTOCOL
,
'ssh'
),
(
RDP_PROTOCOL
,
'rdp'
),
(
RDP_PROTOCOL
,
'rdp'
),
(
TELNET_PROTOCOL
,
'telnet (beta)'
),
)
)
AUTO_LOGIN
=
'auto'
AUTO_LOGIN
=
'auto'
...
...
apps/assets/serializers/asset.py
View file @
f1f06491
...
@@ -43,7 +43,7 @@ class AssetGrantedSerializer(serializers.ModelSerializer):
...
@@ -43,7 +43,7 @@ class AssetGrantedSerializer(serializers.ModelSerializer):
fields
=
(
fields
=
(
"id"
,
"hostname"
,
"ip"
,
"port"
,
"system_users_granted"
,
"id"
,
"hostname"
,
"ip"
,
"port"
,
"system_users_granted"
,
"is_active"
,
"system_users_join"
,
"os"
,
'domain'
,
"is_active"
,
"system_users_join"
,
"os"
,
'domain'
,
"platform"
,
"comment"
"platform"
,
"comment"
,
"protocol"
,
)
)
@staticmethod
@staticmethod
...
...
apps/assets/templates/assets/_system_user.html
View file @
f1f06491
...
@@ -104,7 +104,14 @@ function protocolChange() {
...
@@ -104,7 +104,14 @@ function protocolChange() {
$
.
each
(
need_change_field
,
function
(
index
,
value
)
{
$
.
each
(
need_change_field
,
function
(
index
,
value
)
{
$
(
value
).
closest
(
'.form-group'
).
addClass
(
'hidden'
)
$
(
value
).
closest
(
'.form-group'
).
addClass
(
'hidden'
)
});
});
}
else
{
}
else
if
(
$
(
protocol_id
+
" option:selected"
).
text
()
===
'telnet (beta)'
)
{
$
(
'.auth-fields'
).
removeClass
(
'hidden'
);
$
.
each
(
need_change_field
,
function
(
index
,
value
)
{
$
(
value
).
closest
(
'.form-group'
).
addClass
(
'hidden'
)
});
}
else
{
if
(
$
(
login_mode_id
).
val
()
===
'manual'
){
if
(
$
(
login_mode_id
).
val
()
===
'manual'
){
$
(
sudo_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
);
$
(
sudo_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
);
$
(
shell_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
);
$
(
shell_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
);
...
@@ -133,8 +140,8 @@ function loginModeChange(){
...
@@ -133,8 +140,8 @@ function loginModeChange(){
}
}
else
if
(
$
(
login_mode_id
).
val
()
===
'auto'
){
else
if
(
$
(
login_mode_id
).
val
()
===
'auto'
){
$
(
'#auth_title_id'
).
removeClass
(
'hidden'
);
$
(
'#auth_title_id'
).
removeClass
(
'hidden'
);
protocolChange
();
$
(
password_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
)
$
(
password_id
).
closest
(
'.form-group'
).
removeClass
(
'hidden'
)
protocolChange
();
}
}
}
}
...
...
apps/assets/templates/assets/asset_create.html
View file @
f1f06491
...
@@ -17,6 +17,7 @@
...
@@ -17,6 +17,7 @@
{% bootstrap_field form.hostname layout="horizontal" %}
{% bootstrap_field form.hostname layout="horizontal" %}
{% bootstrap_field form.platform layout="horizontal" %}
{% bootstrap_field form.platform layout="horizontal" %}
{% bootstrap_field form.ip layout="horizontal" %}
{% bootstrap_field form.ip layout="horizontal" %}
{% bootstrap_field form.protocol layout="horizontal" %}
{% bootstrap_field form.port layout="horizontal" %}
{% bootstrap_field form.port layout="horizontal" %}
{% bootstrap_field form.public_ip layout="horizontal" %}
{% bootstrap_field form.public_ip layout="horizontal" %}
{% bootstrap_field form.domain layout="horizontal" %}
{% bootstrap_field form.domain layout="horizontal" %}
...
@@ -85,14 +86,14 @@ $(document).ready(function () {
...
@@ -85,14 +86,14 @@ $(document).ready(function () {
allowClear
:
true
,
allowClear
:
true
,
templateSelection
:
format
templateSelection
:
format
});
});
$
(
"#id_p
latform
"
).
change
(
function
(){
$
(
"#id_p
rotocol
"
).
change
(
function
(){
var
p
latform
=
$
(
"#id_platform
option:selected"
).
text
();
var
p
rotocol
=
$
(
"#id_protocol
option:selected"
).
text
();
var
port
=
22
;
var
port
=
22
;
if
(
p
latform
===
'Windows
'
){
if
(
p
rotocol
===
'rdp
'
){
port
=
3389
;
port
=
3389
;
}
}
if
(
p
latform
===
'Other
'
){
if
(
p
rotocol
===
'telnet (beta)
'
){
port
=
null
;
port
=
23
;
}
}
$
(
"#id_port"
).
val
(
port
);
$
(
"#id_port"
).
val
(
port
);
});
});
...
...
apps/assets/templates/assets/asset_update.html
View file @
f1f06491
...
@@ -21,6 +21,7 @@
...
@@ -21,6 +21,7 @@
<h3>
{% trans 'Basic' %}
</h3>
<h3>
{% trans 'Basic' %}
</h3>
{% bootstrap_field form.hostname layout="horizontal" %}
{% bootstrap_field form.hostname layout="horizontal" %}
{% bootstrap_field form.ip layout="horizontal" %}
{% bootstrap_field form.ip layout="horizontal" %}
{% bootstrap_field form.protocol layout="horizontal" %}
{% bootstrap_field form.port layout="horizontal" %}
{% bootstrap_field form.port layout="horizontal" %}
{% bootstrap_field form.platform layout="horizontal" %}
{% bootstrap_field form.platform layout="horizontal" %}
{% bootstrap_field form.public_ip layout="horizontal" %}
{% bootstrap_field form.public_ip layout="horizontal" %}
...
...
apps/i18n/zh/LC_MESSAGES/django.mo
View file @
f1f06491
No preview for this file type
apps/i18n/zh/LC_MESSAGES/django.po
View file @
f1f06491
...
@@ -8,7 +8,7 @@ msgid ""
...
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
msgstr ""
"Project-Id-Version: Jumpserver 0.3.3\n"
"Project-Id-Version: Jumpserver 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-06-
11 13:36
+0800\n"
"POT-Creation-Date: 2018-06-
25 12:19
+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Language-Team: Jumpserver team<ibuler@qq.com>\n"
"Language-Team: Jumpserver team<ibuler@qq.com>\n"
...
@@ -29,7 +29,7 @@ msgstr ""
...
@@ -29,7 +29,7 @@ msgstr ""
msgid "测试节点下资产是否可连接: {}"
msgid "测试节点下资产是否可连接: {}"
msgstr ""
msgstr ""
#: assets/forms/asset.py:24 assets/models/asset.py:
75 assets/models/user.py:110
#: assets/forms/asset.py:24 assets/models/asset.py:
89 assets/models/user.py:112
#: assets/templates/assets/asset_detail.html:183
#: assets/templates/assets/asset_detail.html:183
#: assets/templates/assets/asset_detail.html:191
#: assets/templates/assets/asset_detail.html:191
#: assets/templates/assets/system_user_detail.html:179 perms/models.py:33
#: assets/templates/assets/system_user_detail.html:179 perms/models.py:33
...
@@ -37,30 +37,30 @@ msgid "Nodes"
...
@@ -37,30 +37,30 @@ msgid "Nodes"
msgstr "节点管理"
msgstr "节点管理"
#: assets/forms/asset.py:27 assets/forms/asset.py:66 assets/forms/asset.py:109
#: assets/forms/asset.py:27 assets/forms/asset.py:66 assets/forms/asset.py:109
#: assets/forms/asset.py:113 assets/models/asset.py:
80
#: assets/forms/asset.py:113 assets/models/asset.py:
94
#: assets/models/cluster.py:19 assets/models/user.py:72
#: assets/models/cluster.py:19 assets/models/user.py:72
#: assets/templates/assets/asset_detail.html:73 templates/_nav.html:25
#: assets/templates/assets/asset_detail.html:73 templates/_nav.html:25
msgid "Admin user"
msgid "Admin user"
msgstr "管理用户"
msgstr "管理用户"
#: assets/forms/asset.py:30 assets/forms/asset.py:69 assets/forms/asset.py:125
#: assets/forms/asset.py:30 assets/forms/asset.py:69 assets/forms/asset.py:125
#: assets/templates/assets/asset_create.html:3
5
#: assets/templates/assets/asset_create.html:3
6
#: assets/templates/assets/asset_create.html:3
7
#: assets/templates/assets/asset_create.html:3
8
#: assets/templates/assets/asset_list.html:75
#: assets/templates/assets/asset_list.html:75
#: assets/templates/assets/asset_update.html:4
0
#: assets/templates/assets/asset_update.html:4
1
#: assets/templates/assets/asset_update.html:4
2
#: assets/templates/assets/asset_update.html:4
3
#: assets/templates/assets/user_asset_list.html:34
#: assets/templates/assets/user_asset_list.html:34
msgid "Label"
msgid "Label"
msgstr "标签"
msgstr "标签"
#: assets/forms/asset.py:34 assets/forms/asset.py:73 assets/models/asset.py:
71
#: assets/forms/asset.py:34 assets/forms/asset.py:73 assets/models/asset.py:
85
#: assets/models/domain.py:46
#: assets/models/domain.py:46
msgid "Domain"
msgid "Domain"
msgstr "网域"
msgstr "网域"
#: assets/forms/asset.py:38 assets/forms/asset.py:63 assets/forms/asset.py:77
#: assets/forms/asset.py:38 assets/forms/asset.py:63 assets/forms/asset.py:77
#: assets/forms/asset.py:128 assets/templates/assets/asset_create.html:
29
#: assets/forms/asset.py:128 assets/templates/assets/asset_create.html:
30
#: assets/templates/assets/asset_update.html:3
4
perms/forms.py:40
#: assets/templates/assets/asset_update.html:3
5
perms/forms.py:40
#: perms/forms.py:47 perms/models.py:76
#: perms/forms.py:47 perms/models.py:76
#: perms/templates/perms/asset_permission_list.html:57
#: perms/templates/perms/asset_permission_list.html:57
#: perms/templates/perms/asset_permission_list.html:142
#: perms/templates/perms/asset_permission_list.html:142
...
@@ -90,7 +90,7 @@ msgstr "如果有多个的互相隔离的网络,设置资产属于的网域,
...
@@ -90,7 +90,7 @@ msgstr "如果有多个的互相隔离的网络,设置资产属于的网域,
msgid "Select assets"
msgid "Select assets"
msgstr "选择资产"
msgstr "选择资产"
#: assets/forms/asset.py:105 assets/models/asset.py:
67
#: assets/forms/asset.py:105 assets/models/asset.py:
81
#: assets/models/domain.py:44 assets/templates/assets/admin_user_assets.html:53
#: assets/models/domain.py:44 assets/templates/assets/admin_user_assets.html:53
#: assets/templates/assets/asset_detail.html:69
#: assets/templates/assets/asset_detail.html:69
#: assets/templates/assets/domain_gateway_list.html:58
#: assets/templates/assets/domain_gateway_list.html:58
...
@@ -99,7 +99,7 @@ msgid "Port"
...
@@ -99,7 +99,7 @@ msgid "Port"
msgstr "端口"
msgstr "端口"
#: assets/forms/domain.py:14 assets/forms/label.py:13
#: assets/forms/domain.py:14 assets/forms/label.py:13
#: assets/models/asset.py:2
23
assets/templates/assets/admin_user_list.html:25
#: assets/models/asset.py:2
37
assets/templates/assets/admin_user_list.html:25
#: assets/templates/assets/domain_detail.html:60
#: assets/templates/assets/domain_detail.html:60
#: assets/templates/assets/domain_list.html:15
#: assets/templates/assets/domain_list.html:15
#: assets/templates/assets/label_list.html:16
#: assets/templates/assets/label_list.html:16
...
@@ -118,7 +118,7 @@ msgstr "端口"
...
@@ -118,7 +118,7 @@ msgstr "端口"
msgid "Asset"
msgid "Asset"
msgstr "资产"
msgstr "资产"
#: assets/forms/domain.py:54 assets/forms/user.py:79 assets/forms/user.py:13
1
#: assets/forms/domain.py:54 assets/forms/user.py:79 assets/forms/user.py:13
8
#: assets/models/base.py:21 assets/models/cluster.py:18
#: assets/models/base.py:21 assets/models/cluster.py:18
#: assets/models/domain.py:17 assets/models/group.py:20
#: assets/models/domain.py:17 assets/models/group.py:20
#: assets/models/label.py:17 assets/templates/assets/admin_user_detail.html:56
#: assets/models/label.py:17 assets/templates/assets/admin_user_detail.html:56
...
@@ -147,7 +147,7 @@ msgstr "资产"
...
@@ -147,7 +147,7 @@ msgstr "资产"
msgid "Name"
msgid "Name"
msgstr "名称"
msgstr "名称"
#: assets/forms/domain.py:55 assets/forms/user.py:80 assets/forms/user.py:13
2
#: assets/forms/domain.py:55 assets/forms/user.py:80 assets/forms/user.py:13
9
#: assets/models/base.py:22 assets/templates/assets/admin_user_detail.html:60
#: assets/models/base.py:22 assets/templates/assets/admin_user_detail.html:60
#: assets/templates/assets/admin_user_list.html:24
#: assets/templates/assets/admin_user_list.html:24
#: assets/templates/assets/domain_gateway_list.html:60
#: assets/templates/assets/domain_gateway_list.html:60
...
@@ -192,27 +192,27 @@ msgstr "ssh密钥不合法"
...
@@ -192,27 +192,27 @@ msgstr "ssh密钥不合法"
msgid "Password and private key file must be input one"
msgid "Password and private key file must be input one"
msgstr "密码和私钥, 必须输入一个"
msgstr "密码和私钥, 必须输入一个"
#: assets/forms/user.py:1
18
#: assets/forms/user.py:1
24
msgid "* Automatic login mode, must fill in the username."
msgid "* Automatic login mode, must fill in the username."
msgstr "自动登录模式,必须填写用户名"
msgstr "自动登录模式,必须填写用户名"
#: assets/forms/user.py:1
37
#: assets/forms/user.py:1
44
msgid "Auto push system user to asset"
msgid "Auto push system user to asset"
msgstr "自动推送系统用户到资产"
msgstr "自动推送系统用户到资产"
#: assets/forms/user.py:1
38
#: assets/forms/user.py:1
45
msgid ""
msgid ""
"High level will be using login asset as default, if user was granted more "
"High level will be using login asset as default, if user was granted more "
"than 2 system user"
"than 2 system user"
msgstr "高优先级的系统用户将会作为默认登录用户"
msgstr "高优先级的系统用户将会作为默认登录用户"
#: assets/forms/user.py:1
39
#: assets/forms/user.py:1
47
msgid ""
msgid ""
"If you choose manual login mode, you do not need to fill in the username and "
"If you choose manual login mode, you do not need to fill in the username and "
"password."
"password."
msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
#: assets/models/asset.py:
63
assets/models/domain.py:43
#: assets/models/asset.py:
74
assets/models/domain.py:43
#: assets/templates/assets/_asset_list_modal.html:46
#: assets/templates/assets/_asset_list_modal.html:46
#: assets/templates/assets/admin_user_assets.html:52
#: assets/templates/assets/admin_user_assets.html:52
#: assets/templates/assets/asset_detail.html:61
#: assets/templates/assets/asset_detail.html:61
...
@@ -227,7 +227,7 @@ msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
...
@@ -227,7 +227,7 @@ msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
msgid "IP"
msgid "IP"
msgstr "IP"
msgstr "IP"
#: assets/models/asset.py:
66
assets/templates/assets/_asset_list_modal.html:45
#: assets/models/asset.py:
77
assets/templates/assets/_asset_list_modal.html:45
#: assets/templates/assets/admin_user_assets.html:51
#: assets/templates/assets/admin_user_assets.html:51
#: assets/templates/assets/asset_detail.html:57
#: assets/templates/assets/asset_detail.html:57
#: assets/templates/assets/asset_list.html:86
#: assets/templates/assets/asset_list.html:86
...
@@ -239,82 +239,91 @@ msgstr "IP"
...
@@ -239,82 +239,91 @@ msgstr "IP"
msgid "Hostname"
msgid "Hostname"
msgstr "主机名"
msgstr "主机名"
#: assets/models/asset.py:69 assets/templates/assets/asset_detail.html:97
#: assets/models/asset.py:80 assets/models/domain.py:45
#: assets/models/user.py:115
#: assets/templates/assets/domain_gateway_list.html:59
#: assets/templates/assets/system_user_detail.html:70
#: assets/templates/assets/system_user_list.html:28
#: terminal/templates/terminal/session_list.html:75
msgid "Protocol"
msgstr "协议"
#: assets/models/asset.py:83 assets/templates/assets/asset_detail.html:97
msgid "Platform"
msgid "Platform"
msgstr "系统平台"
msgstr "系统平台"
#: assets/models/asset.py:
76
assets/models/domain.py:48
#: assets/models/asset.py:
90
assets/models/domain.py:48
#: assets/models/label.py:20 assets/templates/assets/asset_detail.html:105
#: assets/models/label.py:20 assets/templates/assets/asset_detail.html:105
msgid "Is active"
msgid "Is active"
msgstr "激活"
msgstr "激活"
#: assets/models/asset.py:
85
assets/templates/assets/asset_detail.html:65
#: assets/models/asset.py:
99
assets/templates/assets/asset_detail.html:65
msgid "Public IP"
msgid "Public IP"
msgstr "公网IP"
msgstr "公网IP"
#: assets/models/asset.py:
87
assets/templates/assets/asset_detail.html:113
#: assets/models/asset.py:
101
assets/templates/assets/asset_detail.html:113
msgid "Asset number"
msgid "Asset number"
msgstr "资产编号"
msgstr "资产编号"
#: assets/models/asset.py:
91
assets/templates/assets/asset_detail.html:77
#: assets/models/asset.py:
105
assets/templates/assets/asset_detail.html:77
msgid "Vendor"
msgid "Vendor"
msgstr "制造商"
msgstr "制造商"
#: assets/models/asset.py:
93
assets/templates/assets/asset_detail.html:81
#: assets/models/asset.py:
107
assets/templates/assets/asset_detail.html:81
msgid "Model"
msgid "Model"
msgstr "型号"
msgstr "型号"
#: assets/models/asset.py:
95
assets/templates/assets/asset_detail.html:109
#: assets/models/asset.py:
109
assets/templates/assets/asset_detail.html:109
msgid "Serial number"
msgid "Serial number"
msgstr "序列号"
msgstr "序列号"
#: assets/models/asset.py:
98
#: assets/models/asset.py:
112
msgid "CPU model"
msgid "CPU model"
msgstr "CPU型号"
msgstr "CPU型号"
#: assets/models/asset.py:
99
#: assets/models/asset.py:
113
msgid "CPU count"
msgid "CPU count"
msgstr "CPU数量"
msgstr "CPU数量"
#: assets/models/asset.py:1
00
#: assets/models/asset.py:1
14
msgid "CPU cores"
msgid "CPU cores"
msgstr "CPU核数"
msgstr "CPU核数"
#: assets/models/asset.py:1
02
assets/templates/assets/asset_detail.html:89
#: assets/models/asset.py:1
16
assets/templates/assets/asset_detail.html:89
msgid "Memory"
msgid "Memory"
msgstr "内存"
msgstr "内存"
#: assets/models/asset.py:1
04
#: assets/models/asset.py:1
18
msgid "Disk total"
msgid "Disk total"
msgstr "硬盘大小"
msgstr "硬盘大小"
#: assets/models/asset.py:1
06
#: assets/models/asset.py:1
20
msgid "Disk info"
msgid "Disk info"
msgstr "硬盘信息"
msgstr "硬盘信息"
#: assets/models/asset.py:1
09
assets/templates/assets/asset_detail.html:101
#: assets/models/asset.py:1
23
assets/templates/assets/asset_detail.html:101
msgid "OS"
msgid "OS"
msgstr "操作系统"
msgstr "操作系统"
#: assets/models/asset.py:1
11
#: assets/models/asset.py:1
25
msgid "OS version"
msgid "OS version"
msgstr "系统版本"
msgstr "系统版本"
#: assets/models/asset.py:1
13
#: assets/models/asset.py:1
27
msgid "OS arch"
msgid "OS arch"
msgstr "系统架构"
msgstr "系统架构"
#: assets/models/asset.py:1
15
#: assets/models/asset.py:1
29
msgid "Hostname raw"
msgid "Hostname raw"
msgstr "主机名原始"
msgstr "主机名原始"
#: assets/models/asset.py:1
19 assets/templates/assets/asset_create.html:33
#: assets/models/asset.py:1
33 assets/templates/assets/asset_create.html:34
#: assets/templates/assets/asset_detail.html:220
#: assets/templates/assets/asset_detail.html:220
#: assets/templates/assets/asset_update.html:3
8
templates/_nav.html:27
#: assets/templates/assets/asset_update.html:3
9
templates/_nav.html:27
msgid "Labels"
msgid "Labels"
msgstr "标签管理"
msgstr "标签管理"
#: assets/models/asset.py:1
21
assets/models/base.py:29
#: assets/models/asset.py:1
35
assets/models/base.py:29
#: assets/models/cluster.py:28 assets/models/group.py:21
#: assets/models/cluster.py:28 assets/models/group.py:21
#: assets/templates/assets/admin_user_detail.html:68
#: assets/templates/assets/admin_user_detail.html:68
#: assets/templates/assets/asset_detail.html:117
#: assets/templates/assets/asset_detail.html:117
...
@@ -326,7 +335,7 @@ msgstr "标签管理"
...
@@ -326,7 +335,7 @@ msgstr "标签管理"
msgid "Created by"
msgid "Created by"
msgstr "创建者"
msgstr "创建者"
#: assets/models/asset.py:1
24
assets/models/cluster.py:26
#: assets/models/asset.py:1
38
assets/models/cluster.py:26
#: assets/models/domain.py:20 assets/models/group.py:22
#: assets/models/domain.py:20 assets/models/group.py:22
#: assets/models/label.py:23 assets/templates/assets/admin_user_detail.html:64
#: assets/models/label.py:23 assets/templates/assets/admin_user_detail.html:64
#: assets/templates/assets/domain_detail.html:68
#: assets/templates/assets/domain_detail.html:68
...
@@ -339,7 +348,7 @@ msgstr "创建者"
...
@@ -339,7 +348,7 @@ msgstr "创建者"
msgid "Date created"
msgid "Date created"
msgstr "创建日期"
msgstr "创建日期"
#: assets/models/asset.py:1
26
assets/models/base.py:26
#: assets/models/asset.py:1
40
assets/models/base.py:26
#: assets/models/cluster.py:29 assets/models/domain.py:18
#: assets/models/cluster.py:29 assets/models/domain.py:18
#: assets/models/domain.py:47 assets/models/group.py:23
#: assets/models/domain.py:47 assets/models/group.py:23
#: assets/models/label.py:21 assets/templates/assets/admin_user_detail.html:72
#: assets/models/label.py:21 assets/templates/assets/admin_user_detail.html:72
...
@@ -414,14 +423,6 @@ msgstr "默认Cluster"
...
@@ -414,14 +423,6 @@ msgstr "默认Cluster"
msgid "Cluster"
msgid "Cluster"
msgstr "集群"
msgstr "集群"
#: assets/models/domain.py:45 assets/models/user.py:113
#: assets/templates/assets/domain_gateway_list.html:59
#: assets/templates/assets/system_user_detail.html:70
#: assets/templates/assets/system_user_list.html:28
#: terminal/templates/terminal/session_list.html:75
msgid "Protocol"
msgstr "协议"
#: assets/models/group.py:30
#: assets/models/group.py:30
msgid "Asset group"
msgid "Asset group"
msgstr "资产组"
msgstr "资产组"
...
@@ -444,7 +445,7 @@ msgstr "默认资产组"
...
@@ -444,7 +445,7 @@ msgstr "默认资产组"
#: terminal/templates/terminal/session_list.html:71 users/forms.py:282
#: terminal/templates/terminal/session_list.html:71 users/forms.py:282
#: users/models/user.py:31 users/models/user.py:333
#: users/models/user.py:31 users/models/user.py:333
#: users/templates/users/user_group_detail.html:78
#: users/templates/users/user_group_detail.html:78
#: users/templates/users/user_group_list.html:13 users/views/user.py:3
59
#: users/templates/users/user_group_list.html:13 users/views/user.py:3
61
msgid "User"
msgid "User"
msgstr "用户"
msgstr "用户"
...
@@ -461,15 +462,15 @@ msgstr "分类"
...
@@ -461,15 +462,15 @@ msgstr "分类"
msgid "Key"
msgid "Key"
msgstr ""
msgstr ""
#: assets/models/user.py:10
6
#: assets/models/user.py:10
8
msgid "Automatic login"
msgid "Automatic login"
msgstr "自动登录"
msgstr "自动登录"
#: assets/models/user.py:10
7
#: assets/models/user.py:10
9
msgid "Manually login"
msgid "Manually login"
msgstr "手动登录"
msgstr "手动登录"
#: assets/models/user.py:11
1
#: assets/models/user.py:11
3
#: assets/templates/assets/_asset_group_bulk_update_modal.html:11
#: assets/templates/assets/_asset_group_bulk_update_modal.html:11
#: assets/templates/assets/system_user_asset.html:21
#: assets/templates/assets/system_user_asset.html:21
#: assets/views/admin_user.py:29 assets/views/admin_user.py:47
#: assets/views/admin_user.py:29 assets/views/admin_user.py:47
...
@@ -487,30 +488,30 @@ msgstr "手动登录"
...
@@ -487,30 +488,30 @@ msgstr "手动登录"
msgid "Assets"
msgid "Assets"
msgstr "资产管理"
msgstr "资产管理"
#: assets/models/user.py:11
2
#: assets/models/user.py:11
4
msgid "Priority"
msgid "Priority"
msgstr "优先级"
msgstr "优先级"
#: assets/models/user.py:11
4
assets/templates/assets/_system_user.html:59
#: assets/models/user.py:11
6
assets/templates/assets/_system_user.html:59
#: assets/templates/assets/system_user_detail.html:122
#: assets/templates/assets/system_user_detail.html:122
#: assets/templates/assets/system_user_update.html:10
#: assets/templates/assets/system_user_update.html:10
msgid "Auto push"
msgid "Auto push"
msgstr "自动推送"
msgstr "自动推送"
#: assets/models/user.py:11
5
assets/templates/assets/system_user_detail.html:74
#: assets/models/user.py:11
7
assets/templates/assets/system_user_detail.html:74
msgid "Sudo"
msgid "Sudo"
msgstr "Sudo"
msgstr "Sudo"
#: assets/models/user.py:11
6
assets/templates/assets/system_user_detail.html:79
#: assets/models/user.py:11
8
assets/templates/assets/system_user_detail.html:79
msgid "Shell"
msgid "Shell"
msgstr "Shell"
msgstr "Shell"
#: assets/models/user.py:11
7
assets/templates/assets/system_user_detail.html:66
#: assets/models/user.py:11
9
assets/templates/assets/system_user_detail.html:66
#: assets/templates/assets/system_user_list.html:29
#: assets/templates/assets/system_user_list.html:29
msgid "Login mode"
msgid "Login mode"
msgstr "登录模式"
msgstr "登录模式"
#: assets/models/user.py:15
7
audits/models.py:12
#: assets/models/user.py:15
9
audits/models.py:12
#: audits/templates/audits/ftp_log_list.html:49
#: audits/templates/audits/ftp_log_list.html:49
#: audits/templates/audits/ftp_log_list.html:73 perms/forms.py:43
#: audits/templates/audits/ftp_log_list.html:73 perms/forms.py:43
#: perms/models.py:34 perms/models.py:78
#: perms/models.py:34 perms/models.py:78
...
@@ -624,8 +625,8 @@ msgid "Basic"
...
@@ -624,8 +625,8 @@ msgid "Basic"
msgstr "基本"
msgstr "基本"
#: assets/templates/assets/_system_user.html:44
#: assets/templates/assets/_system_user.html:44
#: assets/templates/assets/asset_create.html:2
5
#: assets/templates/assets/asset_create.html:2
6
#: assets/templates/assets/asset_update.html:3
0
#: assets/templates/assets/asset_update.html:3
1
#: assets/templates/assets/gateway_create_update.html:45
#: assets/templates/assets/gateway_create_update.html:45
#: users/templates/users/_user.html:21
#: users/templates/users/_user.html:21
msgid "Auth"
msgid "Auth"
...
@@ -636,8 +637,8 @@ msgid "Auto generate key"
...
@@ -636,8 +637,8 @@ msgid "Auto generate key"
msgstr "自动生成密钥"
msgstr "自动生成密钥"
#: assets/templates/assets/_system_user.html:65
#: assets/templates/assets/_system_user.html:65
#: assets/templates/assets/asset_create.html:
59
#: assets/templates/assets/asset_create.html:
60
#: assets/templates/assets/asset_update.html:6
3
#: assets/templates/assets/asset_update.html:6
4
#: assets/templates/assets/gateway_create_update.html:53
#: assets/templates/assets/gateway_create_update.html:53
#: perms/templates/perms/asset_permission_create_update.html:45
#: perms/templates/perms/asset_permission_create_update.html:45
#: terminal/templates/terminal/terminal_update.html:42
#: terminal/templates/terminal/terminal_update.html:42
...
@@ -647,8 +648,8 @@ msgstr "其它"
...
@@ -647,8 +648,8 @@ msgstr "其它"
#: assets/templates/assets/_system_user.html:71
#: assets/templates/assets/_system_user.html:71
#: assets/templates/assets/admin_user_create_update.html:45
#: assets/templates/assets/admin_user_create_update.html:45
#: assets/templates/assets/asset_bulk_update.html:23
#: assets/templates/assets/asset_bulk_update.html:23
#: assets/templates/assets/asset_create.html:6
6
#: assets/templates/assets/asset_create.html:6
7
#: assets/templates/assets/asset_update.html:7
0
#: assets/templates/assets/asset_update.html:7
1
#: assets/templates/assets/domain_create_update.html:16
#: assets/templates/assets/domain_create_update.html:16
#: assets/templates/assets/gateway_create_update.html:58
#: assets/templates/assets/gateway_create_update.html:58
#: assets/templates/assets/label_create_update.html:18
#: assets/templates/assets/label_create_update.html:18
...
@@ -672,9 +673,9 @@ msgstr "重置"
...
@@ -672,9 +673,9 @@ msgstr "重置"
#: assets/templates/assets/_system_user.html:72
#: assets/templates/assets/_system_user.html:72
#: assets/templates/assets/admin_user_create_update.html:46
#: assets/templates/assets/admin_user_create_update.html:46
#: assets/templates/assets/asset_bulk_update.html:24
#: assets/templates/assets/asset_bulk_update.html:24
#: assets/templates/assets/asset_create.html:6
7
#: assets/templates/assets/asset_create.html:6
8
#: assets/templates/assets/asset_list.html:108
#: assets/templates/assets/asset_list.html:108
#: assets/templates/assets/asset_update.html:7
1
#: assets/templates/assets/asset_update.html:7
2
#: assets/templates/assets/domain_create_update.html:17
#: assets/templates/assets/domain_create_update.html:17
#: assets/templates/assets/gateway_create_update.html:59
#: assets/templates/assets/gateway_create_update.html:59
#: assets/templates/assets/label_create_update.html:19
#: assets/templates/assets/label_create_update.html:19
...
@@ -1025,7 +1026,7 @@ msgstr "删除"
...
@@ -1025,7 +1026,7 @@ msgstr "删除"
msgid "Asset Deleting failed."
msgid "Asset Deleting failed."
msgstr "删除失败"
msgstr "删除失败"
#: assets/templates/assets/asset_update.html:
59
#: assets/templates/assets/asset_update.html:
60
msgid "Configuration"
msgid "Configuration"
msgstr "配置"
msgstr "配置"
...
@@ -1987,7 +1988,7 @@ msgstr "文档"
...
@@ -1987,7 +1988,7 @@ msgstr "文档"
#: users/templates/users/user_profile.html:17
#: users/templates/users/user_profile.html:17
#: users/templates/users/user_profile_update.html:37
#: users/templates/users/user_profile_update.html:37
#: users/templates/users/user_profile_update.html:57
#: users/templates/users/user_profile_update.html:57
#: users/templates/users/user_pubkey_update.html:37 users/views/user.py:34
1
#: users/templates/users/user_pubkey_update.html:37 users/views/user.py:34
3
msgid "Profile"
msgid "Profile"
msgstr "个人信息"
msgstr "个人信息"
...
@@ -2045,8 +2046,8 @@ msgstr "关闭"
...
@@ -2045,8 +2046,8 @@ msgstr "关闭"
#: templates/_nav.html:10 users/views/group.py:28 users/views/group.py:44
#: templates/_nav.html:10 users/views/group.py:28 users/views/group.py:44
#: users/views/group.py:62 users/views/group.py:79 users/views/group.py:95
#: users/views/group.py:62 users/views/group.py:79 users/views/group.py:95
#: users/views/login.py:277 users/views/login.py:335 users/views/user.py:65
#: users/views/login.py:277 users/views/login.py:335 users/views/user.py:65
#: users/views/user.py:80 users/views/user.py:102 users/views/user.py:17
3
#: users/views/user.py:80 users/views/user.py:102 users/views/user.py:17
5
#: users/views/user.py:3
28 users/views/user.py:378 users/views/user.py:413
#: users/views/user.py:3
30 users/views/user.py:380 users/views/user.py:415
msgid "Users"
msgid "Users"
msgstr "用户管理"
msgstr "用户管理"
...
@@ -2680,7 +2681,7 @@ msgid "Reset link will be generated and sent to the user. "
...
@@ -2680,7 +2681,7 @@ msgid "Reset link will be generated and sent to the user. "
msgstr "生成重置密码连接,通过邮件发送给用户"
msgstr "生成重置密码连接,通过邮件发送给用户"
#: users/templates/users/user_detail.html:19
#: users/templates/users/user_detail.html:19
#: users/templates/users/user_granted_asset.html:18 users/views/user.py:17
4
#: users/templates/users/user_granted_asset.html:18 users/views/user.py:17
6
msgid "User detail"
msgid "User detail"
msgstr "用户详情"
msgstr "用户详情"
...
@@ -2815,8 +2816,8 @@ msgstr "用户删除失败"
...
@@ -2815,8 +2816,8 @@ msgstr "用户删除失败"
msgid "Administrator Settings force MFA login"
msgid "Administrator Settings force MFA login"
msgstr "管理员设置强制使用MFA登录"
msgstr "管理员设置强制使用MFA登录"
#: users/templates/users/user_profile.html:116 users/views/user.py:20
3
#: users/templates/users/user_profile.html:116 users/views/user.py:20
5
#: users/views/user.py:25
7
#: users/views/user.py:25
9
msgid "User groups"
msgid "User groups"
msgstr "用户组"
msgstr "用户组"
...
@@ -2871,7 +2872,7 @@ msgid "Create account successfully"
...
@@ -2871,7 +2872,7 @@ msgid "Create account successfully"
msgstr "创建账户成功"
msgstr "创建账户成功"
#: users/utils.py:43
#: users/utils.py:43
#,
fuzzy,
python-format
#, python-format
msgid ""
msgid ""
"\n"
"\n"
" Hello %(name)s:\n"
" Hello %(name)s:\n"
...
@@ -3020,7 +3021,7 @@ msgstr "用户组授权资产"
...
@@ -3020,7 +3021,7 @@ msgstr "用户组授权资产"
msgid "Please enable cookies and try again."
msgid "Please enable cookies and try again."
msgstr "设置你的浏览器支持cookie"
msgstr "设置你的浏览器支持cookie"
#: users/views/login.py:128 users/views/user.py:
498 users/views/user.py:523
#: users/views/login.py:128 users/views/user.py:
500 users/views/user.py:525
msgid "MFA code invalid"
msgid "MFA code invalid"
msgstr "MFA码认证失败"
msgstr "MFA码认证失败"
...
@@ -3061,7 +3062,7 @@ msgstr "Token错误或失效"
...
@@ -3061,7 +3062,7 @@ msgstr "Token错误或失效"
msgid "Password not same"
msgid "Password not same"
msgstr "密码不一致"
msgstr "密码不一致"
#: users/views/login.py:239 users/views/user.py:11
5 users/views/user.py:396
#: users/views/login.py:239 users/views/user.py:11
8 users/views/user.py:398
msgid "* Your password does not meet the requirements"
msgid "* Your password does not meet the requirements"
msgstr "* 您的密码不符合要求"
msgstr "* 您的密码不符合要求"
...
@@ -3073,46 +3074,46 @@ msgstr "首次登陆"
...
@@ -3073,46 +3074,46 @@ msgstr "首次登陆"
msgid "Login log list"
msgid "Login log list"
msgstr "登录日志"
msgstr "登录日志"
#: users/views/user.py:12
7
#: users/views/user.py:12
9
msgid "Bulk update user success"
msgid "Bulk update user success"
msgstr "批量更新用户成功"
msgstr "批量更新用户成功"
#: users/views/user.py:23
2
#: users/views/user.py:23
4
msgid "Invalid file."
msgid "Invalid file."
msgstr "文件不合法"
msgstr "文件不合法"
#: users/views/user.py:3
29
#: users/views/user.py:3
31
msgid "User granted assets"
msgid "User granted assets"
msgstr "用户授权资产"
msgstr "用户授权资产"
#: users/views/user.py:36
0
#: users/views/user.py:36
2
msgid "Profile setting"
msgid "Profile setting"
msgstr "个人信息设置"
msgstr "个人信息设置"
#: users/views/user.py:3
79
#: users/views/user.py:3
81
msgid "Password update"
msgid "Password update"
msgstr "密码更新"
msgstr "密码更新"
#: users/views/user.py:41
4
#: users/views/user.py:41
6
msgid "Public key update"
msgid "Public key update"
msgstr "密钥更新"
msgstr "密钥更新"
#: users/views/user.py:45
5
#: users/views/user.py:45
7
msgid "Password invalid"
msgid "Password invalid"
msgstr "用户名或密码无效"
msgstr "用户名或密码无效"
#: users/views/user.py:5
49
#: users/views/user.py:5
51
msgid "MFA enable success"
msgid "MFA enable success"
msgstr "MFA 绑定成功"
msgstr "MFA 绑定成功"
#: users/views/user.py:55
0
#: users/views/user.py:55
2
msgid "MFA enable success, return login page"
msgid "MFA enable success, return login page"
msgstr "MFA 绑定成功,返回到登录页面"
msgstr "MFA 绑定成功,返回到登录页面"
#: users/views/user.py:55
2
#: users/views/user.py:55
4
msgid "MFA disable success"
msgid "MFA disable success"
msgstr "MFA 解绑成功"
msgstr "MFA 解绑成功"
#: users/views/user.py:55
3
#: users/views/user.py:55
5
msgid "MFA disable success, return login page"
msgid "MFA disable success, return login page"
msgstr "MFA 解绑成功,返回登录页面"
msgstr "MFA 解绑成功,返回登录页面"
apps/perms/api.py
View file @
f1f06491
...
@@ -73,9 +73,9 @@ class UserGrantedAssetsApi(ListAPIView):
...
@@ -73,9 +73,9 @@ class UserGrantedAssetsApi(ListAPIView):
util
=
AssetPermissionUtil
(
user
)
util
=
AssetPermissionUtil
(
user
)
for
k
,
v
in
util
.
get_assets
()
.
items
():
for
k
,
v
in
util
.
get_assets
()
.
items
():
if
k
.
is_unixlike
():
if
k
.
is_unixlike
():
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
==
'ssh'
]
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
in
[
'ssh'
,
'telnet'
]
]
else
:
else
:
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
==
'rdp'
]
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
in
[
'rdp'
,
'telnet'
]
]
k
.
system_users_granted
=
system_users_granted
k
.
system_users_granted
=
system_users_granted
queryset
.
append
(
k
)
queryset
.
append
(
k
)
return
queryset
return
queryset
...
@@ -124,9 +124,9 @@ class UserGrantedNodesWithAssetsApi(ListAPIView):
...
@@ -124,9 +124,9 @@ class UserGrantedNodesWithAssetsApi(ListAPIView):
assets
=
_assets
.
keys
()
assets
=
_assets
.
keys
()
for
k
,
v
in
_assets
.
items
():
for
k
,
v
in
_assets
.
items
():
if
k
.
is_unixlike
():
if
k
.
is_unixlike
():
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
==
'ssh'
]
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
in
[
'ssh'
,
'telnet'
]
]
else
:
else
:
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
==
'rdp'
]
system_users_granted
=
[
s
for
s
in
v
if
s
.
protocol
in
[
'rdp'
,
'telnet'
]
]
k
.
system_users_granted
=
system_users_granted
k
.
system_users_granted
=
system_users_granted
node
.
assets_granted
=
assets
node
.
assets_granted
=
assets
queryset
.
append
(
node
)
queryset
.
append
(
node
)
...
...
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