|
|
# SOME DESCRIPTIVE TITLE.
|
|
|
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
|
|
# This file is distributed under the same license as the PACKAGE package.
|
|
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
|
#
|
|
|
msgid ""
|
|
|
msgstr ""
|
|
|
"Project-Id-Version: JumpServer 0.3.3\n"
|
|
|
"Report-Msgid-Bugs-To: \n"
|
|
|
"POT-Creation-Date: 2021-09-29 14:51+0800\n"
|
|
|
"PO-Revision-Date: 2021-05-20 10:54+0800\n"
|
|
|
"Last-Translator: ibuler <ibuler@qq.com>\n"
|
|
|
"Language-Team: JumpServer team<ibuler@qq.com>\n"
|
|
|
"Language: zh_CN\n"
|
|
|
"MIME-Version: 1.0\n"
|
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
|
"X-Generator: Poedit 2.4.3\n"
|
|
|
|
|
|
#: acls/models/base.py:25 acls/serializers/login_asset_acl.py:47
|
|
|
#: applications/models/application.py:166 assets/models/asset.py:139
|
|
|
#: assets/models/base.py:175 assets/models/cluster.py:18
|
|
|
#: assets/models/cmd_filter.py:21 assets/models/domain.py:24
|
|
|
#: assets/models/group.py:20 assets/models/label.py:18 ops/mixin.py:24
|
|
|
#: orgs/models.py:24 perms/models/base.py:44 settings/models.py:29
|
|
|
#: settings/serializers/sms.py:6 terminal/models/storage.py:23
|
|
|
#: terminal/models/task.py:16 terminal/models/terminal.py:100
|
|
|
#: users/forms/profile.py:32 users/models/group.py:15 users/models/user.py:605
|
|
|
#: users/templates/users/_select_user_modal.html:13
|
|
|
#: users/templates/users/user_asset_permission.html:37
|
|
|
#: users/templates/users/user_asset_permission.html:154
|
|
|
#: users/templates/users/user_database_app_permission.html:36
|
|
|
#: xpack/plugins/cloud/models.py:28
|
|
|
msgid "Name"
|
|
|
msgstr "名称"
|
|
|
|
|
|
#: acls/models/base.py:27 assets/models/cmd_filter.py:54
|
|
|
#: assets/models/user.py:207
|
|
|
msgid "Priority"
|
|
|
msgstr "优先级"
|
|
|
|
|
|
#: acls/models/base.py:28 assets/models/cmd_filter.py:54
|
|
|
#: assets/models/user.py:207
|
|
|
msgid "1-100, the lower the value will be match first"
|
|
|
msgstr "优先级可选范围为 1-100 (数值越小越优先)"
|
|
|
|
|
|
#: acls/models/base.py:31 authentication/models.py:20
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:32
|
|
|
#: perms/models/base.py:48 terminal/models/sharing.py:24
|
|
|
#: users/templates/users/_select_user_modal.html:18
|
|
|
msgid "Active"
|
|
|
msgstr "激活中"
|
|
|
|
|
|
#: acls/models/base.py:32 applications/models/application.py:179
|
|
|
#: assets/models/asset.py:144 assets/models/asset.py:220
|
|
|
#: assets/models/base.py:180 assets/models/cluster.py:29
|
|
|
#: assets/models/cmd_filter.py:23 assets/models/cmd_filter.py:64
|
|
|
#: assets/models/domain.py:25 assets/models/domain.py:65
|
|
|
#: assets/models/group.py:23 assets/models/label.py:23 ops/models/adhoc.py:37
|
|
|
#: orgs/models.py:27 perms/models/base.py:53 settings/models.py:34
|
|
|
#: terminal/models/storage.py:26 terminal/models/terminal.py:114
|
|
|
#: tickets/models/ticket.py:71 users/models/group.py:16
|
|
|
#: users/models/user.py:638 xpack/plugins/change_auth_plan/models/base.py:41
|
|
|
#: xpack/plugins/cloud/models.py:35 xpack/plugins/cloud/models.py:113
|
|
|
#: xpack/plugins/gathered_user/models.py:26
|
|
|
msgid "Comment"
|
|
|
msgstr "备注"
|
|
|
|
|
|
#: acls/models/login_acl.py:16 tickets/const.py:38
|
|
|
msgid "Reject"
|
|
|
msgstr "拒绝"
|
|
|
|
|
|
#: acls/models/login_acl.py:17 assets/models/cmd_filter.py:48
|
|
|
msgid "Allow"
|
|
|
msgstr "允许"
|
|
|
|
|
|
#: acls/models/login_acl.py:20
|
|
|
msgid "Login IP"
|
|
|
msgstr "登录IP"
|
|
|
|
|
|
#: acls/models/login_acl.py:24 acls/models/login_asset_acl.py:26
|
|
|
#: acls/serializers/login_acl.py:34 acls/serializers/login_asset_acl.py:75
|
|
|
#: assets/models/cmd_filter.py:57 audits/models.py:57
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:34
|
|
|
#: users/templates/users/_granted_assets.html:29
|
|
|
#: users/templates/users/user_asset_permission.html:44
|
|
|
#: users/templates/users/user_asset_permission.html:79
|
|
|
#: users/templates/users/user_database_app_permission.html:42
|
|
|
msgid "Action"
|
|
|
msgstr "动作"
|
|
|
|
|
|
#: acls/models/login_acl.py:28 acls/models/login_asset_acl.py:20
|
|
|
#: acls/serializers/login_acl.py:33 assets/models/label.py:15
|
|
|
#: audits/models.py:36 audits/models.py:56 audits/models.py:74
|
|
|
#: audits/serializers.py:93 authentication/models.py:44
|
|
|
#: authentication/models.py:100 orgs/models.py:19 orgs/models.py:433
|
|
|
#: perms/models/base.py:45 templates/index.html:78
|
|
|
#: terminal/backends/command/models.py:18
|
|
|
#: terminal/backends/command/serializers.py:12 terminal/models/session.py:38
|
|
|
#: tickets/models/comment.py:17 users/const.py:14 users/models/user.py:181
|
|
|
#: users/models/user.py:814 users/models/user.py:840
|
|
|
#: users/serializers/group.py:19
|
|
|
#: users/templates/users/user_asset_permission.html:38
|
|
|
#: users/templates/users/user_asset_permission.html:64
|
|
|
#: users/templates/users/user_database_app_permission.html:37
|
|
|
#: users/templates/users/user_database_app_permission.html:58
|
|
|
msgid "User"
|
|
|
msgstr "用户"
|
|
|
|
|
|
#: acls/models/login_asset_acl.py:17 authentication/models.py:75
|
|
|
#: tickets/const.py:9
|
|
|
msgid "Login confirm"
|
|
|
msgstr "登录复核"
|
|
|
|
|
|
#: acls/models/login_asset_acl.py:21
|
|
|
msgid "System User"
|
|
|
msgstr "系统用户"
|
|
|
|
|
|
#: acls/models/login_asset_acl.py:22
|
|
|
#: applications/serializers/attrs/application_category/remote_app.py:37
|
|
|
#: assets/models/asset.py:357 assets/models/authbook.py:18
|
|
|
#: assets/models/gathered_user.py:14 assets/serializers/system_user.py:207
|
|
|
#: audits/models.py:38 perms/models/asset_permission.py:99
|
|
|
#: templates/index.html:82 terminal/backends/command/models.py:19
|
|
|
#: terminal/backends/command/serializers.py:13 terminal/models/session.py:40
|
|
|
#: users/templates/users/user_asset_permission.html:40
|
|
|
#: users/templates/users/user_asset_permission.html:70
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:195
|
|
|
#: xpack/plugins/cloud/models.py:217
|
|
|
msgid "Asset"
|
|
|
msgstr "资产"
|
|
|
|
|
|
#: acls/models/login_asset_acl.py:32 assets/models/cmd_filter.py:62
|
|
|
#: authentication/models.py:45
|
|
|
msgid "Reviewers"
|
|
|
msgstr "审批人"
|
|
|
|
|
|
#: acls/models/login_asset_acl.py:89 tickets/const.py:12
|
|
|
msgid "Login asset confirm"
|
|
|
msgstr "登录资产复核"
|
|
|
|
|
|
#: acls/serializers/login_acl.py:18 xpack/plugins/cloud/serializers/task.py:23
|
|
|
msgid "IP address invalid: `{}`"
|
|
|
msgstr "IP 地址无效: `{}`"
|
|
|
|
|
|
#: acls/serializers/login_acl.py:24
|
|
|
msgid ""
|
|
|
"Format for comma-delimited string, with * indicating a match all. Such as: "
|
|
|
"192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:"
|
|
|
"db8:1a:1110::/64 "
|
|
|
msgstr ""
|
|
|
"格式为逗号分隔的字符串, * 表示匹配所有。例如: 192.168.10.1, 192.168.1.0/24, "
|
|
|
"10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64"
|
|
|
|
|
|
#: acls/serializers/login_acl.py:30 acls/serializers/login_asset_acl.py:31
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:18
|
|
|
#: assets/models/asset.py:180 assets/models/domain.py:61
|
|
|
#: assets/serializers/account.py:12 settings/serializers/terminal.py:8
|
|
|
#: users/templates/users/_granted_assets.html:26
|
|
|
#: users/templates/users/user_asset_permission.html:156
|
|
|
msgid "IP"
|
|
|
msgstr "IP"
|
|
|
|
|
|
#: acls/serializers/login_acl.py:55
|
|
|
msgid "The user `{}` is not in the current organization: `{}`"
|
|
|
msgstr "用户 `{}` 不在当前组织: `{}`"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:12
|
|
|
msgid "Format for comma-delimited string, with * indicating a match all. "
|
|
|
msgstr "格式为逗号分隔的字符串, * 表示匹配所有. "
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:17
|
|
|
#: acls/serializers/login_asset_acl.py:51
|
|
|
#: applications/serializers/attrs/application_type/chrome.py:20
|
|
|
#: applications/serializers/attrs/application_type/custom.py:21
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:30
|
|
|
#: applications/serializers/attrs/application_type/vmware_client.py:26
|
|
|
#: assets/models/base.py:176 assets/models/gathered_user.py:15
|
|
|
#: audits/models.py:105 authentication/forms.py:15 authentication/forms.py:17
|
|
|
#: ops/models/adhoc.py:148 users/forms/profile.py:31 users/models/user.py:603
|
|
|
#: users/templates/users/_select_user_modal.html:14
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:35
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:191
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:62
|
|
|
msgid "Username"
|
|
|
msgstr "用户名"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:24
|
|
|
msgid ""
|
|
|
"Format for comma-delimited string, with * indicating a match all. Such as: "
|
|
|
"192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:"
|
|
|
"db8:1a:1110::/64 (Domain name support)"
|
|
|
msgstr ""
|
|
|
"格式为逗号分隔的字符串, * 表示匹配所有。例如: 192.168.10.1, 192.168.1.0/24, "
|
|
|
"10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64 (支持网域)"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:35 assets/models/asset.py:181
|
|
|
#: assets/serializers/account.py:13 assets/serializers/gathered_user.py:23
|
|
|
#: settings/serializers/terminal.py:7
|
|
|
#: users/templates/users/_granted_assets.html:25
|
|
|
#: users/templates/users/user_asset_permission.html:157
|
|
|
msgid "Hostname"
|
|
|
msgstr "主机名"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:42
|
|
|
msgid ""
|
|
|
"Format for comma-delimited string, with * indicating a match all. Protocol "
|
|
|
"options: {}"
|
|
|
msgstr "格式为逗号分隔的字符串, * 表示匹配所有. 可选的协议有: {}"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:55 assets/models/asset.py:184
|
|
|
#: assets/models/domain.py:63 assets/models/user.py:208
|
|
|
#: terminal/serializers/session.py:30 terminal/serializers/storage.py:69
|
|
|
msgid "Protocol"
|
|
|
msgstr "协议"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:65
|
|
|
msgid "Unsupported protocols: {}"
|
|
|
msgstr "不支持的协议: {}"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:98
|
|
|
#: tickets/serializers/ticket/ticket.py:105
|
|
|
msgid "The organization `{}` does not exist"
|
|
|
msgstr "组织 `{}` 不存在"
|
|
|
|
|
|
#: acls/serializers/login_asset_acl.py:103
|
|
|
msgid "None of the reviewers belong to Organization `{}`"
|
|
|
msgstr "所有复核人都不属于组织 `{}`"
|
|
|
|
|
|
#: applications/api/mixin.py:20 templates/_nav_user.html:10
|
|
|
msgid "My applications"
|
|
|
msgstr "我的应用"
|
|
|
|
|
|
#: applications/const.py:8 applications/models/account.py:10
|
|
|
#: applications/serializers/attrs/application_category/db.py:14
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:26
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:32
|
|
|
msgid "Database"
|
|
|
msgstr "数据库"
|
|
|
|
|
|
#: applications/const.py:9
|
|
|
msgid "Remote app"
|
|
|
msgstr "远程应用"
|
|
|
|
|
|
#: applications/const.py:28
|
|
|
msgid "Custom"
|
|
|
msgstr "自定义"
|
|
|
|
|
|
#: applications/models/account.py:11 assets/models/authbook.py:19
|
|
|
#: assets/models/user.py:281 audits/models.py:39
|
|
|
#: perms/models/application_permission.py:32
|
|
|
#: perms/models/asset_permission.py:101 templates/_nav.html:45
|
|
|
#: terminal/backends/command/models.py:20
|
|
|
#: terminal/backends/command/serializers.py:14 terminal/models/session.py:42
|
|
|
#: users/templates/users/_granted_assets.html:27
|
|
|
#: users/templates/users/user_asset_permission.html:42
|
|
|
#: users/templates/users/user_asset_permission.html:76
|
|
|
#: users/templates/users/user_asset_permission.html:159
|
|
|
#: users/templates/users/user_database_app_permission.html:40
|
|
|
#: users/templates/users/user_database_app_permission.html:67
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:36
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:142
|
|
|
msgid "System user"
|
|
|
msgstr "系统用户"
|
|
|
|
|
|
#: applications/models/account.py:12 assets/models/authbook.py:20
|
|
|
#: settings/serializers/auth/cas.py:15
|
|
|
msgid "Version"
|
|
|
msgstr "版本"
|
|
|
|
|
|
#: applications/models/account.py:18 xpack/plugins/cloud/models.py:82
|
|
|
#: xpack/plugins/cloud/serializers/task.py:65
|
|
|
msgid "Account"
|
|
|
msgstr "账户"
|
|
|
|
|
|
#: applications/models/application.py:50 templates/_nav.html:60
|
|
|
msgid "Applications"
|
|
|
msgstr "应用管理"
|
|
|
|
|
|
#: applications/models/application.py:168
|
|
|
#: applications/serializers/application.py:88 assets/models/label.py:21
|
|
|
#: perms/models/application_permission.py:20
|
|
|
#: perms/serializers/application/user_permission.py:33
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:24
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:25
|
|
|
msgid "Category"
|
|
|
msgstr "类别"
|
|
|
|
|
|
#: applications/models/application.py:171
|
|
|
#: applications/serializers/application.py:90 assets/models/cmd_filter.py:53
|
|
|
#: assets/models/user.py:206 perms/models/application_permission.py:23
|
|
|
#: perms/serializers/application/user_permission.py:34
|
|
|
#: terminal/models/storage.py:55 terminal/models/storage.py:116
|
|
|
#: tickets/models/flow.py:51 tickets/models/ticket.py:48
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:31
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:28
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:148
|
|
|
msgid "Type"
|
|
|
msgstr "类型"
|
|
|
|
|
|
#: applications/models/application.py:175 assets/models/asset.py:188
|
|
|
#: assets/models/domain.py:30 assets/models/domain.py:64
|
|
|
msgid "Domain"
|
|
|
msgstr "网域"
|
|
|
|
|
|
#: applications/models/application.py:177 xpack/plugins/cloud/models.py:33
|
|
|
msgid "Attrs"
|
|
|
msgstr ""
|
|
|
|
|
|
#: applications/serializers/application.py:59
|
|
|
#: applications/serializers/application.py:89 assets/serializers/label.py:13
|
|
|
#: perms/serializers/application/permission.py:16
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:28
|
|
|
msgid "Category display"
|
|
|
msgstr "类别名称"
|
|
|
|
|
|
#: applications/serializers/application.py:60
|
|
|
#: applications/serializers/application.py:91
|
|
|
#: assets/serializers/system_user.py:26 audits/serializers.py:29
|
|
|
#: perms/serializers/application/permission.py:17
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:35
|
|
|
#: tickets/serializers/ticket/ticket.py:22
|
|
|
#: tickets/serializers/ticket/ticket.py:168
|
|
|
msgid "Type display"
|
|
|
msgstr "类型名称"
|
|
|
|
|
|
#: applications/serializers/application.py:107
|
|
|
msgid "Application display"
|
|
|
msgstr "应用名称"
|
|
|
|
|
|
#: applications/serializers/attrs/application_category/cloud.py:9
|
|
|
#: assets/models/cluster.py:40
|
|
|
msgid "Cluster"
|
|
|
msgstr "集群"
|
|
|
|
|
|
#: applications/serializers/attrs/application_category/db.py:11
|
|
|
#: ops/models/adhoc.py:146 settings/serializers/auth/radius.py:14
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:60
|
|
|
msgid "Host"
|
|
|
msgstr "主机"
|
|
|
|
|
|
#: applications/serializers/attrs/application_category/db.py:12
|
|
|
#: applications/serializers/attrs/application_type/mysql.py:11
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:22
|
|
|
#: applications/serializers/attrs/application_type/oracle.py:11
|
|
|
#: applications/serializers/attrs/application_type/pgsql.py:11
|
|
|
#: assets/models/asset.py:185 assets/models/domain.py:62
|
|
|
#: settings/serializers/auth/radius.py:15
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:61
|
|
|
msgid "Port"
|
|
|
msgstr "端口"
|
|
|
|
|
|
#: applications/serializers/attrs/application_category/remote_app.py:40
|
|
|
#: applications/serializers/attrs/application_type/chrome.py:14
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:14
|
|
|
#: applications/serializers/attrs/application_type/vmware_client.py:18
|
|
|
msgid "Application path"
|
|
|
msgstr "应用路径"
|
|
|
|
|
|
#: applications/serializers/attrs/application_category/remote_app.py:45
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:65
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:68
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:71
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:87
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:44
|
|
|
msgid "This field is required."
|
|
|
msgstr "该字段是必填项。"
|
|
|
|
|
|
#: applications/serializers/attrs/application_type/chrome.py:17
|
|
|
#: applications/serializers/attrs/application_type/vmware_client.py:22
|
|
|
msgid "Target URL"
|
|
|
msgstr "目标URL"
|
|
|
|
|
|
#: applications/serializers/attrs/application_type/chrome.py:23
|
|
|
#: applications/serializers/attrs/application_type/custom.py:25
|
|
|
#: applications/serializers/attrs/application_type/mysql_workbench.py:34
|
|
|
#: applications/serializers/attrs/application_type/vmware_client.py:30
|
|
|
#: assets/models/base.py:177 audits/signals_handler.py:65
|
|
|
#: authentication/forms.py:22
|
|
|
#: authentication/templates/authentication/login.html:163
|
|
|
#: settings/serializers/auth/ldap.py:44 users/forms/profile.py:21
|
|
|
#: users/templates/users/user_otp_check_password.html:13
|
|
|
#: users/templates/users/user_password_update.html:43
|
|
|
#: users/templates/users/user_password_verify.html:18
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:39
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:114
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:182
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:64
|
|
|
msgid "Password"
|
|
|
msgstr "密码"
|
|
|
|
|
|
#: applications/serializers/attrs/application_type/custom.py:13
|
|
|
msgid "Operating parameter"
|
|
|
msgstr "运行参数"
|
|
|
|
|
|
#: applications/serializers/attrs/application_type/custom.py:17
|
|
|
msgid "Target url"
|
|
|
msgstr "目标URL"
|
|
|
|
|
|
#: assets/api/domain.py:50
|
|
|
msgid "Number required"
|
|
|
msgstr "需要为数字"
|
|
|
|
|
|
#: assets/api/node.py:65
|
|
|
msgid "You can't update the root node name"
|
|
|
msgstr "不能修改根节点名称"
|
|
|
|
|
|
#: assets/api/node.py:72
|
|
|
msgid "You can't delete the root node ({})"
|
|
|
msgstr "不能删除根节点 ({})"
|
|
|
|
|
|
#: assets/api/node.py:75
|
|
|
msgid "Deletion failed and the node contains assets"
|
|
|
msgstr "删除失败,节点包含资产"
|
|
|
|
|
|
#: assets/models/asset.py:140
|
|
|
msgid "Base"
|
|
|
msgstr "基础"
|
|
|
|
|
|
#: assets/models/asset.py:141
|
|
|
msgid "Charset"
|
|
|
msgstr "编码"
|
|
|
|
|
|
#: assets/models/asset.py:142 assets/serializers/asset.py:172
|
|
|
#: tickets/models/ticket.py:50
|
|
|
msgid "Meta"
|
|
|
msgstr "元数据"
|
|
|
|
|
|
#: assets/models/asset.py:143
|
|
|
msgid "Internal"
|
|
|
msgstr "内部的"
|
|
|
|
|
|
#: assets/models/asset.py:163 assets/models/asset.py:187
|
|
|
#: assets/serializers/asset.py:63 perms/serializers/asset/user_permission.py:43
|
|
|
msgid "Platform"
|
|
|
msgstr "系统平台"
|
|
|
|
|
|
#: assets/models/asset.py:186 assets/serializers/asset.py:65
|
|
|
#: perms/serializers/asset/user_permission.py:41
|
|
|
#: xpack/plugins/cloud/models.py:104 xpack/plugins/cloud/serializers/task.py:42
|
|
|
msgid "Protocols"
|
|
|
msgstr "协议组"
|
|
|
|
|
|
#: assets/models/asset.py:189 assets/models/user.py:198
|
|
|
#: perms/models/asset_permission.py:100
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:44
|
|
|
#: xpack/plugins/gathered_user/models.py:24
|
|
|
msgid "Nodes"
|
|
|
msgstr "节点"
|
|
|
|
|
|
#: assets/models/asset.py:190 assets/models/cmd_filter.py:22
|
|
|
#: assets/models/domain.py:66 assets/models/label.py:22
|
|
|
#: authentication/models.py:46
|
|
|
msgid "Is active"
|
|
|
msgstr "激活"
|
|
|
|
|
|
#: assets/models/asset.py:193 assets/models/cluster.py:19
|
|
|
#: assets/models/user.py:195 assets/models/user.py:330 templates/_nav.html:44
|
|
|
msgid "Admin user"
|
|
|
msgstr "特权用户"
|
|
|
|
|
|
#: assets/models/asset.py:196
|
|
|
msgid "Public IP"
|
|
|
msgstr "公网IP"
|
|
|
|
|
|
#: assets/models/asset.py:197
|
|
|
msgid "Asset number"
|
|
|
msgstr "资产编号"
|
|
|
|
|
|
#: assets/models/asset.py:200
|
|
|
msgid "Vendor"
|
|
|
msgstr "制造商"
|
|
|
|
|
|
#: assets/models/asset.py:201
|
|
|
msgid "Model"
|
|
|
msgstr "型号"
|
|
|
|
|
|
#: assets/models/asset.py:202
|
|
|
msgid "Serial number"
|
|
|
msgstr "序列号"
|
|
|
|
|
|
#: assets/models/asset.py:204
|
|
|
msgid "CPU model"
|
|
|
msgstr "CPU型号"
|
|
|
|
|
|
#: assets/models/asset.py:205
|
|
|
msgid "CPU count"
|
|
|
msgstr "CPU数量"
|
|
|
|
|
|
#: assets/models/asset.py:206
|
|
|
msgid "CPU cores"
|
|
|
msgstr "CPU核数"
|
|
|
|
|
|
#: assets/models/asset.py:207
|
|
|
msgid "CPU vcpus"
|
|
|
msgstr "CPU总数"
|
|
|
|
|
|
#: assets/models/asset.py:208
|
|
|
msgid "Memory"
|
|
|
msgstr "内存"
|
|
|
|
|
|
#: assets/models/asset.py:209
|
|
|
msgid "Disk total"
|
|
|
msgstr "硬盘大小"
|
|
|
|
|
|
#: assets/models/asset.py:210
|
|
|
msgid "Disk info"
|
|
|
msgstr "硬盘信息"
|
|
|
|
|
|
#: assets/models/asset.py:212
|
|
|
msgid "OS"
|
|
|
msgstr "操作系统"
|
|
|
|
|
|
#: assets/models/asset.py:213
|
|
|
msgid "OS version"
|
|
|
msgstr "系统版本"
|
|
|
|
|
|
#: assets/models/asset.py:214
|
|
|
msgid "OS arch"
|
|
|
msgstr "系统架构"
|
|
|
|
|
|
#: assets/models/asset.py:215
|
|
|
msgid "Hostname raw"
|
|
|
msgstr "主机名原始"
|
|
|
|
|
|
#: assets/models/asset.py:217 templates/_nav.html:46
|
|
|
msgid "Labels"
|
|
|
msgstr "标签管理"
|
|
|
|
|
|
#: assets/models/asset.py:218 assets/models/base.py:183
|
|
|
#: assets/models/cluster.py:28 assets/models/cmd_filter.py:26
|
|
|
#: assets/models/cmd_filter.py:67 assets/models/group.py:21
|
|
|
#: common/db/models.py:70 common/mixins/models.py:49 orgs/models.py:25
|
|
|
#: orgs/models.py:437 perms/models/base.py:51 users/models/user.py:646
|
|
|
#: users/serializers/group.py:33
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:45
|
|
|
#: xpack/plugins/cloud/models.py:119 xpack/plugins/gathered_user/models.py:30
|
|
|
msgid "Created by"
|
|
|
msgstr "创建者"
|
|
|
|
|
|
#: assets/models/asset.py:219 assets/models/base.py:181
|
|
|
#: assets/models/cluster.py:26 assets/models/domain.py:27
|
|
|
#: assets/models/gathered_user.py:19 assets/models/group.py:22
|
|
|
#: assets/models/label.py:25 common/db/models.py:72 common/mixins/models.py:50
|
|
|
#: ops/models/adhoc.py:38 ops/models/command.py:29 orgs/models.py:26
|
|
|
#: orgs/models.py:435 perms/models/base.py:52 users/models/group.py:18
|
|
|
#: users/models/user.py:841 xpack/plugins/cloud/models.py:122
|
|
|
msgid "Date created"
|
|
|
msgstr "创建日期"
|
|
|
|
|
|
#: assets/models/authbook.py:26
|
|
|
msgid "AuthBook"
|
|
|
msgstr "账号"
|
|
|
|
|
|
#: assets/models/base.py:30 assets/tasks/const.py:51 audits/const.py:5
|
|
|
msgid "Unknown"
|
|
|
msgstr "未知"
|
|
|
|
|
|
#: assets/models/base.py:31
|
|
|
msgid "Ok"
|
|
|
msgstr "成功"
|
|
|
|
|
|
#: assets/models/base.py:32 audits/models.py:102
|
|
|
#: xpack/plugins/cloud/const.py:28
|
|
|
msgid "Failed"
|
|
|
msgstr "失败"
|
|
|
|
|
|
#: assets/models/base.py:38
|
|
|
msgid "Connectivity"
|
|
|
msgstr "可连接性"
|
|
|
|
|
|
#: assets/models/base.py:40
|
|
|
msgid "Date verified"
|
|
|
msgstr "校验日期"
|
|
|
|
|
|
#: assets/models/base.py:178 xpack/plugins/change_auth_plan/models/asset.py:54
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:126
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:202
|
|
|
msgid "SSH private key"
|
|
|
msgstr "SSH密钥"
|
|
|
|
|
|
#: assets/models/base.py:179 xpack/plugins/change_auth_plan/models/asset.py:57
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:122
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:198
|
|
|
msgid "SSH public key"
|
|
|
msgstr "SSH公钥"
|
|
|
|
|
|
#: assets/models/base.py:182 assets/models/gathered_user.py:20
|
|
|
#: common/db/models.py:73 common/mixins/models.py:51 ops/models/adhoc.py:39
|
|
|
#: orgs/models.py:436
|
|
|
msgid "Date updated"
|
|
|
msgstr "更新日期"
|
|
|
|
|
|
#: assets/models/cluster.py:20
|
|
|
msgid "Bandwidth"
|
|
|
msgstr "带宽"
|
|
|
|
|
|
#: assets/models/cluster.py:21
|
|
|
msgid "Contact"
|
|
|
msgstr "联系人"
|
|
|
|
|
|
#: assets/models/cluster.py:22 users/models/user.py:624
|
|
|
msgid "Phone"
|
|
|
msgstr "手机"
|
|
|
|
|
|
#: assets/models/cluster.py:23
|
|
|
msgid "Address"
|
|
|
msgstr "地址"
|
|
|
|
|
|
#: assets/models/cluster.py:24
|
|
|
msgid "Intranet"
|
|
|
msgstr "内网"
|
|
|
|
|
|
#: assets/models/cluster.py:25
|
|
|
msgid "Extranet"
|
|
|
msgstr "外网"
|
|
|
|
|
|
#: assets/models/cluster.py:27
|
|
|
msgid "Operator"
|
|
|
msgstr "运营商"
|
|
|
|
|
|
#: assets/models/cluster.py:36 assets/models/group.py:34
|
|
|
#: xpack/plugins/cloud/providers/nutanix.py:30
|
|
|
msgid "Default"
|
|
|
msgstr "默认"
|
|
|
|
|
|
#: assets/models/cluster.py:36 assets/models/label.py:14
|
|
|
#: users/models/user.py:826
|
|
|
msgid "System"
|
|
|
msgstr "系统"
|
|
|
|
|
|
#: assets/models/cluster.py:36
|
|
|
msgid "Default Cluster"
|
|
|
msgstr "默认Cluster"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:33 assets/models/user.py:213
|
|
|
msgid "Command filter"
|
|
|
msgstr "命令过滤器"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:40
|
|
|
msgid "Regex"
|
|
|
msgstr "正则表达式"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:41 ops/models/command.py:25
|
|
|
#: terminal/backends/command/serializers.py:15 terminal/models/session.py:49
|
|
|
msgid "Command"
|
|
|
msgstr "命令"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:47
|
|
|
msgid "Deny"
|
|
|
msgstr "拒绝"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:49
|
|
|
msgid "Reconfirm"
|
|
|
msgstr "复核"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:52
|
|
|
msgid "Filter"
|
|
|
msgstr "过滤器"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:56 settings/serializers/basic.py:10
|
|
|
#: xpack/plugins/license/models.py:29
|
|
|
msgid "Content"
|
|
|
msgstr "内容"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:56
|
|
|
msgid "One line one command"
|
|
|
msgstr "每行一个命令"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:71
|
|
|
msgid "Command filter rule"
|
|
|
msgstr "命令过滤规则"
|
|
|
|
|
|
#: assets/models/cmd_filter.py:111 tickets/const.py:13
|
|
|
msgid "Command confirm"
|
|
|
msgstr "命令复核"
|
|
|
|
|
|
#: assets/models/domain.py:73
|
|
|
msgid "Gateway"
|
|
|
msgstr "网关"
|
|
|
|
|
|
#: assets/models/domain.py:128
|
|
|
#, python-brace-format
|
|
|
msgid "Unable to connect to port {port} on {ip}"
|
|
|
msgstr "无法连接到 {ip} 上的端口 {port}"
|
|
|
|
|
|
#: assets/models/domain.py:131
|
|
|
msgid "Authentication failed"
|
|
|
msgstr "认证失败"
|
|
|
|
|
|
#: assets/models/domain.py:133 assets/models/domain.py:155
|
|
|
msgid "Connect failed"
|
|
|
msgstr "连接失败"
|
|
|
|
|
|
#: assets/models/gathered_user.py:16
|
|
|
msgid "Present"
|
|
|
msgstr "存在"
|
|
|
|
|
|
#: assets/models/gathered_user.py:17
|
|
|
msgid "Date last login"
|
|
|
msgstr "最后登录日期"
|
|
|
|
|
|
#: assets/models/gathered_user.py:18
|
|
|
msgid "IP last login"
|
|
|
msgstr "最后登录IP"
|
|
|
|
|
|
#: assets/models/gathered_user.py:31
|
|
|
msgid "GatherUser"
|
|
|
msgstr "收集用户"
|
|
|
|
|
|
#: assets/models/group.py:30
|
|
|
msgid "Asset group"
|
|
|
msgstr "资产组"
|
|
|
|
|
|
#: assets/models/group.py:34
|
|
|
msgid "Default asset group"
|
|
|
msgstr "默认资产组"
|
|
|
|
|
|
#: assets/models/label.py:19 assets/models/node.py:546 settings/models.py:30
|
|
|
msgid "Value"
|
|
|
msgstr "值"
|
|
|
|
|
|
#: assets/models/node.py:151
|
|
|
msgid "New node"
|
|
|
msgstr "新节点"
|
|
|
|
|
|
#: assets/models/node.py:474 users/templates/users/_granted_assets.html:130
|
|
|
msgid "empty"
|
|
|
msgstr "空"
|
|
|
|
|
|
#: assets/models/node.py:545 perms/models/asset_permission.py:176
|
|
|
msgid "Key"
|
|
|
msgstr "键"
|
|
|
|
|
|
#: assets/models/node.py:547
|
|
|
msgid "Full value"
|
|
|
msgstr "全称"
|
|
|
|
|
|
#: assets/models/node.py:550 perms/models/asset_permission.py:177
|
|
|
msgid "Parent key"
|
|
|
msgstr "ssh私钥"
|
|
|
|
|
|
#: assets/models/node.py:559 assets/serializers/system_user.py:206
|
|
|
#: users/templates/users/user_asset_permission.html:41
|
|
|
#: users/templates/users/user_asset_permission.html:73
|
|
|
#: users/templates/users/user_asset_permission.html:158
|
|
|
#: xpack/plugins/cloud/models.py:93 xpack/plugins/cloud/serializers/task.py:68
|
|
|
msgid "Node"
|
|
|
msgstr "节点"
|
|
|
|
|
|
#: assets/models/user.py:189
|
|
|
msgid "Automatic managed"
|
|
|
msgstr "托管密码"
|
|
|
|
|
|
#: assets/models/user.py:190
|
|
|
msgid "Manually input"
|
|
|
msgstr "手动输入"
|
|
|
|
|
|
#: assets/models/user.py:194
|
|
|
msgid "Common user"
|
|
|
msgstr "普通用户"
|
|
|
|
|
|
#: assets/models/user.py:197
|
|
|
msgid "Username same with user"
|
|
|
msgstr "用户名与用户相同"
|
|
|
|
|
|
#: assets/models/user.py:200 assets/serializers/domain.py:28
|
|
|
#: templates/_nav.html:39 xpack/plugins/change_auth_plan/models/asset.py:40
|
|
|
msgid "Assets"
|
|
|
msgstr "资产"
|
|
|
|
|
|
#: assets/models/user.py:204 templates/_nav.html:17
|
|
|
#: users/views/profile/pubkey.py:37
|
|
|
msgid "Users"
|
|
|
msgstr "用户管理"
|
|
|
|
|
|
#: assets/models/user.py:205
|
|
|
msgid "User groups"
|
|
|
msgstr "用户组"
|
|
|
|
|
|
#: assets/models/user.py:209
|
|
|
msgid "Auto push"
|
|
|
msgstr "自动推送"
|
|
|
|
|
|
#: assets/models/user.py:210
|
|
|
msgid "Sudo"
|
|
|
msgstr "Sudo"
|
|
|
|
|
|
#: assets/models/user.py:211
|
|
|
msgid "Shell"
|
|
|
msgstr "Shell"
|
|
|
|
|
|
#: assets/models/user.py:212
|
|
|
msgid "Login mode"
|
|
|
msgstr "认证方式"
|
|
|
|
|
|
#: assets/models/user.py:214
|
|
|
msgid "SFTP Root"
|
|
|
msgstr "SFTP根路径"
|
|
|
|
|
|
#: assets/models/user.py:215 authentication/models.py:98
|
|
|
msgid "Token"
|
|
|
msgstr ""
|
|
|
|
|
|
#: assets/models/user.py:216
|
|
|
msgid "Home"
|
|
|
msgstr "家目录"
|
|
|
|
|
|
#: assets/models/user.py:217
|
|
|
msgid "System groups"
|
|
|
msgstr "用户组"
|
|
|
|
|
|
#: assets/models/utils.py:35
|
|
|
#, python-format
|
|
|
msgid "%(value)s is not an even number"
|
|
|
msgstr "%(value)s is not an even number"
|
|
|
|
|
|
#: assets/serializers/account.py:31 assets/serializers/account.py:52
|
|
|
msgid "System user display"
|
|
|
msgstr "系统用户名称"
|
|
|
|
|
|
#: assets/serializers/asset.py:20
|
|
|
msgid "Protocol format should {}/{}"
|
|
|
msgstr "协议格式 {}/{}"
|
|
|
|
|
|
#: assets/serializers/asset.py:37
|
|
|
msgid "Protocol duplicate: {}"
|
|
|
msgstr "协议重复: {}"
|
|
|
|
|
|
#: assets/serializers/asset.py:66
|
|
|
msgid "Domain name"
|
|
|
msgstr "网域名称"
|
|
|
|
|
|
#: assets/serializers/asset.py:67
|
|
|
msgid "Nodes name"
|
|
|
msgstr "节点名称"
|
|
|
|
|
|
#: assets/serializers/asset.py:101
|
|
|
msgid "Hardware info"
|
|
|
msgstr "硬件信息"
|
|
|
|
|
|
#: assets/serializers/asset.py:102 assets/serializers/system_user.py:225
|
|
|
#: orgs/mixins/serializers.py:26
|
|
|
msgid "Org name"
|
|
|
msgstr "组织名称"
|
|
|
|
|
|
#: assets/serializers/asset.py:103
|
|
|
msgid "Admin user display"
|
|
|
msgstr "特权用户名称"
|
|
|
|
|
|
#: assets/serializers/base.py:41
|
|
|
msgid "private key invalid"
|
|
|
msgstr "密钥不合法"
|
|
|
|
|
|
#: assets/serializers/domain.py:12 assets/serializers/label.py:12
|
|
|
#: assets/serializers/system_user.py:52
|
|
|
#: perms/serializers/asset/permission.py:72
|
|
|
msgid "Assets amount"
|
|
|
msgstr "资产数量"
|
|
|
|
|
|
#: assets/serializers/domain.py:13
|
|
|
#: perms/serializers/application/permission.py:43
|
|
|
msgid "Applications amount"
|
|
|
msgstr "应用数量"
|
|
|
|
|
|
#: assets/serializers/domain.py:14
|
|
|
msgid "Gateways count"
|
|
|
msgstr "网关数量"
|
|
|
|
|
|
#: assets/serializers/node.py:18
|
|
|
msgid "value"
|
|
|
msgstr "值"
|
|
|
|
|
|
#: assets/serializers/node.py:29
|
|
|
msgid "Can't contains: /"
|
|
|
msgstr "不能包含: /"
|
|
|
|
|
|
#: assets/serializers/node.py:39
|
|
|
msgid "The same level node name cannot be the same"
|
|
|
msgstr "同级别节点名字不能重复"
|
|
|
|
|
|
#: assets/serializers/system_user.py:27
|
|
|
msgid "SSH key fingerprint"
|
|
|
msgstr "密钥指纹"
|
|
|
|
|
|
#: assets/serializers/system_user.py:51
|
|
|
#: perms/serializers/asset/permission.py:73
|
|
|
msgid "Nodes amount"
|
|
|
msgstr "节点数量"
|
|
|
|
|
|
#: assets/serializers/system_user.py:53 assets/serializers/system_user.py:208
|
|
|
msgid "Login mode display"
|
|
|
msgstr "认证方式名称"
|
|
|
|
|
|
#: assets/serializers/system_user.py:55
|
|
|
msgid "Ad domain"
|
|
|
msgstr "Ad 网域"
|
|
|
|
|
|
#: assets/serializers/system_user.py:56
|
|
|
msgid "Is asset protocol"
|
|
|
msgstr ""
|
|
|
|
|
|
#: assets/serializers/system_user.py:96
|
|
|
msgid "Username same with user with protocol {} only allow 1"
|
|
|
msgstr "用户名和用户相同的一种协议只允许存在一个"
|
|
|
|
|
|
#: assets/serializers/system_user.py:110
|
|
|
msgid "* Automatic login mode must fill in the username."
|
|
|
msgstr "自动登录模式,必须填写用户名"
|
|
|
|
|
|
#: assets/serializers/system_user.py:124
|
|
|
msgid "Path should starts with /"
|
|
|
msgstr "路径应该以 / 开头"
|
|
|
|
|
|
#: assets/serializers/system_user.py:149
|
|
|
msgid "Password or private key required"
|
|
|
msgstr "密码或密钥密码需要一个"
|
|
|
|
|
|
#: assets/serializers/system_user.py:224
|
|
|
msgid "System user name"
|
|
|
msgstr "系统用户名称"
|
|
|
|
|
|
#: assets/serializers/system_user.py:234
|
|
|
msgid "Asset hostname"
|
|
|
msgstr "资产主机名"
|
|
|
|
|
|
#: assets/serializers/utils.py:9
|
|
|
msgid "Password can not contains `{{` "
|
|
|
msgstr "密码不能包含 `{{` 字符"
|
|
|
|
|
|
#: assets/tasks/account_connectivity.py:30
|
|
|
msgid "The asset {} system platform {} does not support run Ansible tasks"
|
|
|
msgstr "资产 {} 系统平台 {} 不支持运行 Ansible 任务"
|
|
|
|
|
|
#: assets/tasks/account_connectivity.py:107
|
|
|
msgid "Test account connectivity: {}"
|
|
|
msgstr "测试账号可连接性: {}"
|
|
|
|
|
|
#: assets/tasks/asset_connectivity.py:49
|
|
|
msgid "Test assets connectivity"
|
|
|
msgstr "测试资产可连接性"
|
|
|
|
|
|
#: assets/tasks/asset_connectivity.py:91 assets/tasks/asset_connectivity.py:102
|
|
|
msgid "Test assets connectivity: {}"
|
|
|
msgstr "测试资产可连接性: {}"
|
|
|
|
|
|
#: assets/tasks/asset_connectivity.py:113
|
|
|
msgid "Test if the assets under the node are connectable: {}"
|
|
|
msgstr "测试节点下资产是否可连接: {}"
|
|
|
|
|
|
#: assets/tasks/const.py:49
|
|
|
msgid "Unreachable"
|
|
|
msgstr "不可达"
|
|
|
|
|
|
#: assets/tasks/const.py:50
|
|
|
msgid "Reachable"
|
|
|
msgstr "可连接"
|
|
|
|
|
|
#: assets/tasks/gather_asset_hardware_info.py:46
|
|
|
msgid "Get asset info failed: {}"
|
|
|
msgstr "获取资产信息失败:{}"
|
|
|
|
|
|
#: assets/tasks/gather_asset_hardware_info.py:97
|
|
|
msgid "Update some assets hardware info"
|
|
|
msgstr "更新资产硬件信息"
|
|
|
|
|
|
#: assets/tasks/gather_asset_hardware_info.py:114
|
|
|
msgid "Update asset hardware info: {}"
|
|
|
msgstr "更新资产硬件信息: {}"
|
|
|
|
|
|
#: assets/tasks/gather_asset_hardware_info.py:120
|
|
|
msgid "Update assets hardware info: {}"
|
|
|
msgstr "更新资产硬件信息: {}"
|
|
|
|
|
|
#: assets/tasks/gather_asset_hardware_info.py:137
|
|
|
msgid "Update node asset hardware information: {}"
|
|
|
msgstr "更新节点资产硬件信息: {}"
|
|
|
|
|
|
#: assets/tasks/gather_asset_users.py:111
|
|
|
msgid "Gather assets users"
|
|
|
msgstr "收集资产上的用户"
|
|
|
|
|
|
#: assets/tasks/nodes_amount.py:27
|
|
|
msgid ""
|
|
|
"The task of self-checking is already running and cannot be started repeatedly"
|
|
|
msgstr "自检程序已经在运行,不能重复启动"
|
|
|
|
|
|
#: assets/tasks/push_system_user.py:194
|
|
|
msgid "System user is dynamic: {}"
|
|
|
msgstr "系统用户是动态的: {}"
|
|
|
|
|
|
#: assets/tasks/push_system_user.py:234
|
|
|
msgid "Start push system user for platform: [{}]"
|
|
|
msgstr "推送系统用户到平台: [{}]"
|
|
|
|
|
|
#: assets/tasks/push_system_user.py:235
|
|
|
#: assets/tasks/system_user_connectivity.py:106
|
|
|
msgid "Hosts count: {}"
|
|
|
msgstr "主机数量: {}"
|
|
|
|
|
|
#: assets/tasks/push_system_user.py:277 assets/tasks/push_system_user.py:310
|
|
|
msgid "Push system users to assets: {}"
|
|
|
msgstr "推送系统用户到入资产: {}"
|
|
|
|
|
|
#: assets/tasks/push_system_user.py:289
|
|
|
msgid "Push system users to asset: {}({}) => {}"
|
|
|
msgstr "推送系统用户到入资产: {}({}) => {}"
|
|
|
|
|
|
#: assets/tasks/system_user_connectivity.py:56
|
|
|
msgid "Dynamic system user not support test"
|
|
|
msgstr "动态系统用户不支持测试"
|
|
|
|
|
|
#: assets/tasks/system_user_connectivity.py:105
|
|
|
msgid "Start test system user connectivity for platform: [{}]"
|
|
|
msgstr "开始测试系统用户在该系统平台的可连接性: [{}]"
|
|
|
|
|
|
#: assets/tasks/system_user_connectivity.py:118
|
|
|
msgid "Test system user connectivity: {}"
|
|
|
msgstr "测试系统用户可连接性: {}"
|
|
|
|
|
|
#: assets/tasks/system_user_connectivity.py:129
|
|
|
msgid "Test system user connectivity: {} => {}"
|
|
|
msgstr "测试系统用户可连接性: {} => {}"
|
|
|
|
|
|
#: assets/tasks/system_user_connectivity.py:148
|
|
|
msgid "Test system user connectivity period: {}"
|
|
|
msgstr "定期测试系统用户可连接性: {}"
|
|
|
|
|
|
#: assets/tasks/utils.py:17
|
|
|
msgid "Asset has been disabled, skipped: {}"
|
|
|
msgstr "资产已经被禁用, 跳过: {}"
|
|
|
|
|
|
#: assets/tasks/utils.py:21
|
|
|
msgid "Asset may not be support ansible, skipped: {}"
|
|
|
msgstr "资产或许不支持ansible, 跳过: {}"
|
|
|
|
|
|
#: assets/tasks/utils.py:39
|
|
|
msgid "For security, do not push user {}"
|
|
|
msgstr "为了安全,禁止推送用户 {}"
|
|
|
|
|
|
#: assets/tasks/utils.py:55
|
|
|
msgid "No assets matched, stop task"
|
|
|
msgstr "没有匹配到资产,结束任务"
|
|
|
|
|
|
#: audits/models.py:26 audits/models.py:53
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:65
|
|
|
#: users/templates/users/user_asset_permission.html:128
|
|
|
#: users/templates/users/user_database_app_permission.html:111
|
|
|
msgid "Delete"
|
|
|
msgstr "删除"
|
|
|
|
|
|
#: audits/models.py:27
|
|
|
msgid "Upload"
|
|
|
msgstr "上传文件"
|
|
|
|
|
|
#: audits/models.py:28
|
|
|
msgid "Download"
|
|
|
msgstr "下载文件"
|
|
|
|
|
|
#: audits/models.py:29
|
|
|
msgid "Rmdir"
|
|
|
msgstr "删除目录"
|
|
|
|
|
|
#: audits/models.py:30
|
|
|
msgid "Rename"
|
|
|
msgstr "重命名"
|
|
|
|
|
|
#: audits/models.py:31
|
|
|
msgid "Mkdir"
|
|
|
msgstr "创建目录"
|
|
|
|
|
|
#: audits/models.py:32
|
|
|
msgid "Symlink"
|
|
|
msgstr "建立软链接"
|
|
|
|
|
|
#: audits/models.py:37 audits/models.py:60 audits/models.py:76
|
|
|
#: terminal/models/session.py:45 terminal/models/sharing.py:76
|
|
|
msgid "Remote addr"
|
|
|
msgstr "远端地址"
|
|
|
|
|
|
#: audits/models.py:40
|
|
|
msgid "Operate"
|
|
|
msgstr "操作"
|
|
|
|
|
|
#: audits/models.py:41
|
|
|
msgid "Filename"
|
|
|
msgstr "文件名"
|
|
|
|
|
|
#: audits/models.py:42 audits/models.py:101 terminal/models/sharing.py:84
|
|
|
msgid "Success"
|
|
|
msgstr "成功"
|
|
|
|
|
|
#: audits/models.py:43 ops/models/command.py:30 perms/models/base.py:49
|
|
|
#: terminal/models/session.py:52
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:57
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:47
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:105
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:189
|
|
|
#: xpack/plugins/gathered_user/models.py:76
|
|
|
msgid "Date start"
|
|
|
msgstr "开始日期"
|
|
|
|
|
|
#: audits/models.py:51
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:22
|
|
|
msgid "Create"
|
|
|
msgstr "创建"
|
|
|
|
|
|
#: audits/models.py:52 templates/_csv_import_export.html:18
|
|
|
#: templates/_csv_update_modal.html:6
|
|
|
#: users/templates/users/user_asset_permission.html:127
|
|
|
#: users/templates/users/user_database_app_permission.html:110
|
|
|
msgid "Update"
|
|
|
msgstr "更新"
|
|
|
|
|
|
#: audits/models.py:58
|
|
|
msgid "Resource Type"
|
|
|
msgstr "资源类型"
|
|
|
|
|
|
#: audits/models.py:59
|
|
|
msgid "Resource"
|
|
|
msgstr "资源"
|
|
|
|
|
|
#: audits/models.py:61 audits/models.py:77
|
|
|
msgid "Datetime"
|
|
|
msgstr "日期"
|
|
|
|
|
|
#: audits/models.py:75
|
|
|
msgid "Change by"
|
|
|
msgstr "修改者"
|
|
|
|
|
|
#: audits/models.py:95
|
|
|
msgid "Disabled"
|
|
|
msgstr "禁用"
|
|
|
|
|
|
#: audits/models.py:96 settings/models.py:33
|
|
|
msgid "Enabled"
|
|
|
msgstr "启用"
|
|
|
|
|
|
#: audits/models.py:97
|
|
|
msgid "-"
|
|
|
msgstr ""
|
|
|
|
|
|
#: audits/models.py:106
|
|
|
msgid "Login type"
|
|
|
msgstr "登录方式"
|
|
|
|
|
|
#: audits/models.py:107
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_confirm.py:14
|
|
|
msgid "Login ip"
|
|
|
msgstr "登录IP"
|
|
|
|
|
|
#: audits/models.py:108
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_confirm.py:17
|
|
|
msgid "Login city"
|
|
|
msgstr "登录城市"
|
|
|
|
|
|
#: audits/models.py:109 audits/serializers.py:44
|
|
|
msgid "User agent"
|
|
|
msgstr "用户代理"
|
|
|
|
|
|
#: audits/models.py:110
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:14
|
|
|
#: authentication/templates/authentication/login_otp.html:6
|
|
|
#: users/forms/profile.py:64 users/models/user.py:627
|
|
|
#: users/serializers/profile.py:102
|
|
|
msgid "MFA"
|
|
|
msgstr "多因子认证"
|
|
|
|
|
|
#: audits/models.py:111 terminal/models/sharing.py:88
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:187
|
|
|
#: xpack/plugins/cloud/models.py:176
|
|
|
msgid "Reason"
|
|
|
msgstr "原因"
|
|
|
|
|
|
#: audits/models.py:112 tickets/models/ticket.py:57
|
|
|
#: xpack/plugins/cloud/models.py:172 xpack/plugins/cloud/models.py:221
|
|
|
msgid "Status"
|
|
|
msgstr "状态"
|
|
|
|
|
|
#: audits/models.py:113
|
|
|
msgid "Date login"
|
|
|
msgstr "登录日期"
|
|
|
|
|
|
#: audits/models.py:114
|
|
|
msgid "Authentication backend"
|
|
|
msgstr "认证方式"
|
|
|
|
|
|
#: audits/serializers.py:14
|
|
|
msgid "Operate display"
|
|
|
msgstr "操作名称"
|
|
|
|
|
|
#: audits/serializers.py:30 tickets/serializers/ticket/ticket.py:23
|
|
|
msgid "Status display"
|
|
|
msgstr "状态名称"
|
|
|
|
|
|
#: audits/serializers.py:31
|
|
|
msgid "MFA display"
|
|
|
msgstr "多因子认证"
|
|
|
|
|
|
#: audits/serializers.py:75 audits/serializers.py:90 ops/models/adhoc.py:248
|
|
|
#: terminal/serializers/session.py:35
|
|
|
msgid "Is success"
|
|
|
msgstr "是否成功"
|
|
|
|
|
|
#: audits/serializers.py:77
|
|
|
msgid "Hosts display"
|
|
|
msgstr "主机名称"
|
|
|
|
|
|
#: audits/serializers.py:89 ops/models/command.py:26
|
|
|
#: xpack/plugins/cloud/models.py:170
|
|
|
msgid "Result"
|
|
|
msgstr "结果"
|
|
|
|
|
|
#: audits/serializers.py:91 terminal/serializers/storage.py:151
|
|
|
msgid "Hosts"
|
|
|
msgstr "主机"
|
|
|
|
|
|
#: audits/serializers.py:92
|
|
|
msgid "Run as"
|
|
|
msgstr "运行用户"
|
|
|
|
|
|
#: audits/serializers.py:94
|
|
|
msgid "Run as display"
|
|
|
msgstr "运行用户名称"
|
|
|
|
|
|
#: audits/serializers.py:95
|
|
|
msgid "User display"
|
|
|
msgstr "用户名称"
|
|
|
|
|
|
#: audits/signals_handler.py:64
|
|
|
msgid "SSH Key"
|
|
|
msgstr "SSH 密钥"
|
|
|
|
|
|
#: audits/signals_handler.py:66
|
|
|
msgid "SSO"
|
|
|
msgstr ""
|
|
|
|
|
|
#: audits/signals_handler.py:67
|
|
|
msgid "Auth Token"
|
|
|
msgstr "认证令牌"
|
|
|
|
|
|
#: audits/signals_handler.py:68 authentication/views/login.py:160
|
|
|
#: notifications/backends/__init__.py:11 users/models/user.py:660
|
|
|
msgid "WeCom"
|
|
|
msgstr "企业微信"
|
|
|
|
|
|
#: audits/signals_handler.py:69 authentication/views/login.py:166
|
|
|
#: notifications/backends/__init__.py:12 users/models/user.py:661
|
|
|
msgid "DingTalk"
|
|
|
msgstr "钉钉"
|
|
|
|
|
|
#: audits/signals_handler.py:102
|
|
|
msgid "User and Organization"
|
|
|
msgstr "用户与组织"
|
|
|
|
|
|
#: audits/signals_handler.py:103
|
|
|
#, python-brace-format
|
|
|
msgid "{User} JOINED {Organization}"
|
|
|
msgstr "{User} 加入 {Organization}"
|
|
|
|
|
|
#: audits/signals_handler.py:104
|
|
|
#, python-brace-format
|
|
|
msgid "{User} LEFT {Organization}"
|
|
|
msgstr "{User} 离开 {Organization}"
|
|
|
|
|
|
#: audits/signals_handler.py:107
|
|
|
msgid "User and Group"
|
|
|
msgstr "用户与用户组"
|
|
|
|
|
|
#: audits/signals_handler.py:108
|
|
|
#, python-brace-format
|
|
|
msgid "{User} JOINED {UserGroup}"
|
|
|
msgstr "{User} 加入 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:109
|
|
|
#, python-brace-format
|
|
|
msgid "{User} LEFT {UserGroup}"
|
|
|
msgstr "{User} 离开 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:112
|
|
|
msgid "Asset and SystemUser"
|
|
|
msgstr "资产与系统用户"
|
|
|
|
|
|
#: audits/signals_handler.py:113
|
|
|
#, python-brace-format
|
|
|
msgid "{Asset} ADD {SystemUser}"
|
|
|
msgstr "{Asset} 添加 {SystemUser}"
|
|
|
|
|
|
#: audits/signals_handler.py:114
|
|
|
#, python-brace-format
|
|
|
msgid "{Asset} REMOVE {SystemUser}"
|
|
|
msgstr "{Asset} 移除 {SystemUser}"
|
|
|
|
|
|
#: audits/signals_handler.py:117
|
|
|
msgid "Node and Asset"
|
|
|
msgstr "节点与资产"
|
|
|
|
|
|
#: audits/signals_handler.py:118
|
|
|
#, python-brace-format
|
|
|
msgid "{Node} ADD {Asset}"
|
|
|
msgstr "{Node} 添加 {Asset}"
|
|
|
|
|
|
#: audits/signals_handler.py:119
|
|
|
#, python-brace-format
|
|
|
msgid "{Node} REMOVE {Asset}"
|
|
|
msgstr "{Node} 移除 {Asset}"
|
|
|
|
|
|
#: audits/signals_handler.py:122
|
|
|
msgid "User asset permissions"
|
|
|
msgstr "用户资产授权"
|
|
|
|
|
|
#: audits/signals_handler.py:123
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} ADD {User}"
|
|
|
msgstr "{AssetPermission} 添加 {User}"
|
|
|
|
|
|
#: audits/signals_handler.py:124
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} REMOVE {User}"
|
|
|
msgstr "{AssetPermission} 移除 {User}"
|
|
|
|
|
|
#: audits/signals_handler.py:127
|
|
|
msgid "User group asset permissions"
|
|
|
msgstr "用户组资产授权"
|
|
|
|
|
|
#: audits/signals_handler.py:128
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} ADD {UserGroup}"
|
|
|
msgstr "{AssetPermission} 添加 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:129
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} REMOVE {UserGroup}"
|
|
|
msgstr "{AssetPermission} 移除 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:132 perms/models/asset_permission.py:106
|
|
|
#: templates/_nav.html:78 users/templates/users/_user_detail_nav_header.html:31
|
|
|
msgid "Asset permission"
|
|
|
msgstr "资产授权"
|
|
|
|
|
|
#: audits/signals_handler.py:133
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} ADD {Asset}"
|
|
|
msgstr "{AssetPermission} 添加 {Asset}"
|
|
|
|
|
|
#: audits/signals_handler.py:134
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} REMOVE {Asset}"
|
|
|
msgstr "{AssetPermission} 移除 {Asset}"
|
|
|
|
|
|
#: audits/signals_handler.py:137
|
|
|
msgid "Node permission"
|
|
|
msgstr "节点授权"
|
|
|
|
|
|
#: audits/signals_handler.py:138
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} ADD {Node}"
|
|
|
msgstr "{AssetPermission} 添加 {Node}"
|
|
|
|
|
|
#: audits/signals_handler.py:139
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} REMOVE {Node}"
|
|
|
msgstr "{AssetPermission} 移除 {Node}"
|
|
|
|
|
|
#: audits/signals_handler.py:142
|
|
|
msgid "Asset permission and SystemUser"
|
|
|
msgstr "资产授权与系统用户"
|
|
|
|
|
|
#: audits/signals_handler.py:143
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} ADD {SystemUser}"
|
|
|
msgstr "{AssetPermission} 添加 {SystemUser}"
|
|
|
|
|
|
#: audits/signals_handler.py:144
|
|
|
#, python-brace-format
|
|
|
msgid "{AssetPermission} REMOVE {SystemUser}"
|
|
|
msgstr "{AssetPermission} 移除 {SystemUser}"
|
|
|
|
|
|
#: audits/signals_handler.py:147
|
|
|
msgid "User application permissions"
|
|
|
msgstr "用户应用授权"
|
|
|
|
|
|
#: audits/signals_handler.py:148
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} ADD {User}"
|
|
|
msgstr "{ApplicationPermission} 添加 {User}"
|
|
|
|
|
|
#: audits/signals_handler.py:149
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} REMOVE {User}"
|
|
|
msgstr "{ApplicationPermission} 移除 {User}"
|
|
|
|
|
|
#: audits/signals_handler.py:152
|
|
|
msgid "User group application permissions"
|
|
|
msgstr "用户组应用授权"
|
|
|
|
|
|
#: audits/signals_handler.py:153
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} ADD {UserGroup}"
|
|
|
msgstr "{ApplicationPermission} 添加 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:154
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} REMOVE {UserGroup}"
|
|
|
msgstr "{ApplicationPermission} 移除 {UserGroup}"
|
|
|
|
|
|
#: audits/signals_handler.py:157 perms/models/application_permission.py:37
|
|
|
msgid "Application permission"
|
|
|
msgstr "应用管理"
|
|
|
|
|
|
#: audits/signals_handler.py:158
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} ADD {Application}"
|
|
|
msgstr "{ApplicationPermission} 添加 {Application}"
|
|
|
|
|
|
#: audits/signals_handler.py:159
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} REMOVE {Application}"
|
|
|
msgstr "{ApplicationPermission} 移除 {Application}"
|
|
|
|
|
|
#: audits/signals_handler.py:162
|
|
|
msgid "Application permission and SystemUser"
|
|
|
msgstr "应用授权与系统用户"
|
|
|
|
|
|
#: audits/signals_handler.py:163
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} ADD {SystemUser}"
|
|
|
msgstr "{ApplicationPermission} 添加 {SystemUser}"
|
|
|
|
|
|
#: audits/signals_handler.py:164
|
|
|
#, python-brace-format
|
|
|
msgid "{ApplicationPermission} REMOVE {SystemUser}"
|
|
|
msgstr "{ApplicationPermission} 移除 {SystemUser}"
|
|
|
|
|
|
#: authentication/api/connection_token.py:227
|
|
|
msgid "Invalid token"
|
|
|
msgstr "无效的令牌"
|
|
|
|
|
|
#: authentication/api/mfa.py:81
|
|
|
msgid "Code is invalid"
|
|
|
msgstr "Code无效"
|
|
|
|
|
|
#: authentication/backends/api.py:67
|
|
|
msgid "Invalid signature header. No credentials provided."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:70
|
|
|
msgid "Invalid signature header. Signature string should not contain spaces."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:77
|
|
|
msgid "Invalid signature header. Format like AccessKeyId:Signature"
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:81
|
|
|
msgid ""
|
|
|
"Invalid signature header. Signature string should not contain invalid "
|
|
|
"characters."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:101 authentication/backends/api.py:117
|
|
|
msgid "Invalid signature."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:108
|
|
|
msgid "HTTP header: Date not provide or not %a, %d %b %Y %H:%M:%S GMT"
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:113
|
|
|
msgid "Expired, more than 15 minutes"
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:120
|
|
|
msgid "User disabled."
|
|
|
msgstr "用户已禁用"
|
|
|
|
|
|
#: authentication/backends/api.py:138
|
|
|
msgid "Invalid token header. No credentials provided."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:141
|
|
|
msgid "Invalid token header. Sign string should not contain spaces."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:148
|
|
|
msgid ""
|
|
|
"Invalid token header. Sign string should not contain invalid characters."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/backends/api.py:159
|
|
|
msgid "Invalid token or cache refreshed."
|
|
|
msgstr ""
|
|
|
|
|
|
#: authentication/errors.py:27
|
|
|
msgid "Username/password check failed"
|
|
|
msgstr "用户名/密码 校验失败"
|
|
|
|
|
|
#: authentication/errors.py:28
|
|
|
msgid "Password decrypt failed"
|
|
|
msgstr "密码解密失败"
|
|
|
|
|
|
#: authentication/errors.py:29
|
|
|
msgid "MFA failed"
|
|
|
msgstr "多因子认证失败"
|
|
|
|
|
|
#: authentication/errors.py:30
|
|
|
msgid "MFA unset"
|
|
|
msgstr "多因子认证没有设定"
|
|
|
|
|
|
#: authentication/errors.py:31
|
|
|
msgid "Username does not exist"
|
|
|
msgstr "用户名不存在"
|
|
|
|
|
|
#: authentication/errors.py:32
|
|
|
msgid "Password expired"
|
|
|
msgstr "密码已过期"
|
|
|
|
|
|
#: authentication/errors.py:33
|
|
|
msgid "Disabled or expired"
|
|
|
msgstr "禁用或失效"
|
|
|
|
|
|
#: authentication/errors.py:34
|
|
|
msgid "This account is inactive."
|
|
|
msgstr "此账户已禁用"
|
|
|
|
|
|
#: authentication/errors.py:35
|
|
|
msgid "This account is expired"
|
|
|
msgstr "此账户已过期"
|
|
|
|
|
|
#: authentication/errors.py:36
|
|
|
msgid "Auth backend not match"
|
|
|
msgstr "没有匹配到认证后端"
|
|
|
|
|
|
#: authentication/errors.py:37
|
|
|
msgid "ACL is not allowed"
|
|
|
msgstr "ACL 不被允许"
|
|
|
|
|
|
#: authentication/errors.py:38
|
|
|
msgid "Only local users are allowed"
|
|
|
msgstr "仅允许本地用户"
|
|
|
|
|
|
#: authentication/errors.py:48
|
|
|
msgid "No session found, check your cookie"
|
|
|
msgstr "会话已变更,刷新页面"
|
|
|
|
|
|
#: authentication/errors.py:50
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"The username or password you entered is incorrect, please enter it again. "
|
|
|
"You can also try {times_try} times (The account will be temporarily locked "
|
|
|
"for {block_time} minutes)"
|
|
|
msgstr ""
|
|
|
"您输入的用户名或密码不正确,请重新输入。 您还可以尝试 {times_try} 次(账号将"
|
|
|
"被临时 锁定 {block_time} 分钟)"
|
|
|
|
|
|
#: authentication/errors.py:56 authentication/errors.py:60
|
|
|
msgid ""
|
|
|
"The account has been locked (please contact admin to unlock it or try again "
|
|
|
"after {} minutes)"
|
|
|
msgstr "账号已被锁定(请联系管理员解锁 或 {}分钟后重试)"
|
|
|
|
|
|
#: authentication/errors.py:64
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"One-time password invalid, or ntp sync server time, You can also try "
|
|
|
"{times_try} times (The account will be temporarily locked for {block_time} "
|
|
|
"minutes)"
|
|
|
msgstr ""
|
|
|
"虚拟MFA 不正确,或者服务器端时间不对。 您还可以尝试 {times_try} 次(账号将被"
|
|
|
"临时 锁定 {block_time} 分钟)"
|
|
|
|
|
|
#: authentication/errors.py:69
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"SMS verify code invalid,You can also try {times_try} times (The account will "
|
|
|
"be temporarily locked for {block_time} minutes)"
|
|
|
msgstr ""
|
|
|
"短信验证码不正确。 您还可以尝试 {times_try} 次(账号将被临时 锁定 "
|
|
|
"{block_time} 分钟)"
|
|
|
|
|
|
#: authentication/errors.py:74
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"The MFA type({mfa_type}) is not supported, You can also try {times_try} "
|
|
|
"times (The account will be temporarily locked for {block_time} minutes)"
|
|
|
msgstr ""
|
|
|
"该({mfa_type}) MFA 类型不支持, 您还可以尝试 {times_try} 次(账号将被临时 锁"
|
|
|
"定 {block_time} 分钟)"
|
|
|
|
|
|
#: authentication/errors.py:79
|
|
|
msgid "MFA required"
|
|
|
msgstr "需要多因子认证"
|
|
|
|
|
|
#: authentication/errors.py:80
|
|
|
msgid "MFA not set, please set it first"
|
|
|
msgstr "多因子认证没有设置,请先完成设置"
|
|
|
|
|
|
#: authentication/errors.py:81
|
|
|
msgid "Login confirm required"
|
|
|
msgstr "需要登录复核"
|
|
|
|
|
|
#: authentication/errors.py:82
|
|
|
msgid "Wait login confirm ticket for accept"
|
|
|
msgstr "等待登录复核处理"
|
|
|
|
|
|
#: authentication/errors.py:83
|
|
|
msgid "Login confirm ticket was {}"
|
|
|
msgstr "登录复核 {}"
|
|
|
|
|
|
#: authentication/errors.py:260
|
|
|
msgid "IP is not allowed"
|
|
|
msgstr "来源 IP 不被允许登录"
|
|
|
|
|
|
#: authentication/errors.py:293
|
|
|
msgid "SSO auth closed"
|
|
|
msgstr "SSO 认证关闭了"
|
|
|
|
|
|
#: authentication/errors.py:298 authentication/mixins.py:321
|
|
|
msgid "Your password is too simple, please change it for security"
|
|
|
msgstr "你的密码过于简单,为了安全,请修改"
|
|
|
|
|
|
#: authentication/errors.py:307 authentication/mixins.py:328
|
|
|
msgid "You should to change your password before login"
|
|
|
msgstr "登录完成前,请先修改密码"
|
|
|
|
|
|
#: authentication/errors.py:316 authentication/mixins.py:335
|
|
|
msgid "Your password has expired, please reset before logging in"
|
|
|
msgstr "您的密码已过期,先修改再登录"
|
|
|
|
|
|
#: authentication/errors.py:350
|
|
|
msgid "Your password is invalid"
|
|
|
msgstr "您的密码无效"
|
|
|
|
|
|
#: authentication/forms.py:35
|
|
|
msgid "{} days auto login"
|
|
|
msgstr "{} 天内自动登录"
|
|
|
|
|
|
#: authentication/forms.py:46
|
|
|
msgid "MFA Code"
|
|
|
msgstr "MFA 验证码"
|
|
|
|
|
|
#: authentication/forms.py:47
|
|
|
msgid "MFA type"
|
|
|
msgstr "MFA 类型"
|
|
|
|
|
|
#: authentication/forms.py:60 authentication/forms.py:62
|
|
|
#: users/forms/profile.py:27
|
|
|
msgid "MFA code"
|
|
|
msgstr "多因子认证验证码"
|
|
|
|
|
|
#: authentication/mixins.py:311
|
|
|
msgid "Please change your password"
|
|
|
msgstr "请修改密码"
|
|
|
|
|
|
#: authentication/models.py:40
|
|
|
msgid "Private Token"
|
|
|
msgstr "SSH密钥"
|
|
|
|
|
|
#: authentication/models.py:49 settings/serializers/security.py:118
|
|
|
msgid "Login Confirm"
|
|
|
msgstr "登录复核"
|
|
|
|
|
|
#: authentication/models.py:90
|
|
|
msgid "{} need confirm by {}"
|
|
|
msgstr "{} 需要 {} 复核"
|
|
|
|
|
|
#: authentication/models.py:99
|
|
|
msgid "Expired"
|
|
|
msgstr "过期时间"
|
|
|
|
|
|
#: authentication/notifications.py:11
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"<h3>{subject}</h3><p>Dear {server_name} user, Hello!</p><p>Your account has "
|
|
|
"remote login behavior, please pay attention.</p><p>User: {username}</"
|
|
|
"p><p>Login time: {time}</p><p>Login location: {city} ({ip})</p><p>If you "
|
|
|
"suspect that the login behavior is abnormal, please modify <p>the account "
|
|
|
"password in time.</p><br><p>Thank you for your attention to {server_name}!</"
|
|
|
"p>"
|
|
|
msgstr ""
|
|
|
"<h3>{subject}</h3><p>尊敬的{server_name}用户, 您好!</p><p>您的账"
|
|
|
"号存在异地登录行为,请关注。</p><p>用户: {username}</p><p>登录时间: {time}</"
|
|
|
"p><p>登录地点: {city} ({ip})</p><p>若怀疑此次登录行为异常,请及时修改账号密"
|
|
|
"码。</p><br><p>感谢您对{server_name}的关注!</p>"
|
|
|
|
|
|
#: authentication/notifications.py:36
|
|
|
msgid "Different city login reminder"
|
|
|
msgstr "异地登录提醒"
|
|
|
|
|
|
#: authentication/notifications.py:40
|
|
|
#, python-brace-format
|
|
|
msgid ""
|
|
|
"{subject}\n"
|
|
|
"Dear {server_name} user, Hello!\n"
|
|
|
"Your account has remote login behavior, please pay attention.\n"
|
|
|
"User: {username}\n"
|
|
|
"Login time: {time}\n"
|
|
|
"Login location: {city} ({ip})\n"
|
|
|
"If you suspect that the login behavior is abnormal, please modify the "
|
|
|
"account password in time.\n"
|
|
|
"Thank you for your attention to {server_name}!\n"
|
|
|
msgstr ""
|
|
|
"{subject}\n"
|
|
|
"尊敬的{server_name}用户, 您好!\n"
|
|
|
"您的账号存在异地登录行为,请关注。\n"
|
|
|
"用户: {username}\n"
|
|
|
"登录时间: {time}\n"
|
|
|
"登录地点: {city} ({ip})\n"
|
|
|
"若怀疑此次登录行为异常,请及时修改账号密码。\n"
|
|
|
"感谢您对{server_name}的关注!\n"
|
|
|
|
|
|
#: authentication/sms_verify_code.py:17
|
|
|
msgid "The verification code has expired. Please resend it"
|
|
|
msgstr "验证码已过期,请重新发送"
|
|
|
|
|
|
#: authentication/sms_verify_code.py:22
|
|
|
msgid "The verification code is incorrect"
|
|
|
msgstr "验证码错误"
|
|
|
|
|
|
#: authentication/sms_verify_code.py:27
|
|
|
msgid "Please wait {} seconds before sending"
|
|
|
msgstr "请在 {} 秒后发送"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:6
|
|
|
msgid "API key list"
|
|
|
msgstr "API Key列表"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:18
|
|
|
msgid "Using api key sign api header, every requests header difference"
|
|
|
msgstr "使用api key签名请求头,每个请求的头部是不一样的"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:19
|
|
|
msgid "docs"
|
|
|
msgstr "文档"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:30
|
|
|
#: users/serializers/group.py:35
|
|
|
msgid "ID"
|
|
|
msgstr "ID"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:31
|
|
|
#: settings/serializers/auth/radius.py:17
|
|
|
msgid "Secret"
|
|
|
msgstr "密钥"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:33
|
|
|
msgid "Date"
|
|
|
msgstr "日期"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:48
|
|
|
#: users/templates/users/_granted_assets.html:75
|
|
|
msgid "Show"
|
|
|
msgstr "显示"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:66
|
|
|
#: settings/serializers/security.py:25 users/models/user.py:470
|
|
|
#: users/serializers/profile.py:99
|
|
|
#: users/templates/users/user_verify_mfa.html:32
|
|
|
msgid "Disable"
|
|
|
msgstr "禁用"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:67
|
|
|
#: users/models/user.py:471 users/serializers/profile.py:100
|
|
|
msgid "Enable"
|
|
|
msgstr "启用"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:147
|
|
|
msgid "Delete success"
|
|
|
msgstr "删除成功"
|
|
|
|
|
|
#: authentication/templates/authentication/_access_key_modal.html:155
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:53
|
|
|
#: templates/_modal.html:22 tickets/const.py:36
|
|
|
msgid "Close"
|
|
|
msgstr "关闭"
|
|
|
|
|
|
#: authentication/templates/authentication/_captcha_field.html:8
|
|
|
msgid "Play CAPTCHA as audio file"
|
|
|
msgstr "语言播放验证码"
|
|
|
|
|
|
#: authentication/templates/authentication/_captcha_field.html:15
|
|
|
#: users/forms/profile.py:102
|
|
|
msgid "Captcha"
|
|
|
msgstr "验证码"
|
|
|
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:5
|
|
|
msgid "MFA confirm"
|
|
|
msgstr "多因子认证校验"
|
|
|
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:17
|
|
|
msgid "Need MFA for view auth"
|
|
|
msgstr "需要多因子认证来查看账号信息"
|
|
|
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:20
|
|
|
#: templates/_modal.html:23 users/templates/users/user_password_verify.html:20
|
|
|
msgid "Confirm"
|
|
|
msgstr "确认"
|
|
|
|
|
|
#: authentication/templates/authentication/_mfa_confirm_modal.html:25
|
|
|
msgid "Code error"
|
|
|
msgstr "代码错误"
|
|
|
|
|
|
#: authentication/templates/authentication/login.html:155
|
|
|
msgid "Welcome back, please enter username and password to login"
|
|
|
msgstr "欢迎回来,请输入用户名和密码登录"
|
|
|
|
|
|
#: authentication/templates/authentication/login.html:187
|
|
|
#: users/templates/users/forgot_password.html:15
|
|
|
#: users/templates/users/forgot_password.html:16
|
|
|
msgid "Forgot password"
|
|
|
msgstr "忘记密码"
|
|
|
|
|
|
#: authentication/templates/authentication/login.html:194
|
|
|
#: templates/_header_bar.html:83
|
|
|
msgid "Login"
|
|
|
msgstr "登录"
|
|
|
|
|
|
#: authentication/templates/authentication/login.html:201
|
|
|
msgid "More login options"
|
|
|
msgstr "更多登录方式"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:24
|
|
|
msgid "Please enter the verification code"
|
|
|
msgstr "请输入验证码"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:25
|
|
|
#: authentication/templates/authentication/login_otp.html:75
|
|
|
msgid "Send verification code"
|
|
|
msgstr "发送验证码"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:29
|
|
|
#: users/templates/users/user_otp_check_password.html:16
|
|
|
#: users/templates/users/user_otp_enable_bind.html:24
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:29
|
|
|
#: users/templates/users/user_verify_mfa.html:26
|
|
|
msgid "Next"
|
|
|
msgstr "下一步"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:31
|
|
|
msgid "Can't provide security? Please contact the administrator!"
|
|
|
msgstr "如果不能提供多因子认证验证码,请联系管理员!"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:68
|
|
|
#: authentication/templates/authentication/login_otp.html:73
|
|
|
msgid "Wait: "
|
|
|
msgstr "等待:"
|
|
|
|
|
|
#: authentication/templates/authentication/login_otp.html:81
|
|
|
msgid "The verification code has been sent"
|
|
|
msgstr "验证码已发送"
|
|
|
|
|
|
#: authentication/templates/authentication/login_wait_confirm.html:41
|
|
|
msgid "Refresh"
|
|
|
msgstr "刷新"
|
|
|
|
|
|
#: authentication/templates/authentication/login_wait_confirm.html:46
|
|
|
msgid "Copy link"
|
|
|
msgstr "复制链接"
|
|
|
|
|
|
#: authentication/templates/authentication/login_wait_confirm.html:51
|
|
|
msgid "Return"
|
|
|
msgstr "返回"
|
|
|
|
|
|
#: authentication/templates/authentication/login_wait_confirm.html:113
|
|
|
msgid "Copy success"
|
|
|
msgstr "复制成功"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:41
|
|
|
msgid "DingTalk Error, Please contact your system administrator"
|
|
|
msgstr "钉钉错误,请联系系统管理员"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:44
|
|
|
msgid "DingTalk Error"
|
|
|
msgstr "钉钉错误"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:56 authentication/views/feishu.py:52
|
|
|
#: authentication/views/wecom.py:56
|
|
|
msgid "You've been hacked"
|
|
|
msgstr "你被攻击了"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:92
|
|
|
msgid "DingTalk is already bound"
|
|
|
msgstr "钉钉已经绑定"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:105 authentication/views/feishu.py:99
|
|
|
#: authentication/views/wecom.py:104
|
|
|
msgid "Please verify your password first"
|
|
|
msgstr "请检查密码"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:129 authentication/views/wecom.py:128
|
|
|
msgid "Invalid user_id"
|
|
|
msgstr "无效的 user_id"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:145
|
|
|
msgid "DingTalk query user failed"
|
|
|
msgstr "钉钉查询用户失败"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:154
|
|
|
msgid "The DingTalk is already bound to another user"
|
|
|
msgstr "该钉钉已经绑定其他用户"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:159 authentication/views/dingtalk.py:242
|
|
|
#: authentication/views/dingtalk.py:243
|
|
|
msgid "Binding DingTalk successfully"
|
|
|
msgstr "绑定 钉钉 成功"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:211
|
|
|
msgid "Failed to get user from DingTalk"
|
|
|
msgstr "从钉钉获取用户失败"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:217
|
|
|
msgid "DingTalk is not bound"
|
|
|
msgstr "钉钉没有绑定"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:218
|
|
|
msgid "Please login with a password and then bind the DingTalk"
|
|
|
msgstr "请使用密码登录,然后绑定钉钉"
|
|
|
|
|
|
#: authentication/views/dingtalk.py:260 authentication/views/dingtalk.py:261
|
|
|
msgid "Binding DingTalk failed"
|
|
|
msgstr "绑定钉钉失败"
|
|
|
|
|
|
#: authentication/views/feishu.py:40
|
|
|
msgid "FeiShu Error"
|
|
|
msgstr "飞书错误"
|
|
|
|
|
|
#: authentication/views/feishu.py:86
|
|
|
msgid "FeiShu is already bound"
|
|
|
msgstr "飞书已经绑定"
|
|
|
|
|
|
#: authentication/views/feishu.py:133
|
|
|
msgid "FeiShu query user failed"
|
|
|
msgstr "飞书查询用户失败"
|
|
|
|
|
|
#: authentication/views/feishu.py:142
|
|
|
msgid "The FeiShu is already bound to another user"
|
|
|
msgstr "该飞书已经绑定其他用户"
|
|
|
|
|
|
#: authentication/views/feishu.py:147 authentication/views/feishu.py:229
|
|
|
#: authentication/views/feishu.py:230
|
|
|
msgid "Binding FeiShu successfully"
|
|
|
msgstr "绑定 飞书 成功"
|
|
|
|
|
|
#: authentication/views/feishu.py:198
|
|
|
msgid "Failed to get user from FeiShu"
|
|
|
msgstr "从飞书获取用户失败"
|
|
|
|
|
|
#: authentication/views/feishu.py:204
|
|
|
msgid "FeiShu is not bound"
|
|
|
msgstr "没有绑定飞书"
|
|
|
|
|
|
#: authentication/views/feishu.py:205
|
|
|
msgid "Please login with a password and then bind the FeiShu"
|
|
|
msgstr "请使用密码登录,然后绑定飞书"
|
|
|
|
|
|
#: authentication/views/feishu.py:247 authentication/views/feishu.py:248
|
|
|
msgid "Binding FeiShu failed"
|
|
|
msgstr "绑定飞书失败"
|
|
|
|
|
|
#: authentication/views/login.py:81
|
|
|
msgid "Redirecting"
|
|
|
msgstr "跳转中"
|
|
|
|
|
|
#: authentication/views/login.py:82
|
|
|
msgid "Redirecting to {} authentication"
|
|
|
msgstr "正在跳转到 {} 认证"
|
|
|
|
|
|
#: authentication/views/login.py:108
|
|
|
msgid "Please enable cookies and try again."
|
|
|
msgstr "设置你的浏览器支持cookie"
|
|
|
|
|
|
#: authentication/views/login.py:172 notifications/backends/__init__.py:14
|
|
|
#: users/models/user.py:662
|
|
|
msgid "FeiShu"
|
|
|
msgstr "飞书"
|
|
|
|
|
|
#: authentication/views/login.py:259
|
|
|
msgid ""
|
|
|
"Wait for <b>{}</b> confirm, You also can copy link to her/him <br/>\n"
|
|
|
" Don't close this page"
|
|
|
msgstr ""
|
|
|
"等待 <b>{}</b> 确认, 你也可以复制链接发给他/她 <br/>\n"
|
|
|
" 不要关闭本页面"
|
|
|
|
|
|
#: authentication/views/login.py:264
|
|
|
msgid "No ticket found"
|
|
|
msgstr "没有发现工单"
|
|
|
|
|
|
#: authentication/views/login.py:296
|
|
|
msgid "Logout success"
|
|
|
msgstr "退出登录成功"
|
|
|
|
|
|
#: authentication/views/login.py:297
|
|
|
msgid "Logout success, return login page"
|
|
|
msgstr "退出登录成功,返回到登录页面"
|
|
|
|
|
|
#: authentication/views/mfa.py:44 users/models/user.py:37
|
|
|
msgid "One-time password"
|
|
|
msgstr "一次性密码"
|
|
|
|
|
|
#: authentication/views/mfa.py:50
|
|
|
msgid "SMS"
|
|
|
msgstr "短信"
|
|
|
|
|
|
#: authentication/views/wecom.py:41
|
|
|
msgid "WeCom Error, Please contact your system administrator"
|
|
|
msgstr "企业微信错误,请联系系统管理员"
|
|
|
|
|
|
#: authentication/views/wecom.py:44
|
|
|
msgid "WeCom Error"
|
|
|
msgstr "企业微信错误"
|
|
|
|
|
|
#: authentication/views/wecom.py:91
|
|
|
msgid "WeCom is already bound"
|
|
|
msgstr "企业微信已经绑定"
|
|
|
|
|
|
#: authentication/views/wecom.py:143
|
|
|
msgid "WeCom query user failed"
|
|
|
msgstr "企业微信查询用户失败"
|
|
|
|
|
|
#: authentication/views/wecom.py:152
|
|
|
msgid "The WeCom is already bound to another user"
|
|
|
msgstr "该企业微信已经绑定其他用户"
|
|
|
|
|
|
#: authentication/views/wecom.py:157 authentication/views/wecom.py:240
|
|
|
#: authentication/views/wecom.py:241
|
|
|
msgid "Binding WeCom successfully"
|
|
|
msgstr "绑定 企业微信 成功"
|
|
|
|
|
|
#: authentication/views/wecom.py:209
|
|
|
msgid "Failed to get user from WeCom"
|
|
|
msgstr "从企业微信获取用户失败"
|
|
|
|
|
|
#: authentication/views/wecom.py:215
|
|
|
msgid "WeCom is not bound"
|
|
|
msgstr "没有绑定企业微信"
|
|
|
|
|
|
#: authentication/views/wecom.py:216
|
|
|
msgid "Please login with a password and then bind the WeCom"
|
|
|
msgstr "请使用密码登录,然后绑定企业微信"
|
|
|
|
|
|
#: authentication/views/wecom.py:258 authentication/views/wecom.py:259
|
|
|
msgid "Binding WeCom failed"
|
|
|
msgstr "绑定企业微信失败"
|
|
|
|
|
|
#: common/const/__init__.py:6
|
|
|
#, python-format
|
|
|
msgid "%(name)s was created successfully"
|
|
|
msgstr "%(name)s 创建成功"
|
|
|
|
|
|
#: common/const/__init__.py:7
|
|
|
#, python-format
|
|
|
msgid "%(name)s was updated successfully"
|
|
|
msgstr "%(name)s 更新成功"
|
|
|
|
|
|
#: common/db/encoder.py:17
|
|
|
msgid "ugettext_lazy"
|
|
|
msgstr ""
|
|
|
|
|
|
#: common/db/models.py:71
|
|
|
msgid "Updated by"
|
|
|
msgstr "更新人"
|
|
|
|
|
|
#: common/drf/exc_handlers.py:25
|
|
|
msgid "Object"
|
|
|
msgstr "对象"
|
|
|
|
|
|
#: common/drf/parsers/base.py:17
|
|
|
msgid "The file content overflowed (The maximum length `{}` bytes)"
|
|
|
msgstr "文件内容太大 (最大长度 `{}` 字节)"
|
|
|
|
|
|
#: common/drf/parsers/base.py:153
|
|
|
msgid "Parse file error: {}"
|
|
|
msgstr "解析文件错误: {}"
|
|
|
|
|
|
#: common/exceptions.py:15
|
|
|
#, python-format
|
|
|
msgid "%s object does not exist."
|
|
|
msgstr "%s对象不存在"
|
|
|
|
|
|
#: common/exceptions.py:25
|
|
|
msgid "Someone else is doing this. Please wait for complete"
|
|
|
msgstr "其他人正在操作,请等待他人完成"
|
|
|
|
|
|
#: common/exceptions.py:30
|
|
|
msgid "Your request timeout"
|
|
|
msgstr "您的请求超时了"
|
|
|
|
|
|
#: common/exceptions.py:35
|
|
|
msgid "M2M reverse not allowed"
|
|
|
msgstr "多对多反向是不被允许的"
|
|
|
|
|
|
#: common/exceptions.py:41
|
|
|
msgid "Is referenced by other objects and cannot be deleted"
|
|
|
msgstr "被其他对象关联,不能删除"
|
|
|
|
|
|
#: common/exceptions.py:47
|
|
|
msgid "This action require verify your MFA"
|
|
|
msgstr "这个操作需要验证 MFA"
|
|
|
|
|
|
#: common/fields/model.py:80
|
|
|
msgid "Marshal dict data to char field"
|
|
|
msgstr "编码 dict 为 char"
|
|
|
|
|
|
#: common/fields/model.py:84
|
|
|
msgid "Marshal dict data to text field"
|
|
|
msgstr "编码 dict 为 text"
|
|
|
|
|
|
#: common/fields/model.py:96
|
|
|
msgid "Marshal list data to char field"
|
|
|
msgstr "编码 list 为 char"
|
|
|
|
|
|
#: common/fields/model.py:100
|
|
|
msgid "Marshal list data to text field"
|
|
|
msgstr "编码 list 为 text"
|
|
|
|
|
|
#: common/fields/model.py:104
|
|
|
msgid "Marshal data to char field"
|
|
|
msgstr "编码数据为 char"
|
|
|
|
|
|
#: common/fields/model.py:108
|
|
|
msgid "Marshal data to text field"
|
|
|
msgstr "编码数据为 text"
|
|
|
|
|
|
#: common/fields/model.py:150
|
|
|
msgid "Encrypt field using Secret Key"
|
|
|
msgstr "加密的字段"
|
|
|
|
|
|
#: common/message/backends/exceptions.py:23
|
|
|
msgid "Network error, please contact system administrator"
|
|
|
msgstr "网络错误,请联系系统管理员"
|
|
|
|
|
|
#: common/message/backends/sms/__init__.py:15
|
|
|
msgid "Alibaba cloud"
|
|
|
msgstr "阿里云"
|
|
|
|
|
|
#: common/message/backends/sms/__init__.py:16
|
|
|
msgid "Tencent cloud"
|
|
|
msgstr "腾讯云"
|
|
|
|
|
|
#: common/message/backends/sms/__init__.py:42
|
|
|
msgid "SMS provider not support: {}"
|
|
|
msgstr "短信服务商不支持:{}"
|
|
|
|
|
|
#: common/message/backends/sms/__init__.py:63
|
|
|
msgid "SMS verification code signature or template invalid"
|
|
|
msgstr "短信验证码签名或模版无效"
|
|
|
|
|
|
#: common/message/backends/sms/alibaba.py:56
|
|
|
msgid "Signature does not match"
|
|
|
msgstr "签名不匹配"
|
|
|
|
|
|
#: common/message/backends/wecom/__init__.py:15
|
|
|
msgid "WeCom error, please contact system administrator"
|
|
|
msgstr "企业微信错误,请联系系统管理员"
|
|
|
|
|
|
#: common/mixins/api.py:58
|
|
|
msgid "Request file format may be wrong"
|
|
|
msgstr "上传的文件格式错误 或 其它类型资源的文件"
|
|
|
|
|
|
#: common/mixins/models.py:33
|
|
|
msgid "is discard"
|
|
|
msgstr "忽略的"
|
|
|
|
|
|
#: common/mixins/models.py:34
|
|
|
msgid "discard time"
|
|
|
msgstr "忽略时间"
|
|
|
|
|
|
#: common/utils/ipip/utils.py:15
|
|
|
msgid "Invalid ip"
|
|
|
msgstr "无效IP"
|
|
|
|
|
|
#: common/validators.py:15
|
|
|
msgid "Special char not allowed"
|
|
|
msgstr "不能包含特殊字符"
|
|
|
|
|
|
#: common/validators.py:27
|
|
|
msgid "This field must be unique."
|
|
|
msgstr "字段必须唯一"
|
|
|
|
|
|
#: common/validators.py:35
|
|
|
msgid "Should not contains special characters"
|
|
|
msgstr "不能包含特殊字符"
|
|
|
|
|
|
#: common/validators.py:41
|
|
|
msgid "The mobile phone number format is incorrect"
|
|
|
msgstr "手机号格式不正确"
|
|
|
|
|
|
#: jumpserver/context_processor.py:20
|
|
|
msgid "JumpServer Open Source Bastion Host"
|
|
|
msgstr "JumpServer 开源堡垒机"
|
|
|
|
|
|
#: jumpserver/views/celery_flower.py:23
|
|
|
msgid "<h1>Flower service unavailable, check it</h1>"
|
|
|
msgstr "Flower 服务不可用,请检查"
|
|
|
|
|
|
#: jumpserver/views/other.py:26
|
|
|
msgid ""
|
|
|
"<div>Luna is a separately deployed program, you need to deploy Luna, koko, "
|
|
|
"configure nginx for url distribution,</div> </div>If you see this page, "
|
|
|
"prove that you are not accessing the nginx listening port. Good luck.</div>"
|
|
|
msgstr ""
|
|
|
"<div>Luna是单独部署的一个程序,你需要部署luna,koko, </div><div>如果你看到了"
|
|
|
"这个页面,证明你访问的不是nginx监听的端口,祝你好运</div>"
|
|
|
|
|
|
#: jumpserver/views/other.py:70
|
|
|
msgid "Websocket server run on port: {}, you should proxy it on nginx"
|
|
|
msgstr "Websocket 服务运行在端口: {}, 请检查nginx是否代理是否设置"
|
|
|
|
|
|
#: jumpserver/views/other.py:84
|
|
|
msgid ""
|
|
|
"<div>Koko is a separately deployed program, you need to deploy Koko, "
|
|
|
"configure nginx for url distribution,</div> </div>If you see this page, "
|
|
|
"prove that you are not accessing the nginx listening port. Good luck.</div>"
|
|
|
msgstr ""
|
|
|
"<div>Koko是单独部署的一个程序,你需要部署Koko, 并确保nginx配置转发, </"
|
|
|
"div><div>如果你看到了这个页面,证明你访问的不是nginx监听的端口,祝你好运</"
|
|
|
"div>"
|
|
|
|
|
|
#: notifications/backends/__init__.py:10 users/forms/profile.py:101
|
|
|
#: users/models/user.py:607
|
|
|
msgid "Email"
|
|
|
msgstr "邮件"
|
|
|
|
|
|
#: notifications/backends/__init__.py:13
|
|
|
msgid "Site message"
|
|
|
msgstr "站内信"
|
|
|
|
|
|
#: notifications/notifications.py:126
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Time: {}"
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"时间:{}"
|
|
|
|
|
|
#: ops/api/celery.py:61 ops/api/celery.py:76
|
|
|
msgid "Waiting task start"
|
|
|
msgstr "等待任务开始"
|
|
|
|
|
|
#: ops/api/command.py:61
|
|
|
msgid "Not has host {} permission"
|
|
|
msgstr "没有该主机 {} 权限"
|
|
|
|
|
|
#: ops/apps.py:9 ops/notifications.py:14
|
|
|
msgid "Operations"
|
|
|
msgstr "运维"
|
|
|
|
|
|
#: ops/mixin.py:29 ops/mixin.py:92 ops/mixin.py:162
|
|
|
msgid "Cycle perform"
|
|
|
msgstr "周期执行"
|
|
|
|
|
|
#: ops/mixin.py:33 ops/mixin.py:90 ops/mixin.py:109 ops/mixin.py:150
|
|
|
#: settings/serializers/auth/ldap.py:64
|
|
|
msgid "Regularly perform"
|
|
|
msgstr "定期执行"
|
|
|
|
|
|
#: ops/mixin.py:106 ops/mixin.py:147
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:42
|
|
|
msgid "Periodic perform"
|
|
|
msgstr "定时执行"
|
|
|
|
|
|
#: ops/mixin.py:112 settings/serializers/auth/ldap.py:61
|
|
|
msgid "Interval"
|
|
|
msgstr "间隔"
|
|
|
|
|
|
#: ops/mixin.py:122
|
|
|
msgid "* Please enter a valid crontab expression"
|
|
|
msgstr "* 请输入有效的 crontab 表达式"
|
|
|
|
|
|
#: ops/mixin.py:129
|
|
|
msgid "Range {} to {}"
|
|
|
msgstr "输入在 {} - {} 范围之间"
|
|
|
|
|
|
#: ops/mixin.py:140
|
|
|
msgid "Require periodic or regularly perform setting"
|
|
|
msgstr "需要周期或定期设置"
|
|
|
|
|
|
#: ops/mixin.py:151
|
|
|
msgid ""
|
|
|
"eg: Every Sunday 03:05 run <5 3 * * 0> <br> Tips: Using 5 digits linux "
|
|
|
"crontab expressions <min hour day month week> (<a href='https://tool.lu/"
|
|
|
"crontab/' target='_blank'>Online tools</a>) <br>Note: If both Regularly "
|
|
|
"perform and Cycle perform are set, give priority to Regularly perform"
|
|
|
msgstr ""
|
|
|
"eg:每周日 03:05 执行 <5 3 * * 0> <br> 提示: 使用5位 Linux crontab 表达式 <"
|
|
|
"分 时 日 月 星期> (<a href='https://tool.lu/crontab/' target='_blank'>在线工"
|
|
|
"具</a>) <br>注意: 如果同时设置了定期执行和周期执行,优先使用定期执行"
|
|
|
|
|
|
#: ops/mixin.py:162 settings/serializers/auth/ldap.py:61
|
|
|
msgid "Unit: hour"
|
|
|
msgstr "单位: 时"
|
|
|
|
|
|
#: ops/models/adhoc.py:35
|
|
|
msgid "Callback"
|
|
|
msgstr "回调"
|
|
|
|
|
|
#: ops/models/adhoc.py:143
|
|
|
msgid "Tasks"
|
|
|
msgstr "任务"
|
|
|
|
|
|
#: ops/models/adhoc.py:144
|
|
|
msgid "Pattern"
|
|
|
msgstr "模式"
|
|
|
|
|
|
#: ops/models/adhoc.py:145
|
|
|
msgid "Options"
|
|
|
msgstr "选项"
|
|
|
|
|
|
#: ops/models/adhoc.py:147
|
|
|
msgid "Run as admin"
|
|
|
msgstr "再次执行"
|
|
|
|
|
|
#: ops/models/adhoc.py:150
|
|
|
msgid "Become"
|
|
|
msgstr "Become"
|
|
|
|
|
|
#: ops/models/adhoc.py:151
|
|
|
msgid "Create by"
|
|
|
msgstr "创建者"
|
|
|
|
|
|
#: ops/models/adhoc.py:240
|
|
|
msgid "Task display"
|
|
|
msgstr "任务名称"
|
|
|
|
|
|
#: ops/models/adhoc.py:242
|
|
|
msgid "Host amount"
|
|
|
msgstr "主机数量"
|
|
|
|
|
|
#: ops/models/adhoc.py:244
|
|
|
msgid "Start time"
|
|
|
msgstr "开始时间"
|
|
|
|
|
|
#: ops/models/adhoc.py:245
|
|
|
msgid "End time"
|
|
|
msgstr "完成时间"
|
|
|
|
|
|
#: ops/models/adhoc.py:246 xpack/plugins/change_auth_plan/models/base.py:108
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:190
|
|
|
#: xpack/plugins/gathered_user/models.py:79
|
|
|
msgid "Time"
|
|
|
msgstr "时间"
|
|
|
|
|
|
#: ops/models/adhoc.py:247 ops/models/command.py:28
|
|
|
#: terminal/serializers/session.py:39
|
|
|
msgid "Is finished"
|
|
|
msgstr "是否完成"
|
|
|
|
|
|
#: ops/models/adhoc.py:249
|
|
|
msgid "Adhoc raw result"
|
|
|
msgstr "结果"
|
|
|
|
|
|
#: ops/models/adhoc.py:250
|
|
|
msgid "Adhoc result summary"
|
|
|
msgstr "汇总"
|
|
|
|
|
|
#: ops/models/command.py:31
|
|
|
msgid "Date finished"
|
|
|
msgstr "结束日期"
|
|
|
|
|
|
#: ops/models/command.py:78
|
|
|
msgid "Task start"
|
|
|
msgstr "任务开始"
|
|
|
|
|
|
#: ops/models/command.py:102
|
|
|
msgid "Command `{}` is forbidden ........"
|
|
|
msgstr "命令 `{}` 不允许被执行 ......."
|
|
|
|
|
|
#: ops/models/command.py:115
|
|
|
msgid "Task end"
|
|
|
msgstr "任务结束"
|
|
|
|
|
|
#: ops/notifications.py:15
|
|
|
msgid "Server performance"
|
|
|
msgstr "监控告警"
|
|
|
|
|
|
#: ops/notifications.py:47
|
|
|
#, python-brace-format
|
|
|
msgid "The terminal is offline: {name}"
|
|
|
msgstr "终端已离线: {name}"
|
|
|
|
|
|
#: ops/notifications.py:53
|
|
|
#, python-brace-format
|
|
|
msgid "[Disk] Disk used more than {max_threshold}%: => {value} ({name})"
|
|
|
msgstr "[Disk] 硬盘使用率超过 {max_threshold}%: => {value} ({name})"
|
|
|
|
|
|
#: ops/notifications.py:60
|
|
|
#, python-brace-format
|
|
|
msgid "[Memory] Memory used more than {max_threshold}%: => {value} ({name})"
|
|
|
msgstr "[Memory] 内存使用率超过 {max_threshold}%: => {value} ({name})"
|
|
|
|
|
|
#: ops/notifications.py:67
|
|
|
#, python-brace-format
|
|
|
msgid "[CPU] CPU load more than {max_threshold}: => {value} ({name})"
|
|
|
msgstr "[CPU] CPU 使用率超过 {max_threshold}: => {value} ({name})"
|
|
|
|
|
|
#: ops/tasks.py:71
|
|
|
msgid "Clean task history period"
|
|
|
msgstr "定期清除任务历史"
|
|
|
|
|
|
#: ops/tasks.py:84
|
|
|
msgid "Clean celery log period"
|
|
|
msgstr "定期清除Celery日志"
|
|
|
|
|
|
#: ops/templates/ops/celery_task_log.html:4
|
|
|
msgid "Task log"
|
|
|
msgstr "任务列表"
|
|
|
|
|
|
#: ops/utils.py:64
|
|
|
msgid "Update task content: {}"
|
|
|
msgstr "更新任务内容: {}"
|
|
|
|
|
|
#: orgs/api.py:77
|
|
|
msgid "The current organization ({}) cannot be deleted"
|
|
|
msgstr "当前组织 ({}) 不能被删除"
|
|
|
|
|
|
#: orgs/api.py:85
|
|
|
msgid "The organization have resource ({}) cannot be deleted"
|
|
|
msgstr "组织存在资源 ({}) 不能被删除"
|
|
|
|
|
|
#: orgs/mixins/models.py:46 orgs/mixins/serializers.py:25 orgs/models.py:37
|
|
|
#: orgs/models.py:432 orgs/serializers.py:106
|
|
|
#: tickets/serializers/ticket/ticket.py:77
|
|
|
msgid "Organization"
|
|
|
msgstr "组织"
|
|
|
|
|
|
#: orgs/models.py:17 users/const.py:12
|
|
|
msgid "Organization administrator"
|
|
|
msgstr "组织管理员"
|
|
|
|
|
|
#: orgs/models.py:18 users/const.py:13
|
|
|
msgid "Organization auditor"
|
|
|
msgstr "组织审计员"
|
|
|
|
|
|
#: orgs/models.py:31
|
|
|
msgid "GLOBAL"
|
|
|
msgstr "全局组织"
|
|
|
|
|
|
#: orgs/models.py:434 users/models/user.py:615 users/serializers/user.py:37
|
|
|
#: users/templates/users/_select_user_modal.html:15
|
|
|
msgid "Role"
|
|
|
msgstr "角色"
|
|
|
|
|
|
#: perms/exceptions.py:9
|
|
|
msgid "The administrator is modifying permissions. Please wait"
|
|
|
msgstr "管理员正在修改授权,请稍等"
|
|
|
|
|
|
#: perms/exceptions.py:14
|
|
|
msgid "The authorization cannot be revoked for the time being"
|
|
|
msgstr "该授权暂时不能撤销"
|
|
|
|
|
|
#: perms/models/application_permission.py:27 users/models/user.py:182
|
|
|
msgid "Application"
|
|
|
msgstr "应用程序"
|
|
|
|
|
|
#: perms/models/asset_permission.py:37 settings/serializers/terminal.py:12
|
|
|
msgid "All"
|
|
|
msgstr "全部"
|
|
|
|
|
|
#: perms/models/asset_permission.py:38
|
|
|
msgid "Connect"
|
|
|
msgstr "连接"
|
|
|
|
|
|
#: perms/models/asset_permission.py:39
|
|
|
msgid "Upload file"
|
|
|
msgstr "上传文件"
|
|
|
|
|
|
#: perms/models/asset_permission.py:40
|
|
|
msgid "Download file"
|
|
|
msgstr "下载文件"
|
|
|
|
|
|
#: perms/models/asset_permission.py:41
|
|
|
msgid "Upload download"
|
|
|
msgstr "上传下载"
|
|
|
|
|
|
#: perms/models/asset_permission.py:42
|
|
|
msgid "Clipboard copy"
|
|
|
msgstr "剪贴板复制"
|
|
|
|
|
|
#: perms/models/asset_permission.py:43
|
|
|
msgid "Clipboard paste"
|
|
|
msgstr "剪贴板粘贴"
|
|
|
|
|
|
#: perms/models/asset_permission.py:44
|
|
|
msgid "Clipboard copy paste"
|
|
|
msgstr "剪贴板复制粘贴"
|
|
|
|
|
|
#: perms/models/asset_permission.py:102
|
|
|
#: perms/serializers/application/permission.py:39
|
|
|
#: perms/serializers/asset/permission.py:41
|
|
|
#: perms/serializers/asset/permission.py:69
|
|
|
msgid "Actions"
|
|
|
msgstr "动作"
|
|
|
|
|
|
#: perms/models/asset_permission.py:209
|
|
|
msgid "Ungrouped"
|
|
|
msgstr "未分组"
|
|
|
|
|
|
#: perms/models/asset_permission.py:211
|
|
|
msgid "Favorite"
|
|
|
msgstr "收藏夹"
|
|
|
|
|
|
#: perms/models/base.py:47 templates/_nav.html:21 users/models/group.py:31
|
|
|
#: users/models/user.py:611 users/templates/users/_select_user_modal.html:16
|
|
|
#: users/templates/users/user_asset_permission.html:39
|
|
|
#: users/templates/users/user_asset_permission.html:67
|
|
|
#: users/templates/users/user_database_app_permission.html:38
|
|
|
#: users/templates/users/user_database_app_permission.html:61
|
|
|
msgid "User group"
|
|
|
msgstr "用户组"
|
|
|
|
|
|
#: perms/models/base.py:50
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:60
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:50
|
|
|
#: users/models/user.py:643
|
|
|
msgid "Date expired"
|
|
|
msgstr "失效日期"
|
|
|
|
|
|
#: perms/models/base.py:54
|
|
|
msgid "From ticket"
|
|
|
msgstr "来自工单"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:18
|
|
|
#: perms/serializers/application/permission.py:38
|
|
|
#: perms/serializers/asset/permission.py:42
|
|
|
#: perms/serializers/asset/permission.py:68 users/serializers/user.py:78
|
|
|
msgid "Is valid"
|
|
|
msgstr "账户是否有效"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:19
|
|
|
#: perms/serializers/application/permission.py:37
|
|
|
#: perms/serializers/asset/permission.py:43
|
|
|
#: perms/serializers/asset/permission.py:67 users/serializers/user.py:29
|
|
|
#: users/serializers/user.py:79
|
|
|
msgid "Is expired"
|
|
|
msgstr "已过期"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:40
|
|
|
#: perms/serializers/asset/permission.py:70 users/serializers/group.py:34
|
|
|
msgid "Users amount"
|
|
|
msgstr "用户数量"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:41
|
|
|
#: perms/serializers/asset/permission.py:71
|
|
|
msgid "User groups amount"
|
|
|
msgstr "用户组数量"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:42
|
|
|
#: perms/serializers/asset/permission.py:74
|
|
|
msgid "System users amount"
|
|
|
msgstr "系统用户数量"
|
|
|
|
|
|
#: perms/serializers/application/permission.py:66
|
|
|
msgid ""
|
|
|
"The application list contains applications that are different from the "
|
|
|
"permission type. ({})"
|
|
|
msgstr "应用列表中包含与授权类型不同的应用。({})"
|
|
|
|
|
|
#: perms/serializers/asset/permission.py:44
|
|
|
msgid "Users display"
|
|
|
msgstr "用户名称"
|
|
|
|
|
|
#: perms/serializers/asset/permission.py:45
|
|
|
msgid "User groups display"
|
|
|
msgstr "用户名称"
|
|
|
|
|
|
#: perms/serializers/asset/permission.py:46
|
|
|
msgid "Assets display"
|
|
|
msgstr "资产名称"
|
|
|
|
|
|
#: perms/serializers/asset/permission.py:47
|
|
|
msgid "Nodes display"
|
|
|
msgstr "节点名称"
|
|
|
|
|
|
#: perms/serializers/asset/permission.py:48
|
|
|
msgid "System users display"
|
|
|
msgstr "系统用户名称"
|
|
|
|
|
|
#: settings/api/alibaba_sms.py:30 settings/api/tencent_sms.py:34
|
|
|
msgid "test_phone is required"
|
|
|
msgstr "测试手机号 该字段是必填项。"
|
|
|
|
|
|
#: settings/api/alibaba_sms.py:51 settings/api/dingtalk.py:36
|
|
|
#: settings/api/feishu.py:35 settings/api/tencent_sms.py:56
|
|
|
#: settings/api/wecom.py:36
|
|
|
msgid "Test success"
|
|
|
msgstr "测试成功"
|
|
|
|
|
|
#: settings/api/email.py:22
|
|
|
msgid "Test mail sent to {}, please check"
|
|
|
msgstr "邮件已经发送{}, 请检查"
|
|
|
|
|
|
#: settings/api/ldap.py:152
|
|
|
msgid "Synchronization start, please wait."
|
|
|
msgstr "同步开始,请稍等"
|
|
|
|
|
|
#: settings/api/ldap.py:156
|
|
|
msgid "Synchronization is running, please wait."
|
|
|
msgstr "同步正在运行,请稍等"
|
|
|
|
|
|
#: settings/api/ldap.py:161
|
|
|
msgid "Synchronization error: {}"
|
|
|
msgstr "同步错误: {}"
|
|
|
|
|
|
#: settings/api/ldap.py:194
|
|
|
msgid "Get ldap users is None"
|
|
|
msgstr "获取 LDAP 用户为 None"
|
|
|
|
|
|
#: settings/api/ldap.py:203
|
|
|
msgid "Imported {} users successfully (Organization: {})"
|
|
|
msgstr "成功导入 {} 个用户 ( 组织: {} )"
|
|
|
|
|
|
#: settings/api/public.py:41 xpack/plugins/interface/api.py:18
|
|
|
#: xpack/plugins/interface/models.py:36
|
|
|
msgid "Welcome to the JumpServer open source Bastion Host"
|
|
|
msgstr "欢迎使用JumpServer开源堡垒机"
|
|
|
|
|
|
#: settings/models.py:191 users/templates/users/reset_password.html:29
|
|
|
msgid "Setting"
|
|
|
msgstr "设置"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:10
|
|
|
msgid "CAS Auth"
|
|
|
msgstr "CAS 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:11
|
|
|
msgid "OPENID Auth"
|
|
|
msgstr "OIDC 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:12
|
|
|
msgid "RADIUS Auth"
|
|
|
msgstr "RADIUS 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:13
|
|
|
msgid "DingTalk Auth"
|
|
|
msgstr "钉钉 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:14
|
|
|
msgid "FeiShu Auth"
|
|
|
msgstr "飞书 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:15
|
|
|
msgid "WeCom Auth"
|
|
|
msgstr "企业微信 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:16
|
|
|
msgid "SSO Auth"
|
|
|
msgstr "SSO Token 认证"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:19 settings/serializers/basic.py:36
|
|
|
msgid "Forgot password url"
|
|
|
msgstr "忘记密码 URL"
|
|
|
|
|
|
#: settings/serializers/auth/base.py:25
|
|
|
msgid "Enable login redirect msg"
|
|
|
msgstr "启用登录跳转提示"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:11
|
|
|
msgid "Enable CAS Auth"
|
|
|
msgstr "启用 CAS 认证"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:12 settings/serializers/auth/oidc.py:32
|
|
|
msgid "Server url"
|
|
|
msgstr "服务端地址"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:13
|
|
|
msgid "Proxy server url"
|
|
|
msgstr "代理服务地址"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:14
|
|
|
msgid "Logout completely"
|
|
|
msgstr "同步注销"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:16
|
|
|
msgid "Username attr"
|
|
|
msgstr "用户名属性"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:17
|
|
|
msgid "Enable attributes map"
|
|
|
msgstr "启用属性映射"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:18
|
|
|
msgid "Rename attr"
|
|
|
msgstr "映射属性"
|
|
|
|
|
|
#: settings/serializers/auth/cas.py:19
|
|
|
msgid "Create user if not"
|
|
|
msgstr "创建用户(如果不存在)"
|
|
|
|
|
|
#: settings/serializers/auth/dingtalk.py:11
|
|
|
msgid "Enable DingTalk Auth"
|
|
|
msgstr "启用钉钉认证"
|
|
|
|
|
|
#: settings/serializers/auth/feishu.py:10
|
|
|
msgid "Enable FeiShu Auth"
|
|
|
msgstr "启用飞书认证"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:39
|
|
|
msgid "LDAP server"
|
|
|
msgstr "LDAP 地址"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:40
|
|
|
msgid "eg: ldap://localhost:389"
|
|
|
msgstr "如: ldap://localhost:389"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:42
|
|
|
msgid "Bind DN"
|
|
|
msgstr "绑定 DN"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:46
|
|
|
msgid "User OU"
|
|
|
msgstr "用户 OU"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:47
|
|
|
msgid "Use | split multi OUs"
|
|
|
msgstr "多个 OU 使用 | 分割"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:50
|
|
|
msgid "User search filter"
|
|
|
msgstr "用户过滤器"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:51
|
|
|
#, python-format
|
|
|
msgid "Choice may be (cn|uid|sAMAccountName)=%(user)s)"
|
|
|
msgstr "可能的选项是(cn或uid或sAMAccountName=%(user)s)"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:54
|
|
|
msgid "User attr map"
|
|
|
msgstr "用户属性映射"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:55
|
|
|
msgid ""
|
|
|
"User attr map present how to map LDAP user attr to jumpserver, username,name,"
|
|
|
"email is jumpserver attr"
|
|
|
msgstr ""
|
|
|
"用户属性映射代表怎样将LDAP中用户属性映射到jumpserver用户上,username, name,"
|
|
|
"email 是jumpserver的用户需要属性"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:58
|
|
|
#: xpack/plugins/cloud/serializers/task.py:69
|
|
|
#: xpack/plugins/gathered_user/serializers.py:20
|
|
|
msgid "Periodic display"
|
|
|
msgstr "定时执行"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:68
|
|
|
msgid "Connect timeout"
|
|
|
msgstr "连接超时时间"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:70
|
|
|
msgid "Search paged size"
|
|
|
msgstr "搜索分页数量"
|
|
|
|
|
|
#: settings/serializers/auth/ldap.py:72
|
|
|
msgid "Enable LDAP auth"
|
|
|
msgstr "启用 LDAP 认证"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:12
|
|
|
msgid "Base site url"
|
|
|
msgstr "JumpServer 地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:15
|
|
|
msgid "Client Id"
|
|
|
msgstr "客户端 ID"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:18
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:26
|
|
|
msgid "Client Secret"
|
|
|
msgstr "客户端密钥"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:20
|
|
|
msgid "Share session"
|
|
|
msgstr "共享会话"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:22
|
|
|
msgid "Ignore ssl verification"
|
|
|
msgstr "忽略 SSL 证书验证"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:29
|
|
|
msgid "Use Keycloak"
|
|
|
msgstr "使用 Keycloak"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:35
|
|
|
msgid "Realm name"
|
|
|
msgstr "域"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:41
|
|
|
msgid "Enable OPENID Auth"
|
|
|
msgstr "启用 OIDC 认证"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:43
|
|
|
msgid "Provider endpoint"
|
|
|
msgstr "端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:46
|
|
|
msgid "Provider auth endpoint"
|
|
|
msgstr "授权端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:49
|
|
|
msgid "Provider token endpoint"
|
|
|
msgstr "token 端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:52
|
|
|
msgid "Provider jwks endpoint"
|
|
|
msgstr "jwks 端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:55
|
|
|
msgid "Provider userinfo endpoint"
|
|
|
msgstr "用户信息端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:58
|
|
|
msgid "Provider end session endpoint"
|
|
|
msgstr "注销会话端点地址"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:61
|
|
|
msgid "Provider sign alg"
|
|
|
msgstr "签名算法"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:64
|
|
|
msgid "Provider sign key"
|
|
|
msgstr "签名 Key"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:66
|
|
|
msgid "Scopes"
|
|
|
msgstr "连接范围"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:68
|
|
|
msgid "Id token max age"
|
|
|
msgstr "令牌有效时间"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:71
|
|
|
msgid "Id token include claims"
|
|
|
msgstr "声明"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:73
|
|
|
msgid "Use state"
|
|
|
msgstr "使用状态"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:74
|
|
|
msgid "Use nonce"
|
|
|
msgstr "临时使用"
|
|
|
|
|
|
#: settings/serializers/auth/oidc.py:76
|
|
|
msgid "Always update user"
|
|
|
msgstr "总是更新用户信息"
|
|
|
|
|
|
#: settings/serializers/auth/radius.py:13
|
|
|
msgid "Enable RADIUS Auth"
|
|
|
msgstr "启用 RADIUS 认证"
|
|
|
|
|
|
#: settings/serializers/auth/radius.py:19
|
|
|
msgid "OTP in radius"
|
|
|
msgstr "使用 Radius OTP"
|
|
|
|
|
|
#: settings/serializers/auth/sms.py:10
|
|
|
msgid "Enable SMS"
|
|
|
msgstr "启用 SMS"
|
|
|
|
|
|
#: settings/serializers/auth/sms.py:12
|
|
|
msgid "SMS provider"
|
|
|
msgstr "短信服务商"
|
|
|
|
|
|
#: settings/serializers/auth/sms.py:17 settings/serializers/auth/sms.py:35
|
|
|
#: settings/serializers/auth/sms.py:43 settings/serializers/email.py:63
|
|
|
msgid "Signature"
|
|
|
msgstr "签名"
|
|
|
|
|
|
#: settings/serializers/auth/sms.py:18 settings/serializers/auth/sms.py:36
|
|
|
#: settings/serializers/auth/sms.py:44
|
|
|
msgid "Template code"
|
|
|
msgstr "模板"
|
|
|
|
|
|
#: settings/serializers/auth/sms.py:22
|
|
|
msgid "Test phone"
|
|
|
msgstr "测试手机号"
|
|
|
|
|
|
#: settings/serializers/auth/sso.py:12
|
|
|
msgid "Enable SSO auth"
|
|
|
msgstr "启用 SSO Token 认证"
|
|
|
|
|
|
#: settings/serializers/auth/sso.py:13
|
|
|
msgid "Other service can using SSO token login to JumpServer without password"
|
|
|
msgstr "其它系统可以使用 SSO Token 对接 JumpServer, 免去登录的过程"
|
|
|
|
|
|
#: settings/serializers/auth/sso.py:16
|
|
|
msgid "SSO auth key TTL"
|
|
|
msgstr "Token 有效期"
|
|
|
|
|
|
#: settings/serializers/auth/sso.py:16 settings/serializers/security.py:74
|
|
|
msgid "Unit: second"
|
|
|
msgstr "单位: 秒"
|
|
|
|
|
|
#: settings/serializers/auth/wecom.py:11
|
|
|
msgid "Enable WeCom Auth"
|
|
|
msgstr "启用企业微信认证"
|
|
|
|
|
|
#: settings/serializers/basic.py:9
|
|
|
msgid "Subject"
|
|
|
msgstr "主题"
|
|
|
|
|
|
#: settings/serializers/basic.py:13
|
|
|
msgid "More url"
|
|
|
msgstr "更多信息 URL"
|
|
|
|
|
|
#: settings/serializers/basic.py:28
|
|
|
msgid "Site url"
|
|
|
msgstr "当前站点URL"
|
|
|
|
|
|
#: settings/serializers/basic.py:29
|
|
|
msgid "eg: http://dev.jumpserver.org:8080"
|
|
|
msgstr "如: http://dev.jumpserver.org:8080"
|
|
|
|
|
|
#: settings/serializers/basic.py:32
|
|
|
msgid "User guide url"
|
|
|
msgstr "用户向导URL"
|
|
|
|
|
|
#: settings/serializers/basic.py:33
|
|
|
msgid "User first login update profile done redirect to it"
|
|
|
msgstr "用户第一次登录,修改profile后重定向到地址, 可以是 wiki 或 其他说明文档"
|
|
|
|
|
|
#: settings/serializers/basic.py:37
|
|
|
msgid ""
|
|
|
"The forgot password url on login page, If you use ldap or cas external "
|
|
|
"authentication, you can set it"
|
|
|
msgstr ""
|
|
|
"登录页面忘记密码URL, 如果使用了 LDAP, OPENID 等外部认证系统,可以自定义用户重"
|
|
|
"置密码访问的地址"
|
|
|
|
|
|
#: settings/serializers/basic.py:41
|
|
|
msgid "Global organization name"
|
|
|
msgstr "全局组织名"
|
|
|
|
|
|
#: settings/serializers/basic.py:42
|
|
|
msgid "The name of global organization to display"
|
|
|
msgstr "全局组织的显示名称,默认为 全局组织"
|
|
|
|
|
|
#: settings/serializers/basic.py:44
|
|
|
msgid "Enable tickets"
|
|
|
msgstr "启用工单"
|
|
|
|
|
|
#: settings/serializers/basic.py:45
|
|
|
msgid "Enable announcement"
|
|
|
msgstr "启用公告"
|
|
|
|
|
|
#: settings/serializers/basic.py:46
|
|
|
msgid "Announcement"
|
|
|
msgstr "公告"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:10
|
|
|
msgid "Login log keep days"
|
|
|
msgstr "登录日志"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:10 settings/serializers/cleaning.py:14
|
|
|
#: settings/serializers/cleaning.py:18 settings/serializers/cleaning.py:22
|
|
|
#: settings/serializers/cleaning.py:26
|
|
|
msgid "Unit: day"
|
|
|
msgstr "单位: 天"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:14
|
|
|
msgid "Task log keep days"
|
|
|
msgstr "任务日志"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:18
|
|
|
msgid "Operate log keep days"
|
|
|
msgstr "操作日志"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:22
|
|
|
msgid "FTP log keep days"
|
|
|
msgstr "上传下载"
|
|
|
|
|
|
#: settings/serializers/cleaning.py:26
|
|
|
msgid "Cloud sync record keep days"
|
|
|
msgstr "云同步记录"
|
|
|
|
|
|
#: settings/serializers/email.py:18
|
|
|
msgid "SMTP host"
|
|
|
msgstr "SMTP 主机"
|
|
|
|
|
|
#: settings/serializers/email.py:19
|
|
|
msgid "SMTP port"
|
|
|
msgstr "SMTP 端口"
|
|
|
|
|
|
#: settings/serializers/email.py:20
|
|
|
msgid "SMTP account"
|
|
|
msgstr "SMTP 账号"
|
|
|
|
|
|
#: settings/serializers/email.py:22
|
|
|
msgid "SMTP password"
|
|
|
msgstr "SMTP 密码"
|
|
|
|
|
|
#: settings/serializers/email.py:23
|
|
|
msgid "Tips: Some provider use token except password"
|
|
|
msgstr "提示:一些邮件提供商需要输入的是授权码"
|
|
|
|
|
|
#: settings/serializers/email.py:26
|
|
|
msgid "Send user"
|
|
|
msgstr "发件人"
|
|
|
|
|
|
#: settings/serializers/email.py:27
|
|
|
msgid "Tips: Send mail account, default SMTP account as the send account"
|
|
|
msgstr "提示:发送邮件账号,默认使用 SMTP 账号作为发送账号"
|
|
|
|
|
|
#: settings/serializers/email.py:30
|
|
|
msgid "Test recipient"
|
|
|
msgstr "测试收件人"
|
|
|
|
|
|
#: settings/serializers/email.py:31
|
|
|
msgid "Tips: Used only as a test mail recipient"
|
|
|
msgstr "提示:仅用来作为测试邮件收件人"
|
|
|
|
|
|
#: settings/serializers/email.py:34
|
|
|
msgid "Use SSL"
|
|
|
msgstr "使用 SSL"
|
|
|
|
|
|
#: settings/serializers/email.py:35
|
|
|
msgid "If SMTP port is 465, may be select"
|
|
|
msgstr "如果SMTP端口是465,通常需要启用 SSL"
|
|
|
|
|
|
#: settings/serializers/email.py:38
|
|
|
msgid "Use TLS"
|
|
|
msgstr "使用 TLS"
|
|
|
|
|
|
#: settings/serializers/email.py:39
|
|
|
msgid "If SMTP port is 587, may be select"
|
|
|
msgstr "如果SMTP端口是587,通常需要启用 TLS"
|
|
|
|
|
|
#: settings/serializers/email.py:42
|
|
|
msgid "Subject prefix"
|
|
|
msgstr "主题前缀"
|
|
|
|
|
|
#: settings/serializers/email.py:49
|
|
|
msgid "Create user email subject"
|
|
|
msgstr "邮件主题"
|
|
|
|
|
|
#: settings/serializers/email.py:50
|
|
|
msgid ""
|
|
|
"Tips: When creating a user, send the subject of the email (eg:Create account "
|
|
|
"successfully)"
|
|
|
msgstr "提示: 创建用户时,发送设置密码邮件的主题 (例如: 创建用户成功)"
|
|
|
|
|
|
#: settings/serializers/email.py:54
|
|
|
msgid "Create user honorific"
|
|
|
msgstr "邮件的敬语"
|
|
|
|
|
|
#: settings/serializers/email.py:55
|
|
|
msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)"
|
|
|
msgstr "提示: 创建用户时,发送设置密码邮件的敬语 (例如: 您好)"
|
|
|
|
|
|
#: settings/serializers/email.py:59
|
|
|
msgid "Create user email content"
|
|
|
msgstr "邮件的内容"
|
|
|
|
|
|
#: settings/serializers/email.py:60
|
|
|
msgid "Tips:When creating a user, send the content of the email"
|
|
|
msgstr "提示: 创建用户时,发送设置密码邮件的内容"
|
|
|
|
|
|
#: settings/serializers/email.py:64
|
|
|
msgid "Tips: Email signature (eg:jumpserver)"
|
|
|
msgstr "邮件署名 (如:jumpserver)"
|
|
|
|
|
|
#: settings/serializers/other.py:7
|
|
|
msgid "Email suffix"
|
|
|
msgstr "邮件后缀"
|
|
|
|
|
|
#: settings/serializers/other.py:8
|
|
|
msgid ""
|
|
|
"This is used by default if no email is returned during SSO authentication"
|
|
|
msgstr "SSO认证时,如果没有返回邮件地址,将使用该后缀"
|
|
|
|
|
|
#: settings/serializers/other.py:12
|
|
|
msgid "OTP issuer name"
|
|
|
msgstr "OTP 扫描后的名称"
|
|
|
|
|
|
#: settings/serializers/other.py:16
|
|
|
msgid "OTP valid window"
|
|
|
msgstr "OTP 延迟有效次数"
|
|
|
|
|
|
#: settings/serializers/other.py:21
|
|
|
msgid "CMD"
|
|
|
msgstr ""
|
|
|
|
|
|
#: settings/serializers/other.py:22
|
|
|
msgid "PowerShell"
|
|
|
msgstr ""
|
|
|
|
|
|
#: settings/serializers/other.py:24
|
|
|
msgid "Shell (Windows)"
|
|
|
msgstr "Shell(Windows 资产)"
|
|
|
|
|
|
#: settings/serializers/other.py:25
|
|
|
msgid "The shell type used when Windows assets perform ansible tasks"
|
|
|
msgstr "windows 资产执行 Ansible 任务时,使用的 Shell 类型。"
|
|
|
|
|
|
#: settings/serializers/other.py:29
|
|
|
msgid "Perm single to ungroup node"
|
|
|
msgstr "直接授权资产放在未分组节点"
|
|
|
|
|
|
#: settings/serializers/security.py:8
|
|
|
msgid "Password minimum length"
|
|
|
msgstr "密码最小长度"
|
|
|
|
|
|
#: settings/serializers/security.py:12
|
|
|
msgid "Admin user password minimum length"
|
|
|
msgstr "管理员密码最小长度"
|
|
|
|
|
|
#: settings/serializers/security.py:15
|
|
|
msgid "Must contain capital"
|
|
|
msgstr "必须包含大写字符"
|
|
|
|
|
|
#: settings/serializers/security.py:17
|
|
|
msgid "Must contain lowercase"
|
|
|
msgstr "必须包含小写字符"
|
|
|
|
|
|
#: settings/serializers/security.py:18
|
|
|
msgid "Must contain numeric"
|
|
|
msgstr "必须包含数字"
|
|
|
|
|
|
#: settings/serializers/security.py:19
|
|
|
msgid "Must contain special"
|
|
|
msgstr "必须包含特殊字符"
|
|
|
|
|
|
#: settings/serializers/security.py:26
|
|
|
msgid "All users"
|
|
|
msgstr "所有用户"
|
|
|
|
|
|
#: settings/serializers/security.py:27
|
|
|
msgid "Only admin users"
|
|
|
msgstr "仅管理员"
|
|
|
|
|
|
#: settings/serializers/security.py:29
|
|
|
msgid "Global MFA auth"
|
|
|
msgstr "全局启用 MFA 认证"
|
|
|
|
|
|
#: settings/serializers/security.py:33
|
|
|
msgid "Limit the number of login failures"
|
|
|
msgstr "限制登录失败次数"
|
|
|
|
|
|
#: settings/serializers/security.py:37
|
|
|
msgid "Block logon interval"
|
|
|
msgstr "禁止登录时间间隔"
|
|
|
|
|
|
#: settings/serializers/security.py:39
|
|
|
msgid ""
|
|
|
"Unit: minute, If the user has failed to log in for a limited number of "
|
|
|
"times, no login is allowed during this time interval."
|
|
|
msgstr "单位:分, 当用户登录失败次数达到限制后,那么在此时间间隔内禁止登录"
|
|
|
|
|
|
#: settings/serializers/security.py:45
|
|
|
msgid "User password expiration"
|
|
|
msgstr "用户密码过期时间"
|
|
|
|
|
|
#: settings/serializers/security.py:47
|
|
|
msgid ""
|
|
|
"Unit: day, If the user does not update the password during the time, the "
|
|
|
"user password will expire failure;The password expiration reminder mail will "
|
|
|
"be automatic sent to the user by system within 5 days (daily) before the "
|
|
|
"password expires"
|
|
|
msgstr ""
|
|
|
"单位:天, 如果用户在此期间没有更新密码,用户密码将过期失效; 密码过期提醒邮件"
|
|
|
"将在密码过期前5天内由系统(每天)自动发送给用户"
|
|
|
|
|
|
#: settings/serializers/security.py:54
|
|
|
msgid "Number of repeated historical passwords"
|
|
|
msgstr "不能设置近几次密码"
|
|
|
|
|
|
#: settings/serializers/security.py:56
|
|
|
msgid ""
|
|
|
"Tip: When the user resets the password, it cannot be the previous n "
|
|
|
"historical passwords of the user"
|
|
|
msgstr "提示:用户重置密码时,不能为该用户前几次使用过的密码"
|
|
|
|
|
|
#: settings/serializers/security.py:61
|
|
|
msgid "Only single device login"
|
|
|
msgstr "仅一台设备登录"
|
|
|
|
|
|
#: settings/serializers/security.py:62
|
|
|
msgid "Next device login, pre login will be logout"
|
|
|
msgstr "下个设备登录,上次登录会被顶掉"
|
|
|
|
|
|
#: settings/serializers/security.py:65
|
|
|
msgid "Only exist user login"
|
|
|
msgstr "仅已存在用户登录"
|
|
|
|
|
|
#: settings/serializers/security.py:66
|
|
|
msgid "If enable, CAS、OIDC auth will be failed, if user not exist yet"
|
|
|
msgstr "开启后,如果系统中不存在该用户,CAS、OIDC 登录将会失败"
|
|
|
|
|
|
#: settings/serializers/security.py:69
|
|
|
msgid "Only from source login"
|
|
|
msgstr "仅从用户来源登录"
|
|
|
|
|
|
#: settings/serializers/security.py:70
|
|
|
msgid "Only log in from the user source property"
|
|
|
msgstr "开启后,如果用户来源为本地,CAS、OIDC 登录将会失败"
|
|
|
|
|
|
#: settings/serializers/security.py:74
|
|
|
msgid "MFA verify TTL"
|
|
|
msgstr "MFA 校验有效期"
|
|
|
|
|
|
#: settings/serializers/security.py:78
|
|
|
msgid "Enable Login captcha"
|
|
|
msgstr "启用登录验证码"
|
|
|
|
|
|
#: settings/serializers/security.py:84
|
|
|
msgid "Enable terminal register"
|
|
|
msgstr "终端注册"
|
|
|
|
|
|
#: settings/serializers/security.py:85
|
|
|
msgid ""
|
|
|
"Allow terminal register, after all terminal setup, you should disable this "
|
|
|
"for security"
|
|
|
msgstr "是否允许终端注册,当所有终端启动后,为了安全应该关闭"
|
|
|
|
|
|
#: settings/serializers/security.py:88
|
|
|
msgid "Replay watermark"
|
|
|
msgstr "录像水印"
|
|
|
|
|
|
#: settings/serializers/security.py:89
|
|
|
msgid "Enabled, the session replay contains watermark information"
|
|
|
msgstr "启用后,会话录像将包含水印信息"
|
|
|
|
|
|
#: settings/serializers/security.py:93
|
|
|
msgid "Connection max idle time"
|
|
|
msgstr "连接最大空闲时间"
|
|
|
|
|
|
#: settings/serializers/security.py:94
|
|
|
msgid "If idle time more than it, disconnect connection Unit: minute"
|
|
|
msgstr "提示:如果超过该配置没有操作,连接会被断开 (单位:分)"
|
|
|
|
|
|
#: settings/serializers/security.py:97
|
|
|
msgid "Remember manual auth"
|
|
|
msgstr "保存手动输入密码"
|
|
|
|
|
|
#: settings/serializers/security.py:100
|
|
|
msgid "Enable change auth secure mode"
|
|
|
msgstr "启用改密安全模式"
|
|
|
|
|
|
#: settings/serializers/security.py:103
|
|
|
msgid "Insecure command alert"
|
|
|
msgstr "危险命令告警"
|
|
|
|
|
|
#: settings/serializers/security.py:106
|
|
|
msgid "Email recipient"
|
|
|
msgstr "邮件收件人"
|
|
|
|
|
|
#: settings/serializers/security.py:107
|
|
|
msgid "Multiple user using , split"
|
|
|
msgstr "多个用户,使用 , 分割"
|
|
|
|
|
|
#: settings/serializers/security.py:110
|
|
|
msgid "Batch command execution"
|
|
|
msgstr "批量命令执行"
|
|
|
|
|
|
#: settings/serializers/security.py:111
|
|
|
msgid "Allow user run batch command or not using ansible"
|
|
|
msgstr "是否允许用户使用 ansible 执行批量命令"
|
|
|
|
|
|
#: settings/serializers/security.py:114
|
|
|
msgid "Session share"
|
|
|
msgstr "会话分享"
|
|
|
|
|
|
#: settings/serializers/security.py:115
|
|
|
msgid "Enabled, Allows user active session to be shared with other users"
|
|
|
msgstr "开启后允许用户分享已连接的资产会话给它人,协同工作"
|
|
|
|
|
|
#: settings/serializers/security.py:119
|
|
|
msgid "Enabled, please go to the user detail add approver"
|
|
|
msgstr "启用后, 请在用户详情中添加审批人"
|
|
|
|
|
|
#: settings/serializers/sms.py:7
|
|
|
msgid "Label"
|
|
|
msgstr "标签"
|
|
|
|
|
|
#: settings/serializers/terminal.py:13
|
|
|
msgid "Auto"
|
|
|
msgstr "自动"
|
|
|
|
|
|
#: settings/serializers/terminal.py:19
|
|
|
msgid "Password auth"
|
|
|
msgstr "密码认证"
|
|
|
|
|
|
#: settings/serializers/terminal.py:21
|
|
|
msgid "Public key auth"
|
|
|
msgstr "密钥认证"
|
|
|
|
|
|
#: settings/serializers/terminal.py:22
|
|
|
msgid ""
|
|
|
"Tips: If use other auth method, like AD/LDAP, you should disable this to "
|
|
|
"avoid being able to log in after deleting"
|
|
|
msgstr ""
|
|
|
"提示:如果你使用其它认证方式,如 AD/LDAP,你应该禁用此项,以避免第三方系统删"
|
|
|
"除后,还可以登录"
|
|
|
|
|
|
#: settings/serializers/terminal.py:25
|
|
|
msgid "List sort by"
|
|
|
msgstr "资产列表排序"
|
|
|
|
|
|
#: settings/serializers/terminal.py:27
|
|
|
msgid "List page size"
|
|
|
msgstr "资产列表每页数量"
|
|
|
|
|
|
#: settings/serializers/terminal.py:29
|
|
|
msgid "Session keep duration"
|
|
|
msgstr "会话日志保存时间"
|
|
|
|
|
|
#: settings/serializers/terminal.py:30
|
|
|
msgid ""
|
|
|
"Unit: days, Session, record, command will be delete if more than duration, "
|
|
|
"only in database"
|
|
|
msgstr ""
|
|
|
"单位:天。 会话、录像、命令记录超过该时长将会被删除(仅影响数据库存储, oss等不"
|
|
|
"受影响)"
|
|
|
|
|
|
#: settings/serializers/terminal.py:33
|
|
|
msgid "Telnet login regex"
|
|
|
msgstr "Telnet 成功正则表达式"
|
|
|
|
|
|
#: settings/serializers/terminal.py:34
|
|
|
msgid ""
|
|
|
"The login success message varies with devices. if you cannot log in to the "
|
|
|
"device through Telnet, set this parameter"
|
|
|
msgstr "不同设备登录成功提示不一样,所以如果 telnet 不能正常登录,可以这里设置"
|
|
|
|
|
|
#: settings/serializers/terminal.py:38
|
|
|
msgid "RDP address"
|
|
|
msgstr "RDP 地址"
|
|
|
|
|
|
#: settings/serializers/terminal.py:39
|
|
|
msgid "RDP visit address, eg: dev.jumpserver.org:3389"
|
|
|
msgstr "RDP 访问地址, 如: dev.jumpserver.org:3389"
|
|
|
|
|
|
#: settings/serializers/terminal.py:42
|
|
|
msgid "Enable XRDP"
|
|
|
msgstr "启用 XRDP 服务"
|
|
|
|
|
|
#: settings/utils/ldap.py:412
|
|
|
msgid "ldap:// or ldaps:// protocol is used."
|
|
|
msgstr "使用 ldap:// 或 ldaps:// 协议"
|
|
|
|
|
|
#: settings/utils/ldap.py:423
|
|
|
msgid "Host or port is disconnected: {}"
|
|
|
msgstr "主机或端口不可连接: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:425
|
|
|
msgid "The port is not the port of the LDAP service: {}"
|
|
|
msgstr "端口不是LDAP服务端口: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:427
|
|
|
msgid "Please add certificate: {}"
|
|
|
msgstr "请添加证书"
|
|
|
|
|
|
#: settings/utils/ldap.py:431 settings/utils/ldap.py:458
|
|
|
#: settings/utils/ldap.py:488 settings/utils/ldap.py:516
|
|
|
msgid "Unknown error: {}"
|
|
|
msgstr "未知错误: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:445
|
|
|
msgid "Bind DN or Password incorrect"
|
|
|
msgstr "绑定DN或密码错误"
|
|
|
|
|
|
#: settings/utils/ldap.py:452
|
|
|
msgid "Please enter Bind DN: {}"
|
|
|
msgstr "请输入绑定DN: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:454
|
|
|
msgid "Please enter Password: {}"
|
|
|
msgstr "请输入密码: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:456
|
|
|
msgid "Please enter correct Bind DN and Password: {}"
|
|
|
msgstr "请输入正确的绑定DN和密码: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:474
|
|
|
msgid "Invalid User OU or User search filter: {}"
|
|
|
msgstr "不合法的用户OU或用户过滤器: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:505
|
|
|
msgid "LDAP User attr map not include: {}"
|
|
|
msgstr "LDAP属性映射没有包含: {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:512
|
|
|
msgid "LDAP User attr map is not dict"
|
|
|
msgstr "LDAP属性映射不合法"
|
|
|
|
|
|
#: settings/utils/ldap.py:531
|
|
|
msgid "LDAP authentication is not enabled"
|
|
|
msgstr "LDAP认证没有启用"
|
|
|
|
|
|
#: settings/utils/ldap.py:549
|
|
|
msgid "Error (Invalid LDAP server): {}"
|
|
|
msgstr "错误 (不合法的LDAP服务器地址): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:551
|
|
|
msgid "Error (Invalid Bind DN): {}"
|
|
|
msgstr "错误(不合法的绑定DN): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:553
|
|
|
msgid "Error (Invalid LDAP User attr map): {}"
|
|
|
msgstr "错误(不合法的LDAP属性映射): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:555
|
|
|
msgid "Error (Invalid User OU or User search filter): {}"
|
|
|
msgstr "错误(不合法的用户OU或用户过滤器): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:557
|
|
|
msgid "Error (Not enabled LDAP authentication): {}"
|
|
|
msgstr "错误(没有启用LDAP认证): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:559
|
|
|
msgid "Error (Unknown): {}"
|
|
|
msgstr "错误(未知): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:562
|
|
|
msgid "Succeed: Match {} s user"
|
|
|
msgstr "成功匹配 {} 个用户"
|
|
|
|
|
|
#: settings/utils/ldap.py:595
|
|
|
msgid "Authentication failed (configuration incorrect): {}"
|
|
|
msgstr "认证失败(配置错误): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:597
|
|
|
msgid "Authentication failed (before login check failed): {}"
|
|
|
msgstr "认证失败(登录前检查失败): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:599
|
|
|
msgid "Authentication failed (username or password incorrect): {}"
|
|
|
msgstr "认证失败 (用户名或密码不正确): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:601
|
|
|
msgid "Authentication failed (Unknown): {}"
|
|
|
msgstr "认证失败: (未知): {}"
|
|
|
|
|
|
#: settings/utils/ldap.py:604
|
|
|
msgid "Authentication success: {}"
|
|
|
msgstr "认证成功: {}"
|
|
|
|
|
|
#: templates/_base_list.html:37 templates/_user_profile.html:23
|
|
|
msgid "Search"
|
|
|
msgstr "搜索"
|
|
|
|
|
|
#: templates/_csv_import_export.html:8
|
|
|
msgid "Export"
|
|
|
msgstr "导出"
|
|
|
|
|
|
#: templates/_csv_import_export.html:13 templates/_csv_import_modal.html:5
|
|
|
msgid "Import"
|
|
|
msgstr "导入"
|
|
|
|
|
|
#: templates/_csv_import_modal.html:12
|
|
|
msgid "Download the imported template or use the exported CSV file format"
|
|
|
msgstr "下载导入的模板或使用导出的csv格式"
|
|
|
|
|
|
#: templates/_csv_import_modal.html:13
|
|
|
msgid "Download the import template"
|
|
|
msgstr "下载导入模版"
|
|
|
|
|
|
#: templates/_csv_import_modal.html:17 templates/_csv_update_modal.html:17
|
|
|
msgid "Select the CSV file to import"
|
|
|
msgstr "请选择csv文件导入"
|
|
|
|
|
|
#: templates/_csv_import_modal.html:39 templates/_csv_update_modal.html:42
|
|
|
msgid "Please select file"
|
|
|
msgstr "选择文件"
|
|
|
|
|
|
#: templates/_csv_update_modal.html:12
|
|
|
msgid "Download the update template or use the exported CSV file format"
|
|
|
msgstr "下载更新的模板或使用导出的csv格式"
|
|
|
|
|
|
#: templates/_csv_update_modal.html:13
|
|
|
msgid "Download the update template"
|
|
|
msgstr "下载更新模版"
|
|
|
|
|
|
#: templates/_header_bar.html:12
|
|
|
msgid "Help"
|
|
|
msgstr "帮助"
|
|
|
|
|
|
#: templates/_header_bar.html:19 templates/_without_nav_base.html:27
|
|
|
msgid "Docs"
|
|
|
msgstr "文档"
|
|
|
|
|
|
#: templates/_header_bar.html:25
|
|
|
msgid "Commercial support"
|
|
|
msgstr "商业支持"
|
|
|
|
|
|
#: templates/_header_bar.html:70 templates/_nav.html:30
|
|
|
#: templates/_nav_user.html:37 users/forms/profile.py:43
|
|
|
#: users/templates/users/user_password_update.html:39
|
|
|
msgid "Profile"
|
|
|
msgstr "个人信息"
|
|
|
|
|
|
#: templates/_header_bar.html:73
|
|
|
msgid "Admin page"
|
|
|
msgstr "管理页面"
|
|
|
|
|
|
#: templates/_header_bar.html:75
|
|
|
msgid "User page"
|
|
|
msgstr "用户页面"
|
|
|
|
|
|
#: templates/_header_bar.html:78
|
|
|
msgid "API Key"
|
|
|
msgstr "API Key"
|
|
|
|
|
|
#: templates/_header_bar.html:79
|
|
|
msgid "Logout"
|
|
|
msgstr "注销登录"
|
|
|
|
|
|
#: templates/_message.html:6
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Your account has expired, please contact the administrator.\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您的账户已经过期,请联系管理员。 "
|
|
|
|
|
|
#: templates/_message.html:13
|
|
|
msgid "Your account will at"
|
|
|
msgstr "您的账户将于"
|
|
|
|
|
|
#: templates/_message.html:13 templates/_message.html:30
|
|
|
msgid "expired. "
|
|
|
msgstr "过期。"
|
|
|
|
|
|
#: templates/_message.html:23
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Your password has expired, please click <a href="
|
|
|
"\"%(user_password_update_url)s\"> this link </a> update password.\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您的密码已经过期,请点击 <a href="
|
|
|
"\"%(user_password_update_url)s\"> 链接 </a> 更新密码\n"
|
|
|
" "
|
|
|
|
|
|
#: templates/_message.html:30
|
|
|
msgid "Your password will at"
|
|
|
msgstr "您的密码将于"
|
|
|
|
|
|
#: templates/_message.html:31
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" please click <a href=\"%(user_password_update_url)s\"> this "
|
|
|
"link </a> to update your password.\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 请点击 <a href=\"%(user_password_update_url)s\"> 链接 </a> 更"
|
|
|
"新密码\n"
|
|
|
" "
|
|
|
|
|
|
#: templates/_message.html:43
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Your information was incomplete. Please click <a href="
|
|
|
"\"%(first_login_url)s\"> this link </a>to complete your information.\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 你的信息不完整,请点击 <a href=\"%(first_login_url)s\"> 链接 "
|
|
|
"</a> 补充完整\n"
|
|
|
" "
|
|
|
|
|
|
#: templates/_message.html:56
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Your ssh public key not set or expired. Please click <a href="
|
|
|
"\"%(user_pubkey_update)s\"> this link </a>to update\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您的SSH密钥没有设置或已失效,请点击 <a href="
|
|
|
"\"%(user_pubkey_update)s\"> 链接 </a> 更新\n"
|
|
|
" "
|
|
|
|
|
|
#: templates/_nav.html:7
|
|
|
msgid "Dashboard"
|
|
|
msgstr "仪表盘"
|
|
|
|
|
|
#: templates/_nav.html:20
|
|
|
msgid "User list"
|
|
|
msgstr "用户列表"
|
|
|
|
|
|
#: templates/_nav.html:42
|
|
|
msgid "Asset list"
|
|
|
msgstr "资产列表"
|
|
|
|
|
|
#: templates/_nav.html:43
|
|
|
msgid "Domain list"
|
|
|
msgstr "网域列表"
|
|
|
|
|
|
#: templates/_nav.html:47
|
|
|
msgid "Command filters"
|
|
|
msgstr "命令过滤"
|
|
|
|
|
|
#: templates/_nav.html:49
|
|
|
msgid "Platform list"
|
|
|
msgstr "平台列表"
|
|
|
|
|
|
#: templates/_nav.html:64 templates/_nav.html:82 templates/_nav_user.html:16
|
|
|
msgid "RemoteApp"
|
|
|
msgstr "远程应用"
|
|
|
|
|
|
#: templates/_nav.html:66 templates/_nav.html:86 templates/_nav_user.html:22
|
|
|
#: users/templates/users/user_database_app_permission.html:39
|
|
|
#: users/templates/users/user_database_app_permission.html:64
|
|
|
msgid "DatabaseApp"
|
|
|
msgstr "数据库应用"
|
|
|
|
|
|
#: templates/_nav.html:75
|
|
|
msgid "Perms"
|
|
|
msgstr "权限管理"
|
|
|
|
|
|
#: templates/_nav.html:97 terminal/notifications.py:20
|
|
|
msgid "Sessions"
|
|
|
msgstr "会话管理"
|
|
|
|
|
|
#: templates/_nav.html:100
|
|
|
msgid "Session online"
|
|
|
msgstr "在线会话"
|
|
|
|
|
|
#: templates/_nav.html:101
|
|
|
msgid "Session offline"
|
|
|
msgstr "历史会话"
|
|
|
|
|
|
#: templates/_nav.html:102
|
|
|
msgid "Commands"
|
|
|
msgstr "命令记录"
|
|
|
|
|
|
#: templates/_nav.html:105 templates/_nav_user.html:42
|
|
|
msgid "Web terminal"
|
|
|
msgstr "Web终端"
|
|
|
|
|
|
#: templates/_nav.html:106 templates/_nav_user.html:47
|
|
|
msgid "File manager"
|
|
|
msgstr "文件管理"
|
|
|
|
|
|
#: templates/_nav.html:110 terminal/apps.py:9
|
|
|
#: terminal/serializers/session.py:38
|
|
|
msgid "Terminal"
|
|
|
msgstr "终端"
|
|
|
|
|
|
#: templates/_nav.html:121
|
|
|
msgid "Job Center"
|
|
|
msgstr "作业中心"
|
|
|
|
|
|
#: templates/_nav.html:124
|
|
|
msgid "Task list"
|
|
|
msgstr "任务列表"
|
|
|
|
|
|
#: templates/_nav.html:125 templates/_nav.html:153
|
|
|
msgid "Batch command"
|
|
|
msgstr "批量命令"
|
|
|
|
|
|
#: templates/_nav.html:127
|
|
|
msgid "Task monitor"
|
|
|
msgstr "任务监控"
|
|
|
|
|
|
#: templates/_nav.html:137
|
|
|
msgid "Tickets"
|
|
|
msgstr "工单管理"
|
|
|
|
|
|
#: templates/_nav.html:146
|
|
|
msgid "Audits"
|
|
|
msgstr "日志审计"
|
|
|
|
|
|
#: templates/_nav.html:149
|
|
|
msgid "Login log"
|
|
|
msgstr "登录日志"
|
|
|
|
|
|
#: templates/_nav.html:150
|
|
|
msgid "FTP log"
|
|
|
msgstr "FTP日志"
|
|
|
|
|
|
#: templates/_nav.html:151
|
|
|
msgid "Operate log"
|
|
|
msgstr "操作日志"
|
|
|
|
|
|
#: templates/_nav.html:152
|
|
|
msgid "Password change log"
|
|
|
msgstr "改密日志"
|
|
|
|
|
|
#: templates/_nav.html:163
|
|
|
msgid "XPack"
|
|
|
msgstr "XPack"
|
|
|
|
|
|
#: templates/_nav.html:171
|
|
|
msgid "Account list"
|
|
|
msgstr "账户列表"
|
|
|
|
|
|
#: templates/_nav.html:172
|
|
|
msgid "Sync instance"
|
|
|
msgstr "同步实例"
|
|
|
|
|
|
#: templates/_nav.html:187
|
|
|
msgid "Settings"
|
|
|
msgstr "系统设置"
|
|
|
|
|
|
#: templates/_nav_user.html:4
|
|
|
msgid "My assets"
|
|
|
msgstr "我的资产"
|
|
|
|
|
|
#: templates/_nav_user.html:31
|
|
|
msgid "Command execution"
|
|
|
msgstr "命令执行"
|
|
|
|
|
|
#: templates/_pagination.html:59
|
|
|
msgid ""
|
|
|
"Displays the results of items _START_ to _END_; A total of _TOTAL_ entries"
|
|
|
msgstr "显示第 _START_ 至 _END_ 项结果; 总共 _TOTAL_ 项"
|
|
|
|
|
|
#: templates/_without_nav_base.html:25
|
|
|
msgid "Home page"
|
|
|
msgstr "首页"
|
|
|
|
|
|
#: templates/delete_confirm.html:6
|
|
|
msgid "Confirm delete"
|
|
|
msgstr "确认删除"
|
|
|
|
|
|
#: templates/delete_confirm.html:11
|
|
|
msgid "Are you sure delete"
|
|
|
msgstr "您确定删除吗?"
|
|
|
|
|
|
#: templates/flash_message_standalone.html:28
|
|
|
msgid "Cancel"
|
|
|
msgstr "取消"
|
|
|
|
|
|
#: templates/flash_message_standalone.html:37
|
|
|
msgid "Go"
|
|
|
msgstr "立即"
|
|
|
|
|
|
#: templates/index.html:11
|
|
|
msgid "Total users"
|
|
|
msgstr "用户总数"
|
|
|
|
|
|
#: templates/index.html:23
|
|
|
msgid "Total assets"
|
|
|
msgstr "资产总数"
|
|
|
|
|
|
#: templates/index.html:36
|
|
|
msgid "Online users"
|
|
|
msgstr "在线用户"
|
|
|
|
|
|
#: templates/index.html:49
|
|
|
msgid "Online sessions"
|
|
|
msgstr "在线会话"
|
|
|
|
|
|
#: templates/index.html:61
|
|
|
msgid "In the past week, a total of "
|
|
|
msgstr "过去一周, 共有 "
|
|
|
|
|
|
#: templates/index.html:61
|
|
|
msgid " users have logged in "
|
|
|
msgstr " 位用户登录 "
|
|
|
|
|
|
#: templates/index.html:61
|
|
|
msgid " times asset."
|
|
|
msgstr " 次资产."
|
|
|
|
|
|
#: templates/index.html:69
|
|
|
msgid "Active user asset ratio"
|
|
|
msgstr "活跃用户资产占比"
|
|
|
|
|
|
#: templates/index.html:72
|
|
|
msgid ""
|
|
|
"The following graphs describe the percentage of active users per month and "
|
|
|
"assets per user host per month, respectively."
|
|
|
msgstr "以下图形分别描述一个月活跃用户和资产占所有用户主机的百分比"
|
|
|
|
|
|
#: templates/index.html:97 templates/index.html:112
|
|
|
msgid "Top 10 assets in a week"
|
|
|
msgstr "一周Top10资产"
|
|
|
|
|
|
#: templates/index.html:113
|
|
|
msgid "Login frequency and last login record."
|
|
|
msgstr "登录次数及最近一次登录记录."
|
|
|
|
|
|
#: templates/index.html:122
|
|
|
msgid "Last 10 login"
|
|
|
msgstr "最近十次登录"
|
|
|
|
|
|
#: templates/index.html:128
|
|
|
msgid "Login record"
|
|
|
msgstr "登录记录"
|
|
|
|
|
|
#: templates/index.html:129
|
|
|
msgid "Last 10 login records."
|
|
|
msgstr "最近十次登录记录."
|
|
|
|
|
|
#: templates/index.html:143 templates/index.html:158
|
|
|
msgid "Top 10 users in a week"
|
|
|
msgstr "一周Top10用户"
|
|
|
|
|
|
#: templates/index.html:159
|
|
|
msgid "User login frequency and last login record."
|
|
|
msgstr "用户登录次数及最近一次登录记录"
|
|
|
|
|
|
#: templates/index.html:184
|
|
|
msgid "Monthly data overview"
|
|
|
msgstr "月数据总览"
|
|
|
|
|
|
#: templates/index.html:185
|
|
|
msgid "History summary in one month"
|
|
|
msgstr "一个月内历史汇总"
|
|
|
|
|
|
#: templates/index.html:193 templates/index.html:217
|
|
|
msgid "Login count"
|
|
|
msgstr "登录次数"
|
|
|
|
|
|
#: templates/index.html:193 templates/index.html:224
|
|
|
msgid "Active users"
|
|
|
msgstr "活跃用户"
|
|
|
|
|
|
#: templates/index.html:193 templates/index.html:231
|
|
|
msgid "Active assets"
|
|
|
msgstr "活跃资产"
|
|
|
|
|
|
#: templates/index.html:262 templates/index.html:313
|
|
|
msgid "Monthly active users"
|
|
|
msgstr "月活跃用户"
|
|
|
|
|
|
#: templates/index.html:262 templates/index.html:314
|
|
|
msgid "Disable user"
|
|
|
msgstr "禁用用户"
|
|
|
|
|
|
#: templates/index.html:262 templates/index.html:315
|
|
|
msgid "Month not logged in user"
|
|
|
msgstr "月未登录用户"
|
|
|
|
|
|
#: templates/index.html:288 templates/index.html:368
|
|
|
msgid "Access to the source"
|
|
|
msgstr "访问来源"
|
|
|
|
|
|
#: templates/index.html:342
|
|
|
msgid "Month is logged into the asset"
|
|
|
msgstr "月被登录资产"
|
|
|
|
|
|
#: templates/index.html:342 templates/index.html:393
|
|
|
msgid "Disable host"
|
|
|
msgstr "禁用主机"
|
|
|
|
|
|
#: templates/index.html:342 templates/index.html:394
|
|
|
msgid "Month not logged on host"
|
|
|
msgstr "月未登录主机"
|
|
|
|
|
|
#: templates/index.html:392
|
|
|
msgid "Month is logged into the host"
|
|
|
msgstr "月被登录主机"
|
|
|
|
|
|
#: templates/index.html:466
|
|
|
msgid " times/week"
|
|
|
msgstr " 次/周"
|
|
|
|
|
|
#: templates/index.html:491 templates/index.html:527
|
|
|
msgid " times"
|
|
|
msgstr " 次"
|
|
|
|
|
|
#: templates/index.html:494 templates/index.html:530
|
|
|
msgid "The time last logged in"
|
|
|
msgstr "最近一次登录日期"
|
|
|
|
|
|
#: templates/index.html:495 templates/index.html:531
|
|
|
msgid "At"
|
|
|
msgstr "于"
|
|
|
|
|
|
#: templates/index.html:510 templates/index.html:545 templates/index.html:580
|
|
|
msgid "(No)"
|
|
|
msgstr "(暂无)"
|
|
|
|
|
|
#: templates/index.html:561
|
|
|
msgid "Before"
|
|
|
msgstr "前"
|
|
|
|
|
|
#: templates/index.html:562
|
|
|
msgid "Login in "
|
|
|
msgstr "登录了"
|
|
|
|
|
|
#: templates/rest_framework/base.html:128
|
|
|
msgid "Filters"
|
|
|
msgstr "过滤"
|
|
|
|
|
|
#: terminal/api/session.py:185
|
|
|
msgid "Session does not exist: {}"
|
|
|
msgstr "会话不存在: {}"
|
|
|
|
|
|
#: terminal/api/session.py:188
|
|
|
msgid "Session is finished or the protocol not supported"
|
|
|
msgstr "会话已经完成或协议不支持"
|
|
|
|
|
|
#: terminal/api/session.py:193
|
|
|
msgid "User does not exist: {}"
|
|
|
msgstr "用户不存在: {}"
|
|
|
|
|
|
#: terminal/api/session.py:197
|
|
|
msgid "User does not have permission"
|
|
|
msgstr "用户没有权限"
|
|
|
|
|
|
#: terminal/api/sharing.py:28
|
|
|
msgid "Secure session sharing settings is disabled"
|
|
|
msgstr "未开启会话共享"
|
|
|
|
|
|
#: terminal/api/storage.py:30
|
|
|
msgid "Deleting the default storage is not allowed"
|
|
|
msgstr "不允许删除默认存储配置"
|
|
|
|
|
|
#: terminal/api/storage.py:33
|
|
|
msgid "Cannot delete storage that is being used"
|
|
|
msgstr "不允许删除正在使用的存储配置"
|
|
|
|
|
|
#: terminal/api/storage.py:72 terminal/api/storage.py:73
|
|
|
msgid "Command storages"
|
|
|
msgstr "命令存储"
|
|
|
|
|
|
#: terminal/api/storage.py:79
|
|
|
msgid "Invalid"
|
|
|
msgstr "无效"
|
|
|
|
|
|
#: terminal/api/storage.py:122
|
|
|
msgid "Test failure: {}"
|
|
|
msgstr "测试失败: {}"
|
|
|
|
|
|
#: terminal/api/storage.py:125
|
|
|
msgid "Test successful"
|
|
|
msgstr "测试成功"
|
|
|
|
|
|
#: terminal/api/storage.py:127
|
|
|
msgid "Test failure: Account invalid"
|
|
|
msgstr "测试失败: 账户无效"
|
|
|
|
|
|
#: terminal/api/terminal.py:41
|
|
|
msgid "Have online sessions"
|
|
|
msgstr "有在线会话"
|
|
|
|
|
|
#: terminal/backends/command/es.py:27
|
|
|
msgid "Invalid elasticsearch config"
|
|
|
msgstr "无效的 Elasticsearch 配置"
|
|
|
|
|
|
#: terminal/backends/command/models.py:14
|
|
|
msgid "Ordinary"
|
|
|
msgstr "普通"
|
|
|
|
|
|
#: terminal/backends/command/models.py:15
|
|
|
msgid "Dangerous"
|
|
|
msgstr "危险"
|
|
|
|
|
|
#: terminal/backends/command/models.py:21
|
|
|
msgid "Input"
|
|
|
msgstr "输入"
|
|
|
|
|
|
#: terminal/backends/command/models.py:22
|
|
|
#: terminal/backends/command/serializers.py:16
|
|
|
msgid "Output"
|
|
|
msgstr "输出"
|
|
|
|
|
|
#: terminal/backends/command/models.py:23 terminal/models/sharing.py:15
|
|
|
#: terminal/models/sharing.py:58
|
|
|
msgid "Session"
|
|
|
msgstr "会话"
|
|
|
|
|
|
#: terminal/backends/command/models.py:24
|
|
|
#: terminal/backends/command/serializers.py:18
|
|
|
msgid "Risk level"
|
|
|
msgstr "风险等级"
|
|
|
|
|
|
#: terminal/backends/command/serializers.py:17
|
|
|
msgid "Session ID"
|
|
|
msgstr "会话ID"
|
|
|
|
|
|
#: terminal/backends/command/serializers.py:19
|
|
|
msgid "Risk level display"
|
|
|
msgstr "风险等级名称"
|
|
|
|
|
|
#: terminal/backends/command/serializers.py:21
|
|
|
msgid "Timestamp"
|
|
|
msgstr "时间戳"
|
|
|
|
|
|
#: terminal/const.py:32
|
|
|
msgid "Critical"
|
|
|
msgstr "严重"
|
|
|
|
|
|
#: terminal/const.py:33
|
|
|
msgid "High"
|
|
|
msgstr "较高"
|
|
|
|
|
|
#: terminal/const.py:34 users/templates/users/reset_password.html:50
|
|
|
#: users/templates/users/user_password_update.html:104
|
|
|
msgid "Normal"
|
|
|
msgstr "正常"
|
|
|
|
|
|
#: terminal/const.py:35
|
|
|
msgid "Offline"
|
|
|
msgstr "离线"
|
|
|
|
|
|
#: terminal/exceptions.py:8
|
|
|
msgid "Bulk create not support"
|
|
|
msgstr "不支持批量创建"
|
|
|
|
|
|
#: terminal/exceptions.py:13
|
|
|
msgid "Storage is invalid"
|
|
|
msgstr "存储无效"
|
|
|
|
|
|
#: terminal/models/session.py:44 terminal/models/sharing.py:81
|
|
|
msgid "Login from"
|
|
|
msgstr "登录来源"
|
|
|
|
|
|
#: terminal/models/session.py:48
|
|
|
msgid "Replay"
|
|
|
msgstr "回放"
|
|
|
|
|
|
#: terminal/models/session.py:53
|
|
|
msgid "Date end"
|
|
|
msgstr "结束日期"
|
|
|
|
|
|
#: terminal/models/sharing.py:20
|
|
|
msgid "Creator"
|
|
|
msgstr "创建者"
|
|
|
|
|
|
#: terminal/models/sharing.py:22 terminal/models/sharing.py:60
|
|
|
msgid "Verify code"
|
|
|
msgstr "验证码"
|
|
|
|
|
|
#: terminal/models/sharing.py:27
|
|
|
msgid "Expired time (min)"
|
|
|
msgstr "过期时间 (分)"
|
|
|
|
|
|
#: terminal/models/sharing.py:48
|
|
|
msgid "Link not active"
|
|
|
msgstr "链接失效"
|
|
|
|
|
|
#: terminal/models/sharing.py:50
|
|
|
msgid "Link expired"
|
|
|
msgstr "链接过期"
|
|
|
|
|
|
#: terminal/models/sharing.py:63
|
|
|
msgid "Session sharing"
|
|
|
msgstr "会话分享"
|
|
|
|
|
|
#: terminal/models/sharing.py:67 terminal/serializers/sharing.py:49
|
|
|
msgid "Joiner"
|
|
|
msgstr "加入者"
|
|
|
|
|
|
#: terminal/models/sharing.py:70
|
|
|
msgid "Date joined"
|
|
|
msgstr "加入日期"
|
|
|
|
|
|
#: terminal/models/sharing.py:73
|
|
|
msgid "Date left"
|
|
|
msgstr "结束日期"
|
|
|
|
|
|
#: terminal/models/sharing.py:91
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:178
|
|
|
msgid "Finished"
|
|
|
msgstr "结束"
|
|
|
|
|
|
#: terminal/models/sharing.py:111
|
|
|
msgid "Invalid verification code"
|
|
|
msgstr "验证码不正确"
|
|
|
|
|
|
#: terminal/models/status.py:18
|
|
|
msgid "Session Online"
|
|
|
msgstr "在线会话"
|
|
|
|
|
|
#: terminal/models/status.py:19
|
|
|
msgid "CPU Load"
|
|
|
msgstr "CPU负载"
|
|
|
|
|
|
#: terminal/models/status.py:20
|
|
|
msgid "Memory Used"
|
|
|
msgstr "内存使用"
|
|
|
|
|
|
#: terminal/models/status.py:21
|
|
|
msgid "Disk Used"
|
|
|
msgstr "磁盘使用"
|
|
|
|
|
|
#: terminal/models/status.py:22
|
|
|
msgid "Connections"
|
|
|
msgstr "连接数"
|
|
|
|
|
|
#: terminal/models/status.py:23
|
|
|
msgid "Threads"
|
|
|
msgstr "线程数"
|
|
|
|
|
|
#: terminal/models/status.py:24
|
|
|
msgid "Boot Time"
|
|
|
msgstr "运行时间"
|
|
|
|
|
|
#: terminal/models/storage.py:25
|
|
|
msgid "Default storage"
|
|
|
msgstr "默认存储"
|
|
|
|
|
|
#: terminal/models/task.py:17
|
|
|
msgid "Args"
|
|
|
msgstr "参数"
|
|
|
|
|
|
#: terminal/models/task.py:18
|
|
|
msgid "Kwargs"
|
|
|
msgstr ""
|
|
|
|
|
|
#: terminal/models/terminal.py:103
|
|
|
msgid "type"
|
|
|
msgstr "类型"
|
|
|
|
|
|
#: terminal/models/terminal.py:105
|
|
|
msgid "Remote Address"
|
|
|
msgstr "远端地址"
|
|
|
|
|
|
#: terminal/models/terminal.py:106
|
|
|
msgid "SSH Port"
|
|
|
msgstr "SSH端口"
|
|
|
|
|
|
#: terminal/models/terminal.py:107
|
|
|
msgid "HTTP Port"
|
|
|
msgstr "HTTP端口"
|
|
|
|
|
|
#: terminal/models/terminal.py:108
|
|
|
msgid "Command storage"
|
|
|
msgstr "命令存储"
|
|
|
|
|
|
#: terminal/models/terminal.py:109
|
|
|
msgid "Replay storage"
|
|
|
msgstr "录像存储"
|
|
|
|
|
|
#: terminal/notifications.py:66
|
|
|
msgid "Danger command alert"
|
|
|
msgstr "危险命令告警"
|
|
|
|
|
|
#: terminal/notifications.py:82
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Command: %(command)s\n"
|
|
|
"Asset: %(hostname)s (%(host_ip)s)\n"
|
|
|
"User: %(user)s\n"
|
|
|
"Level: %(risk_level)s\n"
|
|
|
"Session: %(session_detail_url)s?oid=%(oid)s\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"命令: %(command)s\n"
|
|
|
"资产: %(hostname)s (%(host_ip)s)\n"
|
|
|
"用户: %(user)s\n"
|
|
|
"等级: %(risk_level)s\n"
|
|
|
"会话: %(session_detail_url)s?oid=%(oid)s\n"
|
|
|
" "
|
|
|
|
|
|
#: terminal/notifications.py:113
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Command: %(command)s\n"
|
|
|
" <br>\n"
|
|
|
" Asset: %(hostname)s (%(host_ip)s)\n"
|
|
|
" <br>\n"
|
|
|
" User: %(user)s\n"
|
|
|
" <br>\n"
|
|
|
" Level: %(risk_level)s\n"
|
|
|
" <br>\n"
|
|
|
" Session: <a href=\"%(session_detail_url)s?oid=%(oid)s\">session "
|
|
|
"detail</a>\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 命令: %(command)s\n"
|
|
|
" <br>\n"
|
|
|
" 资产: %(hostname)s (%(host_ip)s)\n"
|
|
|
" <br>\n"
|
|
|
" 用户: %(user)s\n"
|
|
|
" <br>\n"
|
|
|
" 等级: %(risk_level)s\n"
|
|
|
" <br>\n"
|
|
|
" 会话: <a href=\"%(session_detail_url)s?oid=%(oid)s\">会话详情</a>\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: terminal/notifications.py:142
|
|
|
msgid "Batch danger command alert"
|
|
|
msgstr "批量危险命令告警"
|
|
|
|
|
|
#: terminal/notifications.py:153
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Assets: %(assets)s\n"
|
|
|
" <br>\n"
|
|
|
" User: %(user)s\n"
|
|
|
" <br>\n"
|
|
|
" Level: %(risk_level)s\n"
|
|
|
" <br>\n"
|
|
|
"\n"
|
|
|
" ----------------- Commands ---------------- "
|
|
|
"<br>\n"
|
|
|
" %(command)s <br>\n"
|
|
|
" ----------------- Commands ---------------- "
|
|
|
"<br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 资产: %(assets)s\n"
|
|
|
" <br>\n"
|
|
|
" 用户: %(user)s\n"
|
|
|
" <br>\n"
|
|
|
" 等级: %(risk_level)s\n"
|
|
|
" <br>\n"
|
|
|
"<br>\n"
|
|
|
" ----------------- 命令 ---------------- <br>\n"
|
|
|
" %(command)s <br>\n"
|
|
|
" ----------------- 命令 ---------------- <br>\n"
|
|
|
"<br>\n"
|
|
|
" "
|
|
|
|
|
|
#: terminal/notifications.py:180
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Assets: %(assets)s\n"
|
|
|
"User: %(user)s\n"
|
|
|
"Level: %(risk_level)s\n"
|
|
|
"\n"
|
|
|
"Commands 👇 ------------\n"
|
|
|
"%(command)s\n"
|
|
|
"------------------------\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
|
|
|
#: terminal/serializers/session.py:31
|
|
|
msgid "User ID"
|
|
|
msgstr "用户 ID"
|
|
|
|
|
|
#: terminal/serializers/session.py:32
|
|
|
msgid "Asset ID"
|
|
|
msgstr "资产 ID"
|
|
|
|
|
|
#: terminal/serializers/session.py:33
|
|
|
msgid "System user ID"
|
|
|
msgstr "系统用户 ID"
|
|
|
|
|
|
#: terminal/serializers/session.py:34
|
|
|
msgid "Login from display"
|
|
|
msgstr "登录来源名称"
|
|
|
|
|
|
#: terminal/serializers/session.py:36
|
|
|
msgid "Can replay"
|
|
|
msgstr "是否可重放"
|
|
|
|
|
|
#: terminal/serializers/session.py:37
|
|
|
msgid "Can join"
|
|
|
msgstr "是否可加入"
|
|
|
|
|
|
#: terminal/serializers/session.py:40
|
|
|
msgid "Can terminate"
|
|
|
msgstr "是否可中断"
|
|
|
|
|
|
#: terminal/serializers/session.py:50
|
|
|
msgid "Command amount"
|
|
|
msgstr "命令数量"
|
|
|
|
|
|
#: terminal/serializers/storage.py:21
|
|
|
msgid "Endpoint invalid: remove path `{}`"
|
|
|
msgstr "端点无效: 移除路径 `{}`"
|
|
|
|
|
|
#: terminal/serializers/storage.py:27
|
|
|
msgid "Bucket"
|
|
|
msgstr "桶名称"
|
|
|
|
|
|
#: terminal/serializers/storage.py:30
|
|
|
msgid "Access key"
|
|
|
msgstr "Access key"
|
|
|
|
|
|
#: terminal/serializers/storage.py:34
|
|
|
msgid "Secret key"
|
|
|
msgstr "Secret key"
|
|
|
|
|
|
#: terminal/serializers/storage.py:39 terminal/serializers/storage.py:51
|
|
|
#: terminal/serializers/storage.py:81 terminal/serializers/storage.py:91
|
|
|
msgid "Endpoint"
|
|
|
msgstr "端点"
|
|
|
|
|
|
#: terminal/serializers/storage.py:66 xpack/plugins/cloud/models.py:214
|
|
|
msgid "Region"
|
|
|
msgstr "地域"
|
|
|
|
|
|
#: terminal/serializers/storage.py:101
|
|
|
msgid "Container name"
|
|
|
msgstr "容器名称"
|
|
|
|
|
|
#: terminal/serializers/storage.py:103
|
|
|
msgid "Account name"
|
|
|
msgstr "账户名称"
|
|
|
|
|
|
#: terminal/serializers/storage.py:104
|
|
|
msgid "Account key"
|
|
|
msgstr "账户密钥"
|
|
|
|
|
|
#: terminal/serializers/storage.py:107
|
|
|
msgid "Endpoint suffix"
|
|
|
msgstr "端点后缀"
|
|
|
|
|
|
#: terminal/serializers/storage.py:128
|
|
|
msgid "The address format is incorrect"
|
|
|
msgstr "地址格式不正确"
|
|
|
|
|
|
#: terminal/serializers/storage.py:135
|
|
|
msgid "Host invalid"
|
|
|
msgstr "主机无效"
|
|
|
|
|
|
#: terminal/serializers/storage.py:138
|
|
|
msgid "Port invalid"
|
|
|
msgstr "端口无效"
|
|
|
|
|
|
#: terminal/serializers/storage.py:154
|
|
|
msgid "Index"
|
|
|
msgstr "索引"
|
|
|
|
|
|
#: terminal/serializers/storage.py:156
|
|
|
msgid "Doc type"
|
|
|
msgstr "文档类型"
|
|
|
|
|
|
#: terminal/serializers/storage.py:158
|
|
|
msgid "Ignore Certificate Verification"
|
|
|
msgstr "忽略证书认证"
|
|
|
|
|
|
#: terminal/serializers/terminal.py:80 terminal/serializers/terminal.py:88
|
|
|
msgid "Not found"
|
|
|
msgstr "没有发现"
|
|
|
|
|
|
#: tickets/const.py:8
|
|
|
msgid "General"
|
|
|
msgstr "一般"
|
|
|
|
|
|
#: tickets/const.py:10
|
|
|
msgid "Apply for asset"
|
|
|
msgstr "申请资产"
|
|
|
|
|
|
#: tickets/const.py:11
|
|
|
msgid "Apply for application"
|
|
|
msgstr "申请应用"
|
|
|
|
|
|
#: tickets/const.py:17 tickets/const.py:30 tickets/const.py:35
|
|
|
msgid "Open"
|
|
|
msgstr "打开"
|
|
|
|
|
|
#: tickets/const.py:18 tickets/const.py:25
|
|
|
msgid "Approved"
|
|
|
msgstr "已同意"
|
|
|
|
|
|
#: tickets/const.py:19 tickets/const.py:26
|
|
|
msgid "Rejected"
|
|
|
msgstr "已拒绝"
|
|
|
|
|
|
#: tickets/const.py:20 tickets/const.py:31
|
|
|
msgid "Closed"
|
|
|
msgstr "关闭的"
|
|
|
|
|
|
#: tickets/const.py:24
|
|
|
msgid "Notified"
|
|
|
msgstr "已通知"
|
|
|
|
|
|
#: tickets/const.py:37
|
|
|
msgid "Approve"
|
|
|
msgstr "同意"
|
|
|
|
|
|
#: tickets/const.py:42
|
|
|
msgid "One level"
|
|
|
msgstr "1 级"
|
|
|
|
|
|
#: tickets/const.py:43
|
|
|
msgid "Two level"
|
|
|
msgstr "2 级"
|
|
|
|
|
|
#: tickets/const.py:47
|
|
|
msgid "Super admin"
|
|
|
msgstr "超级管理员"
|
|
|
|
|
|
#: tickets/const.py:48
|
|
|
msgid "Org admin"
|
|
|
msgstr "组织管理员"
|
|
|
|
|
|
#: tickets/const.py:49
|
|
|
msgid "Super admin and org admin"
|
|
|
msgstr "组织管理员或超级管理员"
|
|
|
|
|
|
#: tickets/const.py:50
|
|
|
msgid "Custom user"
|
|
|
msgstr "自定义用户"
|
|
|
|
|
|
#: tickets/errors.py:9
|
|
|
msgid "Ticket already closed"
|
|
|
msgstr "工单已经关闭"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:52
|
|
|
msgid "Applied category"
|
|
|
msgstr "申请的类别"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:53
|
|
|
msgid "Applied type"
|
|
|
msgstr "申请的类型"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:54
|
|
|
msgid "Applied application group"
|
|
|
msgstr "申请的应用组"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:55 tickets/handler/apply_asset.py:48
|
|
|
msgid "Applied system user group"
|
|
|
msgstr "申请的系统用户组"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:56 tickets/handler/apply_asset.py:50
|
|
|
msgid "Applied date start"
|
|
|
msgstr "申请的开始日期"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:57 tickets/handler/apply_asset.py:51
|
|
|
msgid "Applied date expired"
|
|
|
msgstr "申请的失效日期"
|
|
|
|
|
|
#: tickets/handler/apply_application.py:79 tickets/handler/apply_asset.py:72
|
|
|
msgid ""
|
|
|
"Created by the ticket, ticket title: {}, ticket applicant: {}, ticket "
|
|
|
"processor: {}, ticket ID: {}"
|
|
|
msgstr ""
|
|
|
"通过工单创建, 工单标题: {}, 工单申请人: {}, 工单处理人: {}, 工单 ID: {}"
|
|
|
|
|
|
#: tickets/handler/apply_asset.py:47
|
|
|
msgid "Applied hostname group"
|
|
|
msgstr "申请的主机名组"
|
|
|
|
|
|
#: tickets/handler/apply_asset.py:49
|
|
|
msgid "Applied actions"
|
|
|
msgstr "申请的动作"
|
|
|
|
|
|
#: tickets/handler/base.py:86
|
|
|
msgid "{} {} the ticket"
|
|
|
msgstr "{} {}工单"
|
|
|
|
|
|
#: tickets/handler/base.py:113
|
|
|
msgid "Ticket title"
|
|
|
msgstr "工单标题"
|
|
|
|
|
|
#: tickets/handler/base.py:114
|
|
|
msgid "Ticket type"
|
|
|
msgstr "工单类型"
|
|
|
|
|
|
#: tickets/handler/base.py:115
|
|
|
msgid "Ticket status"
|
|
|
msgstr "工单状态"
|
|
|
|
|
|
#: tickets/handler/base.py:116
|
|
|
msgid "Ticket applicant"
|
|
|
msgstr "工单申请人"
|
|
|
|
|
|
#: tickets/handler/base.py:118
|
|
|
msgid "Ticket basic info"
|
|
|
msgstr "工单基本信息"
|
|
|
|
|
|
#: tickets/handler/base.py:129
|
|
|
msgid "No content"
|
|
|
msgstr "无内容"
|
|
|
|
|
|
#: tickets/handler/base.py:131
|
|
|
msgid "Ticket applied info"
|
|
|
msgstr "工单申请信息"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:24
|
|
|
msgid "Applied run user"
|
|
|
msgstr "申请运行的用户"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:25
|
|
|
msgid "Applied run asset"
|
|
|
msgstr "申请运行的资产"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:26
|
|
|
msgid "Applied run system user"
|
|
|
msgstr "申请运行的系统用户"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:27
|
|
|
msgid "Applied run command"
|
|
|
msgstr "申请运行的命令"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:28
|
|
|
msgid "Applied from session"
|
|
|
msgstr "申请来自会话"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:29
|
|
|
msgid "Applied from command filter rules"
|
|
|
msgstr "申请来自命令过滤规则"
|
|
|
|
|
|
#: tickets/handler/command_confirm.py:30
|
|
|
msgid "Applied from command filter"
|
|
|
msgstr "申请来自命令过滤规则"
|
|
|
|
|
|
#: tickets/handler/login_asset_confirm.py:16
|
|
|
msgid "Applied login user"
|
|
|
msgstr "申请登录的用户"
|
|
|
|
|
|
#: tickets/handler/login_asset_confirm.py:17
|
|
|
msgid "Applied login asset"
|
|
|
msgstr "申请登录的资产"
|
|
|
|
|
|
#: tickets/handler/login_asset_confirm.py:18
|
|
|
msgid "Applied login system user"
|
|
|
msgstr "申请登录的系统用户"
|
|
|
|
|
|
#: tickets/handler/login_confirm.py:16
|
|
|
msgid "Applied login IP"
|
|
|
msgstr "申请登录的IP"
|
|
|
|
|
|
#: tickets/handler/login_confirm.py:17
|
|
|
msgid "Applied login city"
|
|
|
msgstr "申请登录的城市"
|
|
|
|
|
|
#: tickets/handler/login_confirm.py:18
|
|
|
msgid "Applied login datetime"
|
|
|
msgstr "申请登录的日期"
|
|
|
|
|
|
#: tickets/models/comment.py:19
|
|
|
msgid "User display name"
|
|
|
msgstr "用户显示名称"
|
|
|
|
|
|
#: tickets/models/comment.py:20
|
|
|
msgid "Body"
|
|
|
msgstr "内容"
|
|
|
|
|
|
#: tickets/models/flow.py:20 tickets/models/flow.py:56
|
|
|
#: tickets/models/ticket.py:25
|
|
|
msgid "Approve level"
|
|
|
msgstr "审批级别"
|
|
|
|
|
|
#: tickets/models/flow.py:25 tickets/serializers/ticket/ticket.py:140
|
|
|
msgid "Approve strategy"
|
|
|
msgstr "审批策略"
|
|
|
|
|
|
#: tickets/models/flow.py:30 tickets/serializers/ticket/ticket.py:141
|
|
|
msgid "Assignees"
|
|
|
msgstr "受理人"
|
|
|
|
|
|
#: tickets/models/flow.py:34
|
|
|
msgid "Assignees display"
|
|
|
msgstr "受理人名称"
|
|
|
|
|
|
#: tickets/models/flow.py:38
|
|
|
msgid "Ticket flow approval rule"
|
|
|
msgstr "工单批准信息"
|
|
|
|
|
|
#: tickets/models/flow.py:61
|
|
|
msgid "Ticket flow"
|
|
|
msgstr "工单流程"
|
|
|
|
|
|
#: tickets/models/ticket.py:38
|
|
|
msgid "Ticket assignee"
|
|
|
msgstr "工单受理人"
|
|
|
|
|
|
#: tickets/models/ticket.py:45
|
|
|
msgid "Title"
|
|
|
msgstr "标题"
|
|
|
|
|
|
#: tickets/models/ticket.py:53
|
|
|
msgid "State"
|
|
|
msgstr "状态"
|
|
|
|
|
|
#: tickets/models/ticket.py:61
|
|
|
msgid "Approval step"
|
|
|
msgstr "审批步骤"
|
|
|
|
|
|
#: tickets/models/ticket.py:66
|
|
|
msgid "Applicant"
|
|
|
msgstr "申请人"
|
|
|
|
|
|
#: tickets/models/ticket.py:68
|
|
|
msgid "Applicant display"
|
|
|
msgstr "申请人名称"
|
|
|
|
|
|
#: tickets/models/ticket.py:69
|
|
|
msgid "Process"
|
|
|
msgstr "流程"
|
|
|
|
|
|
#: tickets/models/ticket.py:74
|
|
|
msgid "TicketFlow"
|
|
|
msgstr "工单流程"
|
|
|
|
|
|
#: tickets/notifications.py:57
|
|
|
msgid "click here to review"
|
|
|
msgstr "点击查看"
|
|
|
|
|
|
#: tickets/notifications.py:75
|
|
|
msgid "Your has a new ticket, applicant - {}"
|
|
|
msgstr "你有一个新的工单, 申请人 - {}"
|
|
|
|
|
|
#: tickets/notifications.py:88
|
|
|
msgid "Your ticket has been processed, processor - {}"
|
|
|
msgstr "你的工单已被处理, 处理人 - {}"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:20
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:18
|
|
|
msgid "Apply name"
|
|
|
msgstr "应用名称"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:39
|
|
|
msgid "Apply applications"
|
|
|
msgstr "申请应用"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:44
|
|
|
msgid "Apply applications display"
|
|
|
msgstr "应用名称名称"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:48
|
|
|
msgid "Apply system users"
|
|
|
msgstr "系统用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:53
|
|
|
msgid "Apply system user display"
|
|
|
msgstr "批准的系统用户名称"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:73
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:63
|
|
|
#: tickets/serializers/ticket/ticket.py:127
|
|
|
msgid "Permission named `{}` already exists"
|
|
|
msgstr "授权名称 `{}` 已存在"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:89
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:72
|
|
|
msgid "The expiration date should be greater than the start date"
|
|
|
msgstr "过期时间要大于开始时间"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:22
|
|
|
msgid "Apply assets"
|
|
|
msgstr "申请资产"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:26
|
|
|
msgid "Approve assets display"
|
|
|
msgstr "批准的资产名称"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:31
|
|
|
msgid "Approve system users"
|
|
|
msgstr "批准的系统用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:35
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:43
|
|
|
msgid "Apply assets display"
|
|
|
msgstr "批准的资产名称"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:12
|
|
|
msgid "Run user"
|
|
|
msgstr "运行的用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:13
|
|
|
msgid "Run asset"
|
|
|
msgstr "运行的资产"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:15
|
|
|
msgid "Run system user"
|
|
|
msgstr "运行的系统用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:17
|
|
|
msgid "Run command"
|
|
|
msgstr "运行的命令"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:18
|
|
|
msgid "From session"
|
|
|
msgstr "来自会话"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:20
|
|
|
msgid "From cmd filter rule"
|
|
|
msgstr "来自命令过滤规则"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/command_confirm.py:22
|
|
|
msgid "From cmd filter"
|
|
|
msgstr "来自命令过滤规则"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/common.py:11
|
|
|
#: tickets/serializers/ticket/ticket.py:122
|
|
|
msgid "Created by ticket ({}-{})"
|
|
|
msgstr "通过工单创建 ({}-{})"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_asset_confirm.py:13
|
|
|
msgid "Login user"
|
|
|
msgstr "登录用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_asset_confirm.py:14
|
|
|
msgid "Login asset"
|
|
|
msgstr "登录资产"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_asset_confirm.py:16
|
|
|
msgid "Login system user"
|
|
|
msgstr "登录系统用户"
|
|
|
|
|
|
#: tickets/serializers/ticket/meta/ticket_type/login_confirm.py:20
|
|
|
msgid "Login datetime"
|
|
|
msgstr "登录日期"
|
|
|
|
|
|
#: tickets/serializers/ticket/ticket.py:95
|
|
|
msgid ""
|
|
|
"The `type` in the submission data (`{}`) is different from the type in the "
|
|
|
"request url (`{}`)"
|
|
|
msgstr "提交数据中的类型 (`{}`) 与请求URL地址中的类型 (`{}`) 不一致"
|
|
|
|
|
|
#: tickets/serializers/ticket/ticket.py:115
|
|
|
msgid "The ticket flow `{}` does not exist"
|
|
|
msgstr "工单流程 `{}` 不存在"
|
|
|
|
|
|
#: tickets/serializers/ticket/ticket.py:162
|
|
|
msgid "Please select the Assignees"
|
|
|
msgstr "请选择受理人"
|
|
|
|
|
|
#: tickets/serializers/ticket/ticket.py:188
|
|
|
msgid "The current organization type already exists"
|
|
|
msgstr "当前组织已存在该类型"
|
|
|
|
|
|
#: users/api/user.py:208
|
|
|
msgid "Could not reset self otp, use profile reset instead"
|
|
|
msgstr "不能在该页面重置多因子认证, 请去个人信息页面重置"
|
|
|
|
|
|
#: users/const.py:10 users/models/user.py:179
|
|
|
msgid "System administrator"
|
|
|
msgstr "系统管理员"
|
|
|
|
|
|
#: users/const.py:11 users/models/user.py:180
|
|
|
msgid "System auditor"
|
|
|
msgstr "系统审计员"
|
|
|
|
|
|
#: users/const.py:18
|
|
|
msgid "Reset link will be generated and sent to the user"
|
|
|
msgstr "生成重置密码链接,通过邮件发送给用户"
|
|
|
|
|
|
#: users/const.py:19
|
|
|
msgid "Set password"
|
|
|
msgstr "设置密码"
|
|
|
|
|
|
#: users/exceptions.py:10
|
|
|
msgid "MFA not enabled"
|
|
|
msgstr "MFA没有开启"
|
|
|
|
|
|
#: users/exceptions.py:15
|
|
|
msgid "Phone not set"
|
|
|
msgstr "手机号没有设置"
|
|
|
|
|
|
#: users/exceptions.py:20
|
|
|
msgid "MFA method not support"
|
|
|
msgstr "MFA 方法不支持"
|
|
|
|
|
|
#: users/forms/profile.py:49
|
|
|
msgid ""
|
|
|
"When enabled, you will enter the MFA binding process the next time you log "
|
|
|
"in. you can also directly bind in \"personal information -> quick "
|
|
|
"modification -> change MFA Settings\"!"
|
|
|
msgstr ""
|
|
|
"启用之后您将会在下次登录时进入多因子认证绑定流程;您也可以在(个人信息->快速"
|
|
|
"修改->更改多因子设置)中直接绑定!"
|
|
|
|
|
|
#: users/forms/profile.py:60
|
|
|
msgid "* Enable MFA to make the account more secure."
|
|
|
msgstr "* 启用多因子认证,使账号更加安全。"
|
|
|
|
|
|
#: users/forms/profile.py:69
|
|
|
msgid ""
|
|
|
"In order to protect you and your company, please keep your account, password "
|
|
|
"and key sensitive information properly. (for example: setting complex "
|
|
|
"password, enabling MFA)"
|
|
|
msgstr ""
|
|
|
"为了保护您和公司的安全,请妥善保管您的账户、密码和密钥等重要敏感信息;(如:"
|
|
|
"设置复杂密码,并启用多因子认证)"
|
|
|
|
|
|
#: users/forms/profile.py:76
|
|
|
msgid "Finish"
|
|
|
msgstr "完成"
|
|
|
|
|
|
#: users/forms/profile.py:83
|
|
|
msgid "New password"
|
|
|
msgstr "新密码"
|
|
|
|
|
|
#: users/forms/profile.py:88
|
|
|
msgid "Confirm password"
|
|
|
msgstr "确认密码"
|
|
|
|
|
|
#: users/forms/profile.py:96
|
|
|
msgid "Password does not match"
|
|
|
msgstr "密码不一致"
|
|
|
|
|
|
#: users/forms/profile.py:108
|
|
|
msgid "Old password"
|
|
|
msgstr "原来密码"
|
|
|
|
|
|
#: users/forms/profile.py:118
|
|
|
msgid "Old password error"
|
|
|
msgstr "原来密码错误"
|
|
|
|
|
|
#: users/forms/profile.py:128
|
|
|
msgid "Automatically configure and download the SSH key"
|
|
|
msgstr "自动配置并下载SSH密钥"
|
|
|
|
|
|
#: users/forms/profile.py:130
|
|
|
msgid "ssh public key"
|
|
|
msgstr "SSH公钥"
|
|
|
|
|
|
#: users/forms/profile.py:131
|
|
|
msgid "ssh-rsa AAAA..."
|
|
|
msgstr ""
|
|
|
|
|
|
#: users/forms/profile.py:132
|
|
|
msgid "Paste your id_rsa.pub here."
|
|
|
msgstr "复制你的公钥到这里"
|
|
|
|
|
|
#: users/forms/profile.py:145
|
|
|
msgid "Public key should not be the same as your old one."
|
|
|
msgstr "不能和原来的密钥相同"
|
|
|
|
|
|
#: users/forms/profile.py:149 users/serializers/profile.py:74
|
|
|
#: users/serializers/profile.py:150 users/serializers/profile.py:163
|
|
|
msgid "Not a valid ssh public key"
|
|
|
msgstr "SSH密钥不合法"
|
|
|
|
|
|
#: users/forms/profile.py:160 users/models/user.py:635
|
|
|
#: users/templates/users/user_password_update.html:48
|
|
|
msgid "Public key"
|
|
|
msgstr "SSH公钥"
|
|
|
|
|
|
#: users/models/user.py:38
|
|
|
msgid "SMS verify code"
|
|
|
msgstr "短信验证码"
|
|
|
|
|
|
#: users/models/user.py:472
|
|
|
msgid "Force enable"
|
|
|
msgstr "强制启用"
|
|
|
|
|
|
#: users/models/user.py:584
|
|
|
msgid "Local"
|
|
|
msgstr "数据库"
|
|
|
|
|
|
#: users/models/user.py:618
|
|
|
msgid "Avatar"
|
|
|
msgstr "头像"
|
|
|
|
|
|
#: users/models/user.py:621
|
|
|
msgid "Wechat"
|
|
|
msgstr "微信"
|
|
|
|
|
|
#: users/models/user.py:632
|
|
|
msgid "Private key"
|
|
|
msgstr "ssh私钥"
|
|
|
|
|
|
#: users/models/user.py:651
|
|
|
msgid "Source"
|
|
|
msgstr "来源"
|
|
|
|
|
|
#: users/models/user.py:655
|
|
|
msgid "Date password last updated"
|
|
|
msgstr "最后更新密码日期"
|
|
|
|
|
|
#: users/models/user.py:658
|
|
|
msgid "Need update password"
|
|
|
msgstr "需要更新密码"
|
|
|
|
|
|
#: users/models/user.py:822
|
|
|
msgid "Administrator"
|
|
|
msgstr "管理员"
|
|
|
|
|
|
#: users/models/user.py:825
|
|
|
msgid "Administrator is the super user of system"
|
|
|
msgstr "Administrator是初始的超级管理员"
|
|
|
|
|
|
#: users/notifications.py:19 users/notifications.py:52
|
|
|
#: users/templates/users/reset_password.html:5
|
|
|
#: users/templates/users/reset_password.html:6
|
|
|
msgid "Reset password"
|
|
|
msgstr "重置密码"
|
|
|
|
|
|
#: users/notifications.py:20
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Hello %(name)s:\n"
|
|
|
"Please click the link below to reset your password, if not your request, "
|
|
|
"concern your account security\n"
|
|
|
"\n"
|
|
|
"Click here reset password 👇\n"
|
|
|
"%(rest_password_url)s?token=%(rest_password_token)s\n"
|
|
|
"\n"
|
|
|
"This link is valid for 1 hour. After it expires, \n"
|
|
|
"\n"
|
|
|
"request new one 👇\n"
|
|
|
"%(forget_password_url)s?email=%(email)s\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"Login direct 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"您好 %(name)s:\n"
|
|
|
"请点击下面链接重置密码, 如果不是您申请的,请关注账号安全\n"
|
|
|
" \n"
|
|
|
"请点击这里设置密码 👇\n"
|
|
|
"%(rest_password_url)s?token=%(rest_password_token)s\n"
|
|
|
"\n"
|
|
|
"这个链接有效期1小时, 超过时间您可以, \n"
|
|
|
"\n"
|
|
|
"重新申请 👇\n"
|
|
|
"%(forget_password_url)s?email=%(email)s\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"直接登录 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
|
|
|
#: users/notifications.py:53
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Hello %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" Please click the link below to reset your password, if not your "
|
|
|
"request, concern your account security\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(rest_password_url)s?token=%(rest_password_token)s"
|
|
|
"\">Click here reset password</a>\n"
|
|
|
" <br>\n"
|
|
|
" This link is valid for 1 hour. After it expires, <a href="
|
|
|
"\"%(forget_password_url)s?email=%(email)s\">request new one</a>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">Login direct</a>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您好 %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" 请点击下面链接重置密码, 如果不是您申请的,请关注账号安全\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(rest_password_url)s?token=%(rest_password_token)s\">请点击这"
|
|
|
"里设置密码 </a>\n"
|
|
|
" <br>\n"
|
|
|
" 这个链接有效期1小时, 超过时间您可以<a href=\"%(forget_password_url)s?"
|
|
|
"email=%(email)s\">重新申请</a>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">直接登录</a>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:92 users/notifications.py:124
|
|
|
#: users/views/profile/reset.py:127
|
|
|
msgid "Reset password success"
|
|
|
msgstr "重置密码成功"
|
|
|
|
|
|
#: users/notifications.py:93
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" \n"
|
|
|
"Hi %(name)s:\n"
|
|
|
"\n"
|
|
|
"Your JumpServer password has just been successfully updated.\n"
|
|
|
"\n"
|
|
|
"If the password update was not initiated by you, your account may have "
|
|
|
"security issues. \n"
|
|
|
"It is recommended that you log on to the JumpServer immediately and change "
|
|
|
"your password.\n"
|
|
|
"\n"
|
|
|
"If you have any questions, you can contact the administrator.\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"\n"
|
|
|
"IP Address: %(ip_address)s\n"
|
|
|
"\n"
|
|
|
"\n"
|
|
|
"Browser: %(browser)s\n"
|
|
|
" \n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" \n"
|
|
|
"Hi %(name)s:\n"
|
|
|
"\n"
|
|
|
"你的 JumpServer 密码刚刚已经成功更新。\n"
|
|
|
"\n"
|
|
|
"如果这次密码更新不是由你发起的,那么你的账号可能存在安全问题。 \n"
|
|
|
"建议你立刻登录 JumpServer 更改密码。 \n"
|
|
|
"\n"
|
|
|
"如果你有任何疑问,可以联系管理员。\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"\n"
|
|
|
"IP 地址: %(ip_address)s\n"
|
|
|
"\n"
|
|
|
"浏览器: %(browser)s\n"
|
|
|
" \n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:125
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" \n"
|
|
|
" Hi %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" Your JumpServer password has just been successfully updated.\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" If the password update was not initiated by you, your account may "
|
|
|
"have security issues. \n"
|
|
|
" It is recommended that you log on to the JumpServer immediately and "
|
|
|
"change your password.\n"
|
|
|
" <br>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" If you have any questions, you can contact the administrator.\n"
|
|
|
" <br>\n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
" <br>\n"
|
|
|
" <br>\n"
|
|
|
" IP Address: %(ip_address)s\n"
|
|
|
" <br>\n"
|
|
|
" <br>\n"
|
|
|
" Browser: %(browser)s\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" \n"
|
|
|
" Hi %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" 你的 JumpServer 密码刚刚已经成功更新。 <br>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" 如果这次密码更新不是由你发起的,那么你的账号可能存在安全问题。\n"
|
|
|
" 建议你立刻登录 JumpServer 更改密码。\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" 如果你有任何疑问,可以联系管理员。 <br>\n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
" <br>\n"
|
|
|
" <br>\n"
|
|
|
" IP 地址: %(ip_address)s\n"
|
|
|
" <br>\n"
|
|
|
" <br>\n"
|
|
|
" 浏览器: %(browser)s\n"
|
|
|
" <br>\n"
|
|
|
" \n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:170 users/notifications.py:206
|
|
|
msgid "Security notice"
|
|
|
msgstr "安全通知"
|
|
|
|
|
|
#: users/notifications.py:171
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Hello %(name)s:\n"
|
|
|
"\n"
|
|
|
"Your password will expire in %(date_password_expired)s,\n"
|
|
|
"\n"
|
|
|
"For your account security, please click on the link below to update your "
|
|
|
"password in time\n"
|
|
|
"\n"
|
|
|
"Click here update password 👇\n"
|
|
|
"%(update_password_url)s\n"
|
|
|
"\n"
|
|
|
"If your password has expired, please click 👇 to apply for a password reset "
|
|
|
"email.\n"
|
|
|
"%(forget_password_url)s?email=%(email)s\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"Login direct 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"您好 %(name)s:\n"
|
|
|
"\n"
|
|
|
"您的密码会在 %(date_password_expired)s 过期,\n"
|
|
|
"\n"
|
|
|
"为了您的账号安全,请点击下面的链接及时更新密码 \n"
|
|
|
"\n"
|
|
|
"请点击这里更新密码 👇\n"
|
|
|
"%(update_password_url)s\n"
|
|
|
"如果您的密码已经过期,请点击 👇 申请一份重置密码邮件。 \n"
|
|
|
"%(forget_password_url)s?email=%(email)s\n"
|
|
|
"\n"
|
|
|
"-------------------\n"
|
|
|
"\n"
|
|
|
"直接登录 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:207
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Hello %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" Your password will expire in %(date_password_expired)s,\n"
|
|
|
" <br>\n"
|
|
|
" For your account security, please click on the link below to update "
|
|
|
"your password in time\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(update_password_url)s\">Click here update password</a>\n"
|
|
|
" <br>\n"
|
|
|
" If your password has expired, please click \n"
|
|
|
" <a href=\"%(forget_password_url)s?email=%(email)s\">Password "
|
|
|
"expired</a> \n"
|
|
|
" to apply for a password reset email.\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">Login direct</a>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您好 %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" 您的密码会在 %(date_password_expired)s 过期,\n"
|
|
|
" <br>\n"
|
|
|
" 为了您的账号安全,请点击下面的链接及时更新密码\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(update_password_url)s\">请点击这里更新密码</a>\n"
|
|
|
" <br>\n"
|
|
|
" 如果您的密码已经过期,请点击 \n"
|
|
|
" <a href=\"%(forget_password_url)s?email=%(email)s\">密码过期</a> \n"
|
|
|
" 申请一份重置密码邮件。\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" ---\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">直接登录</a>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:244 users/notifications.py:263
|
|
|
msgid "Expiration notice"
|
|
|
msgstr "过期通知"
|
|
|
|
|
|
#: users/notifications.py:245
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Hello %(name)s:\n"
|
|
|
"\n"
|
|
|
"Your account will expire in %(date_expired)s,\n"
|
|
|
"\n"
|
|
|
"In order not to affect your normal work, please contact the administrator "
|
|
|
"for confirmation.\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"您好 %(name)s:\n"
|
|
|
"\n"
|
|
|
"您的账户会在 %(date_expired)s 过期,\n"
|
|
|
"\n"
|
|
|
"为了不影响您正常工作,请联系管理员确认。\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:264
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Hello %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" Your account will expire in %(date_expired)s,\n"
|
|
|
" <br>\n"
|
|
|
" In order not to affect your normal work, please contact the "
|
|
|
"administrator for confirmation.\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 您好 %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" 您的账户会在 %(date_expired)s 过期,\n"
|
|
|
" <br>\n"
|
|
|
" 为了不影响您正常工作,请联系管理员确认。\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:284 users/notifications.py:305
|
|
|
msgid "SSH Key Reset"
|
|
|
msgstr "重置SSH密钥"
|
|
|
|
|
|
#: users/notifications.py:285
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Hello %(name)s:\n"
|
|
|
"\n"
|
|
|
"Your ssh public key has been reset by site administrator.\n"
|
|
|
"Please login and reset your ssh public key.\n"
|
|
|
"\n"
|
|
|
"Login direct 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"你好 %(name)s:\n"
|
|
|
"\n"
|
|
|
"您的密钥已被管理员重置,\n"
|
|
|
"请登录并重新设置您的密钥.\n"
|
|
|
"\n"
|
|
|
"直接登录 👇\n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:306
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Hello %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" Your ssh public key has been reset by site administrator.\n"
|
|
|
" Please login and reset your ssh public key.\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">Login direct</a>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 你好 %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" 您的密钥已被管理员重置,\n"
|
|
|
" 请登录并重新设置您的密钥.\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">直接登录</a>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:328 users/notifications.py:348
|
|
|
msgid "MFA Reset"
|
|
|
msgstr "重置 MFA"
|
|
|
|
|
|
#: users/notifications.py:329
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
"Hello %(name)s:\n"
|
|
|
"\n"
|
|
|
"Your MFA has been reset by site administrator.\n"
|
|
|
"Please login and reset your MFA.\n"
|
|
|
"\n"
|
|
|
"Login direct 👇 \n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
"你好 %(name)s:\n"
|
|
|
"\n"
|
|
|
"您的 MFA 已被管理员重置,\n"
|
|
|
"请登录并重新设置您的 MFA.\n"
|
|
|
"\n"
|
|
|
"直接登录 👇 \n"
|
|
|
"%(login_url)s\n"
|
|
|
"\n"
|
|
|
" "
|
|
|
|
|
|
#: users/notifications.py:349
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" Hello %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" Your MFA has been reset by site administrator.\n"
|
|
|
" Please login and reset your MFA.\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">Login direct</a>\n"
|
|
|
" \n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" 你好 %(name)s:\n"
|
|
|
" <br>\n"
|
|
|
" 您的 MFA 已被管理员重置,\n"
|
|
|
" 请登录并重新设置您的 MFA.\n"
|
|
|
" <br>\n"
|
|
|
" <a href=\"%(login_url)s\">直接登录</a>\n"
|
|
|
"\n"
|
|
|
" <br>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/serializers/profile.py:29
|
|
|
msgid "The old password is incorrect"
|
|
|
msgstr "旧密码错误"
|
|
|
|
|
|
#: users/serializers/profile.py:36 users/serializers/user.py:141
|
|
|
msgid "Password does not match security rules"
|
|
|
msgstr "密码不满足安全规则"
|
|
|
|
|
|
#: users/serializers/profile.py:40
|
|
|
msgid "The new password cannot be the last {} passwords"
|
|
|
msgstr "新密码不能是最近 {} 次的密码"
|
|
|
|
|
|
#: users/serializers/profile.py:46
|
|
|
msgid "The newly set password is inconsistent"
|
|
|
msgstr "两次密码不一致"
|
|
|
|
|
|
#: users/serializers/profile.py:121 users/serializers/user.py:77
|
|
|
msgid "Is first login"
|
|
|
msgstr "首次登录"
|
|
|
|
|
|
#: users/serializers/user.py:23
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:32
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:24
|
|
|
msgid "Password strategy"
|
|
|
msgstr "密码策略"
|
|
|
|
|
|
#: users/serializers/user.py:25
|
|
|
msgid "MFA enabled"
|
|
|
msgstr "MFA"
|
|
|
|
|
|
#: users/serializers/user.py:26
|
|
|
msgid "MFA force enabled"
|
|
|
msgstr "强制 MFA"
|
|
|
|
|
|
#: users/serializers/user.py:27
|
|
|
msgid "MFA level display"
|
|
|
msgstr "MFA 等级名称"
|
|
|
|
|
|
#: users/serializers/user.py:28
|
|
|
msgid "Login blocked"
|
|
|
msgstr "登录被阻塞"
|
|
|
|
|
|
#: users/serializers/user.py:30
|
|
|
msgid "Can update"
|
|
|
msgstr "是否可更新"
|
|
|
|
|
|
#: users/serializers/user.py:31
|
|
|
msgid "Can delete"
|
|
|
msgstr "是否可删除"
|
|
|
|
|
|
#: users/serializers/user.py:32
|
|
|
msgid "Can public key authentication"
|
|
|
msgstr "能否公钥认证"
|
|
|
|
|
|
#: users/serializers/user.py:34 users/serializers/user.py:84
|
|
|
msgid "Organization role name"
|
|
|
msgstr "组织角色名称"
|
|
|
|
|
|
#: users/serializers/user.py:80
|
|
|
msgid "Avatar url"
|
|
|
msgstr "头像路径"
|
|
|
|
|
|
#: users/serializers/user.py:82
|
|
|
msgid "Groups name"
|
|
|
msgstr "用户组名"
|
|
|
|
|
|
#: users/serializers/user.py:83
|
|
|
msgid "Source name"
|
|
|
msgstr "用户来源名"
|
|
|
|
|
|
#: users/serializers/user.py:85
|
|
|
msgid "Super role name"
|
|
|
msgstr "超级角色名称"
|
|
|
|
|
|
#: users/serializers/user.py:86
|
|
|
msgid "Total role name"
|
|
|
msgstr "汇总角色名称"
|
|
|
|
|
|
#: users/serializers/user.py:88
|
|
|
msgid "Is wecom bound"
|
|
|
msgstr "是否绑定了企业微信"
|
|
|
|
|
|
#: users/serializers/user.py:89
|
|
|
msgid "Is dingtalk bound"
|
|
|
msgstr "是否绑定了钉钉"
|
|
|
|
|
|
#: users/serializers/user.py:90
|
|
|
msgid "Is feishu bound"
|
|
|
msgstr "是否绑定了飞书"
|
|
|
|
|
|
#: users/serializers/user.py:91
|
|
|
msgid "Is OTP bound"
|
|
|
msgstr "是否绑定了虚拟MFA"
|
|
|
|
|
|
#: users/serializers/user.py:115
|
|
|
msgid "Role limit to {}"
|
|
|
msgstr "角色只能为 {}"
|
|
|
|
|
|
#: users/serializers/user.py:235
|
|
|
msgid "name not unique"
|
|
|
msgstr "名称重复"
|
|
|
|
|
|
#: users/templates/users/_base_otp.html:14
|
|
|
msgid "Please enter the password of"
|
|
|
msgstr "请输入"
|
|
|
|
|
|
#: users/templates/users/_base_otp.html:14
|
|
|
msgid "account"
|
|
|
msgstr "账户"
|
|
|
|
|
|
#: users/templates/users/_base_otp.html:14
|
|
|
msgid "to complete the binding operation"
|
|
|
msgstr "的密码完成绑定操作"
|
|
|
|
|
|
#: users/templates/users/_granted_assets.html:7
|
|
|
msgid "Loading"
|
|
|
msgstr "加载中"
|
|
|
|
|
|
#: users/templates/users/_select_user_modal.html:5
|
|
|
msgid "Please Select User"
|
|
|
msgstr "选择用户"
|
|
|
|
|
|
#: users/templates/users/_select_user_modal.html:17
|
|
|
msgid "Asset num"
|
|
|
msgstr "资产数量"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:11
|
|
|
msgid "User detail"
|
|
|
msgstr "用户详情"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:15
|
|
|
msgid "User permissions"
|
|
|
msgstr "用户授权"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:23
|
|
|
msgid "Asset granted"
|
|
|
msgstr "授权的资产"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:40
|
|
|
msgid "RemoteApp granted"
|
|
|
msgstr "授权的远程应用"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:47
|
|
|
msgid "RemoteApp permission"
|
|
|
msgstr "远程应用授权"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:54
|
|
|
msgid "DatabaseApp granted"
|
|
|
msgstr "授权的数据库应用"
|
|
|
|
|
|
#: users/templates/users/_user_detail_nav_header.html:61
|
|
|
msgid "DatabaseApp permission"
|
|
|
msgstr "数据库应用授权"
|
|
|
|
|
|
#: users/templates/users/_user_update_pk_modal.html:4
|
|
|
msgid "Update User SSH Public Key"
|
|
|
msgstr "更新SSH密钥"
|
|
|
|
|
|
#: users/templates/users/first_login.html:6
|
|
|
#: users/templates/users/first_login_done.html:19
|
|
|
msgid "First Login"
|
|
|
msgstr "首次登录"
|
|
|
|
|
|
#: users/templates/users/first_login_done.html:31
|
|
|
msgid "Welcome to use jumpserver, visit "
|
|
|
msgstr "欢迎使用 JumpServer 堡垒机"
|
|
|
|
|
|
#: users/templates/users/first_login_done.html:32
|
|
|
msgid "Use guide"
|
|
|
msgstr "向导"
|
|
|
|
|
|
#: users/templates/users/first_login_done.html:32
|
|
|
msgid " for more information"
|
|
|
msgstr "获取更多信息"
|
|
|
|
|
|
#: users/templates/users/forgot_password.html:23
|
|
|
msgid "Input your email, that will send a mail to your"
|
|
|
msgstr "输入您的邮箱, 将会发一封重置邮件到您的邮箱中"
|
|
|
|
|
|
#: users/templates/users/forgot_password.html:32
|
|
|
#: users/templates/users/user_password_update.html:75
|
|
|
msgid "Submit"
|
|
|
msgstr "提交"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:23
|
|
|
#: users/templates/users/user_password_update.html:64
|
|
|
msgid "Your password must satisfy"
|
|
|
msgstr "您的密码必须满足:"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:24
|
|
|
#: users/templates/users/user_password_update.html:65
|
|
|
msgid "Password strength"
|
|
|
msgstr "密码强度:"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:48
|
|
|
#: users/templates/users/user_password_update.html:102
|
|
|
msgid "Very weak"
|
|
|
msgstr "很弱"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:49
|
|
|
#: users/templates/users/user_password_update.html:103
|
|
|
msgid "Weak"
|
|
|
msgstr "弱"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:51
|
|
|
#: users/templates/users/user_password_update.html:105
|
|
|
msgid "Medium"
|
|
|
msgstr "一般"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:52
|
|
|
#: users/templates/users/user_password_update.html:106
|
|
|
msgid "Strong"
|
|
|
msgstr "强"
|
|
|
|
|
|
#: users/templates/users/reset_password.html:53
|
|
|
#: users/templates/users/user_password_update.html:107
|
|
|
msgid "Very strong"
|
|
|
msgstr "很强"
|
|
|
|
|
|
#: users/templates/users/user_asset_permission.html:43
|
|
|
#: users/templates/users/user_asset_permission.html:155
|
|
|
#: users/templates/users/user_database_app_permission.html:41
|
|
|
#: xpack/plugins/cloud/models.py:34
|
|
|
msgid "Validity"
|
|
|
msgstr "有效"
|
|
|
|
|
|
#: users/templates/users/user_asset_permission.html:160
|
|
|
msgid "Inherit"
|
|
|
msgstr "继承"
|
|
|
|
|
|
#: users/templates/users/user_asset_permission.html:161
|
|
|
msgid "Include"
|
|
|
msgstr "包含"
|
|
|
|
|
|
#: users/templates/users/user_asset_permission.html:162
|
|
|
msgid "Exclude"
|
|
|
msgstr "不包含"
|
|
|
|
|
|
#: users/templates/users/user_otp_check_password.html:6
|
|
|
#: users/templates/users/user_verify_mfa.html:6
|
|
|
msgid "Authenticate"
|
|
|
msgstr "验证身份"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_bind.html:6
|
|
|
msgid "Bind one-time password authenticator"
|
|
|
msgstr "绑定一次性密码验证器"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_bind.html:13
|
|
|
msgid ""
|
|
|
"Use the MFA Authenticator application to scan the following qr code for a 6-"
|
|
|
"bit verification code"
|
|
|
msgstr "使用MFA验证器应用扫描以下二维码,获取6位验证码"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_bind.html:22
|
|
|
#: users/templates/users/user_verify_mfa.html:23
|
|
|
msgid "Six figures"
|
|
|
msgstr "6位数字"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:6
|
|
|
msgid "Install app"
|
|
|
msgstr "安装应用"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:13
|
|
|
msgid ""
|
|
|
"Download and install the MFA Authenticator application on your phone or "
|
|
|
"applet of WeChat"
|
|
|
msgstr "请在手机端或微信小程序下载并安装MFA验证器应用"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:18
|
|
|
msgid "Android downloads"
|
|
|
msgstr "Android手机下载"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:23
|
|
|
msgid "iPhone downloads"
|
|
|
msgstr "iPhone手机下载"
|
|
|
|
|
|
#: users/templates/users/user_otp_enable_install_app.html:26
|
|
|
msgid ""
|
|
|
"After installation, click the next step to enter the binding page (if "
|
|
|
"installed, go to the next step directly)."
|
|
|
msgstr "安装完成后点击下一步进入绑定页面(如已安装,直接进入下一步)"
|
|
|
|
|
|
#: users/templates/users/user_password_update.html:74
|
|
|
msgid "Reset"
|
|
|
msgstr "重置"
|
|
|
|
|
|
#: users/templates/users/user_password_verify.html:8
|
|
|
#: users/templates/users/user_password_verify.html:9
|
|
|
msgid "Verify password"
|
|
|
msgstr "校验密码"
|
|
|
|
|
|
#: users/templates/users/user_verify_mfa.html:11
|
|
|
msgid ""
|
|
|
"The account protection has been opened, please complete the following "
|
|
|
"operations according to the prompts"
|
|
|
msgstr "账号保护已开启,请根据提示完成以下操作"
|
|
|
|
|
|
#: users/templates/users/user_verify_mfa.html:13
|
|
|
msgid "Open MFA Authenticator and enter the 6-bit dynamic code"
|
|
|
msgstr "请打开MFA验证器,输入6位动态码"
|
|
|
|
|
|
# msgid "Update user"
|
|
|
# msgstr "更新用户"
|
|
|
#: users/utils.py:23
|
|
|
#, python-format
|
|
|
msgid ""
|
|
|
"\n"
|
|
|
" <div>\n"
|
|
|
" <p>Your account has been created successfully</p>\n"
|
|
|
" <div>\n"
|
|
|
" Username: %(username)s\n"
|
|
|
" <br/>\n"
|
|
|
" Password: <a href=\"%(rest_password_url)s?token="
|
|
|
"%(rest_password_token)s\">\n"
|
|
|
" click here to set your password</a> \n"
|
|
|
" (This link is valid for 1 hour. After it expires, <a href="
|
|
|
"\"%(forget_password_url)s?email=%(email)s\">request new one</a>)\n"
|
|
|
" </div>\n"
|
|
|
" <div>\n"
|
|
|
" <p>---</p>\n"
|
|
|
" <a href=\"%(login_url)s\">Login direct</a>\n"
|
|
|
" </div>\n"
|
|
|
" </div>\n"
|
|
|
" "
|
|
|
msgstr ""
|
|
|
"\n"
|
|
|
" <div>\n"
|
|
|
" <p>您的账户已创建成功</p>\n"
|
|
|
" <div>\n"
|
|
|
" 用户名: %(username)s\n"
|
|
|
" <br/>\n"
|
|
|
" 密码: <a href=\"%(rest_password_url)s?token="
|
|
|
"%(rest_password_token)s\">请点击这里设置密码</a> (这个链接有效期1小时, 超过时"
|
|
|
"间您可以 <a href=\"%(forget_password_url)s?email=%(email)s\">重新申请</a>)\n"
|
|
|
" </div>\n"
|
|
|
" <div>\n"
|
|
|
" <p>---</p>\n"
|
|
|
" <a href=\"%(login_url)s\">直接登录</a>\n"
|
|
|
" </div>\n"
|
|
|
" </div>\n"
|
|
|
" "
|
|
|
|
|
|
#: users/utils.py:57
|
|
|
msgid "Create account successfully"
|
|
|
msgstr "创建账户成功"
|
|
|
|
|
|
#: users/utils.py:61
|
|
|
#, python-format
|
|
|
msgid "Hello %(name)s"
|
|
|
msgstr "您好 %(name)s"
|
|
|
|
|
|
#: users/views/profile/otp.py:122 users/views/profile/otp.py:161
|
|
|
#: users/views/profile/otp.py:181
|
|
|
msgid "MFA code invalid, or ntp sync server time"
|
|
|
msgstr "MFA验证码不正确,或者服务器端时间不对"
|
|
|
|
|
|
#: users/views/profile/otp.py:205
|
|
|
msgid "MFA enable success"
|
|
|
msgstr "多因子认证启用成功"
|
|
|
|
|
|
#: users/views/profile/otp.py:206
|
|
|
msgid "MFA enable success, return login page"
|
|
|
msgstr "多因子认证启用成功,返回到登录页面"
|
|
|
|
|
|
#: users/views/profile/otp.py:208
|
|
|
msgid "MFA disable success"
|
|
|
msgstr "多因子认证禁用成功"
|
|
|
|
|
|
#: users/views/profile/otp.py:209
|
|
|
msgid "MFA disable success, return login page"
|
|
|
msgstr "多因子认证禁用成功,返回登录页面"
|
|
|
|
|
|
#: users/views/profile/password.py:32 users/views/profile/password.py:36
|
|
|
msgid "Password invalid"
|
|
|
msgstr "用户名或密码无效"
|
|
|
|
|
|
#: users/views/profile/pubkey.py:38
|
|
|
msgid "Public key update"
|
|
|
msgstr "密钥更新"
|
|
|
|
|
|
#: users/views/profile/reset.py:40
|
|
|
msgid "Send reset password message"
|
|
|
msgstr "发送重置密码邮件"
|
|
|
|
|
|
#: users/views/profile/reset.py:41
|
|
|
msgid "Send reset password mail success, login your mail box and follow it "
|
|
|
msgstr ""
|
|
|
"发送重置邮件成功, 请登录邮箱查看, 按照提示操作 (如果没收到,请等待3-5分钟)"
|
|
|
|
|
|
#: users/views/profile/reset.py:52
|
|
|
msgid "Email address invalid, please input again"
|
|
|
msgstr "邮箱地址错误,重新输入"
|
|
|
|
|
|
#: users/views/profile/reset.py:58
|
|
|
msgid ""
|
|
|
"The user is from {}, please go to the corresponding system to change the "
|
|
|
"password"
|
|
|
msgstr "用户来自 {} 请去相应系统修改密码"
|
|
|
|
|
|
#: users/views/profile/reset.py:84 users/views/profile/reset.py:95
|
|
|
msgid "Token invalid or expired"
|
|
|
msgstr "Token错误或失效"
|
|
|
|
|
|
#: users/views/profile/reset.py:100
|
|
|
msgid "User auth from {}, go there change password"
|
|
|
msgstr "用户认证源来自 {}, 请去相应系统修改密码"
|
|
|
|
|
|
#: users/views/profile/reset.py:107
|
|
|
msgid "* Your password does not meet the requirements"
|
|
|
msgstr "* 您的密码不符合要求"
|
|
|
|
|
|
#: users/views/profile/reset.py:113
|
|
|
msgid "* The new password cannot be the last {} passwords"
|
|
|
msgstr "* 新密码不能是最近 {} 次的密码"
|
|
|
|
|
|
#: users/views/profile/reset.py:128
|
|
|
msgid "Reset password success, return to login page"
|
|
|
msgstr "重置密码成功,返回到登录页面"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/api/app.py:113
|
|
|
#: xpack/plugins/change_auth_plan/api/asset.py:100
|
|
|
msgid "The parameter 'action' must be [{}]"
|
|
|
msgstr "参数 'action' 必须是 [{}]"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/meta.py:9
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:63
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:119
|
|
|
msgid "Change auth plan"
|
|
|
msgstr "改密计划"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:41
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:90
|
|
|
msgid "Application change auth plan"
|
|
|
msgstr "应用改密计划执行"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:94
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:146
|
|
|
msgid "Application change auth plan execution"
|
|
|
msgstr "应用改密计划执行"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:139
|
|
|
msgid "App"
|
|
|
msgstr "应用"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/app.py:151
|
|
|
msgid "Application change auth plan task"
|
|
|
msgstr "用用改密计划任务"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:30
|
|
|
msgid "Append SSH KEY"
|
|
|
msgstr "追加"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:31
|
|
|
msgid "Empty and append SSH KEY"
|
|
|
msgstr "清空所有并添加"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:32
|
|
|
msgid "Replace (The key generated by JumpServer) "
|
|
|
msgstr "替换 (由 JumpServer 生成的密钥)"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:50
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:34
|
|
|
msgid "SSH Key strategy"
|
|
|
msgstr "SSH 密钥策略"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:130
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:206
|
|
|
msgid "Change auth plan execution"
|
|
|
msgstr "改密计划执行"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/asset.py:213
|
|
|
msgid "Change auth plan task"
|
|
|
msgstr "改密计划任务"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:24
|
|
|
msgid "Custom password"
|
|
|
msgstr "自定义密码"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:25
|
|
|
msgid "All assets use the same random password"
|
|
|
msgstr "使用相同的随机密码"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:26
|
|
|
msgid "All assets use different random password"
|
|
|
msgstr "使用不同的随机密码"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:36
|
|
|
msgid "Password rules"
|
|
|
msgstr "密码规则"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:100
|
|
|
msgid "Manual trigger"
|
|
|
msgstr "手动触发"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:101
|
|
|
msgid "Timing trigger"
|
|
|
msgstr "定时触发"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:111
|
|
|
msgid "Change auth plan snapshot"
|
|
|
msgstr "改密计划快照"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:118
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:70
|
|
|
msgid "Trigger mode"
|
|
|
msgstr "触发模式"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:173
|
|
|
msgid "Ready"
|
|
|
msgstr "准备"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:174
|
|
|
msgid "Preflight check"
|
|
|
msgstr "改密前的校验"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:175
|
|
|
msgid "Change auth"
|
|
|
msgstr "执行改密"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:176
|
|
|
msgid "Verify auth"
|
|
|
msgstr "验证密码/密钥"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:177
|
|
|
msgid "Keep auth"
|
|
|
msgstr "保存密码/密钥"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/models/base.py:185
|
|
|
msgid "Step"
|
|
|
msgstr "步骤"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:31
|
|
|
msgid "Change Password"
|
|
|
msgstr "更改密码"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/serializers/asset.py:32
|
|
|
msgid "Change SSH Key"
|
|
|
msgstr "修改 SSH Key"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:43
|
|
|
msgid "Run times"
|
|
|
msgstr "执行次数"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:54
|
|
|
msgid "* Please enter the correct password length"
|
|
|
msgstr "* 请输入正确的密码长度"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/serializers/base.py:57
|
|
|
msgid "* Password length range 6-30 bits"
|
|
|
msgstr "* 密码长度范围 6-30 位"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/task_handlers/base/handler.py:248
|
|
|
msgid "Invalid/incorrect password"
|
|
|
msgstr "无效/错误 密码"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/task_handlers/base/handler.py:250
|
|
|
msgid "Failed to connect to the host"
|
|
|
msgstr "连接主机失败"
|
|
|
|
|
|
#: xpack/plugins/change_auth_plan/task_handlers/base/handler.py:252
|
|
|
msgid "Data could not be sent to remote"
|
|
|
msgstr "无法将数据发送到远程"
|
|
|
|
|
|
#: xpack/plugins/cloud/api.py:38
|
|
|
msgid "Test connection successful"
|
|
|
msgstr "测试成功"
|
|
|
|
|
|
#: xpack/plugins/cloud/api.py:40
|
|
|
msgid "Test connection failed: {}"
|
|
|
msgstr "测试连接失败:{}"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:8
|
|
|
msgid "Alibaba Cloud"
|
|
|
msgstr "阿里云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:9
|
|
|
msgid "AWS (International)"
|
|
|
msgstr "AWS (国际)"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:10
|
|
|
msgid "AWS (China)"
|
|
|
msgstr "AWS (中国)"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:11
|
|
|
msgid "Azure (China)"
|
|
|
msgstr "Azure (中国)"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:12
|
|
|
msgid "Azure (International)"
|
|
|
msgstr "Azure (国际)"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:13
|
|
|
msgid "Huawei Cloud"
|
|
|
msgstr "华为云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:14
|
|
|
msgid "Tencent Cloud"
|
|
|
msgstr "腾讯云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:15
|
|
|
msgid "VMware"
|
|
|
msgstr ""
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:16 xpack/plugins/cloud/providers/nutanix.py:13
|
|
|
msgid "Nutanix"
|
|
|
msgstr ""
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:17
|
|
|
msgid "Huawei Private Cloud"
|
|
|
msgstr "华为私有云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:18
|
|
|
msgid "Qingyun Private Cloud"
|
|
|
msgstr "青云私有云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:19
|
|
|
msgid "Google Cloud Platform"
|
|
|
msgstr "谷歌云"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:23
|
|
|
msgid "Instance name"
|
|
|
msgstr "实例名称"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:24
|
|
|
msgid "Instance name and Partial IP"
|
|
|
msgstr "实例名称和部分IP"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:29
|
|
|
msgid "Succeed"
|
|
|
msgstr "成功"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:33
|
|
|
msgid "Unsync"
|
|
|
msgstr "未同步"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:34
|
|
|
msgid "New Sync"
|
|
|
msgstr "新同步"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:35
|
|
|
msgid "Synced"
|
|
|
msgstr "已同步"
|
|
|
|
|
|
#: xpack/plugins/cloud/const.py:36
|
|
|
msgid "Released"
|
|
|
msgstr "已释放"
|
|
|
|
|
|
#: xpack/plugins/cloud/meta.py:9
|
|
|
msgid "Cloud center"
|
|
|
msgstr "云管中心"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:30
|
|
|
msgid "Provider"
|
|
|
msgstr "云服务商"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:39
|
|
|
msgid "Cloud account"
|
|
|
msgstr "云账号"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:85 xpack/plugins/cloud/serializers/task.py:37
|
|
|
msgid "Regions"
|
|
|
msgstr "地域"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:88
|
|
|
msgid "Hostname strategy"
|
|
|
msgstr "主机名策略"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:97 xpack/plugins/cloud/serializers/task.py:66
|
|
|
msgid "Unix admin user"
|
|
|
msgstr "Unix 管理员"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:101 xpack/plugins/cloud/serializers/task.py:67
|
|
|
msgid "Windows admin user"
|
|
|
msgstr "Windows 管理员"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:107 xpack/plugins/cloud/serializers/task.py:45
|
|
|
msgid "IP network segment group"
|
|
|
msgstr "IP网段组"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:110 xpack/plugins/cloud/serializers/task.py:70
|
|
|
msgid "Always update"
|
|
|
msgstr "总是更新"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:116
|
|
|
msgid "Date last sync"
|
|
|
msgstr "最后同步日期"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:127 xpack/plugins/cloud/models.py:168
|
|
|
msgid "Sync instance task"
|
|
|
msgstr "同步实例任务"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:179 xpack/plugins/cloud/models.py:224
|
|
|
msgid "Date sync"
|
|
|
msgstr "同步日期"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:204
|
|
|
msgid "Sync task"
|
|
|
msgstr "同步任务"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:208
|
|
|
msgid "Sync instance task history"
|
|
|
msgstr "同步实例任务历史"
|
|
|
|
|
|
#: xpack/plugins/cloud/models.py:211
|
|
|
msgid "Instance"
|
|
|
msgstr "实例"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:17
|
|
|
msgid "China (Beijing)"
|
|
|
msgstr "中国(北京)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:18
|
|
|
msgid "China (Ningxia)"
|
|
|
msgstr "中国(宁夏)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:21
|
|
|
msgid "US East (Ohio)"
|
|
|
msgstr "美国东部(俄亥俄州)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:22
|
|
|
msgid "US East (N. Virginia)"
|
|
|
msgstr "美国东部(弗吉尼亚北部)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:23
|
|
|
msgid "US West (N. California)"
|
|
|
msgstr "美国西部(加利福尼亚北部)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:24
|
|
|
msgid "US West (Oregon)"
|
|
|
msgstr "美国西部(俄勒冈)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:25
|
|
|
msgid "Africa (Cape Town)"
|
|
|
msgstr "非洲(开普敦)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:26
|
|
|
msgid "Asia Pacific (Hong Kong)"
|
|
|
msgstr "亚太地区(香港)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:27
|
|
|
msgid "Asia Pacific (Mumbai)"
|
|
|
msgstr "亚太地区(孟买)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:28
|
|
|
msgid "Asia Pacific (Osaka-Local)"
|
|
|
msgstr "亚太区域(大阪当地)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:29
|
|
|
msgid "Asia Pacific (Seoul)"
|
|
|
msgstr "亚太区域(首尔)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:30
|
|
|
msgid "Asia Pacific (Singapore)"
|
|
|
msgstr "亚太区域(新加坡)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:31
|
|
|
msgid "Asia Pacific (Sydney)"
|
|
|
msgstr "亚太区域(悉尼)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:32
|
|
|
msgid "Asia Pacific (Tokyo)"
|
|
|
msgstr "亚太区域(东京)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:33
|
|
|
msgid "Canada (Central)"
|
|
|
msgstr "加拿大(中部)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:34
|
|
|
msgid "Europe (Frankfurt)"
|
|
|
msgstr "欧洲(法兰克福)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:35
|
|
|
msgid "Europe (Ireland)"
|
|
|
msgstr "欧洲(爱尔兰)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:36
|
|
|
msgid "Europe (London)"
|
|
|
msgstr "欧洲(伦敦)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:37
|
|
|
msgid "Europe (Milan)"
|
|
|
msgstr "欧洲(米兰)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:38
|
|
|
msgid "Europe (Paris)"
|
|
|
msgstr "欧洲(巴黎)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:39
|
|
|
msgid "Europe (Stockholm)"
|
|
|
msgstr "欧洲(斯德哥尔摩)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:40
|
|
|
msgid "Middle East (Bahrain)"
|
|
|
msgstr "中东(巴林)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/aws_international.py:41
|
|
|
msgid "South America (São Paulo)"
|
|
|
msgstr "南美洲(圣保罗)"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:35
|
|
|
msgid "AF-Johannesburg"
|
|
|
msgstr "非洲-约翰内斯堡"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:36
|
|
|
msgid "CN North-Beijing4"
|
|
|
msgstr "华北-北京4"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:37
|
|
|
msgid "CN North-Beijing1"
|
|
|
msgstr "华北-北京1"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:38
|
|
|
msgid "CN East-Shanghai2"
|
|
|
msgstr "华东-上海2"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:39
|
|
|
msgid "CN East-Shanghai1"
|
|
|
msgstr "华东-上海1"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:40
|
|
|
msgid "CN South-Guangzhou"
|
|
|
msgstr "华南-广州"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:41
|
|
|
msgid "LA-Mexico City1"
|
|
|
msgstr "拉美-墨西哥城一"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:42
|
|
|
msgid "LA-Santiago"
|
|
|
msgstr "拉美-圣地亚哥"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:43
|
|
|
msgid "LA-Sao Paulo1"
|
|
|
msgstr "拉美-圣保罗一"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:44
|
|
|
msgid "EU-Paris"
|
|
|
msgstr "欧洲-巴黎"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:45
|
|
|
msgid "CN Southwest-Guiyang1"
|
|
|
msgstr "西南-贵阳1"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:46
|
|
|
msgid "AP-Bangkok"
|
|
|
msgstr "亚太-曼谷"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:47
|
|
|
msgid "AP-Singapore"
|
|
|
msgstr "亚太-新加坡"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:48
|
|
|
msgid "CN-Hong Kong"
|
|
|
msgstr "中国-香港"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:50
|
|
|
msgid "CN Northeast-Dalian"
|
|
|
msgstr "华北-大连"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:51
|
|
|
msgid "CN North-Ulanqab1"
|
|
|
msgstr "华北-乌兰察布一"
|
|
|
|
|
|
#: xpack/plugins/cloud/providers/huaweicloud.py:52
|
|
|
msgid "CN South-Guangzhou-InvitationOnly"
|
|
|
msgstr "华南-广州-友好用户环境"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:13
|
|
|
msgid "AccessKey ID"
|
|
|
msgstr ""
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:16
|
|
|
msgid "AccessKey Secret"
|
|
|
msgstr ""
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:23
|
|
|
msgid "Client ID"
|
|
|
msgstr "客户端 ID"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:29
|
|
|
msgid "Tenant ID"
|
|
|
msgstr "租户 ID"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:32
|
|
|
msgid "Subscription ID"
|
|
|
msgstr "订阅 ID"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:87
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:92
|
|
|
msgid "API Endpoint"
|
|
|
msgstr "API 端点"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:98
|
|
|
msgid "Service account key"
|
|
|
msgstr "账户密钥"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/account_attrs.py:99
|
|
|
msgid "The file is in JSON format"
|
|
|
msgstr "JSON 格式的文件"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/task.py:29
|
|
|
msgid ""
|
|
|
"The IP address that is first matched to will be used as the IP of the "
|
|
|
"created asset. <br>The default * indicates a random match. <br>Format for "
|
|
|
"comma-delimited string, Such as: 192.168.1.0/24, 10.1.1.1-10.1.1.20"
|
|
|
msgstr ""
|
|
|
"第一个匹配到的 IP 地址将被用作创建的资产的 IP。<br> 默认值 * 表示随机匹配。"
|
|
|
"<br> 格式为以逗号分隔的字符串,例如:192.168.1.0/24,10.1.1.1-10.1.1.20"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/task.py:35
|
|
|
msgid "History count"
|
|
|
msgstr "执行次数"
|
|
|
|
|
|
#: xpack/plugins/cloud/serializers/task.py:36
|
|
|
msgid "Instance count"
|
|
|
msgstr "实例个数"
|
|
|
|
|
|
#: xpack/plugins/cloud/utils.py:65
|
|
|
msgid "Account unavailable"
|
|
|
msgstr "账户无效"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/meta.py:11
|
|
|
msgid "Gathered user"
|
|
|
msgstr "收集用户"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/models.py:39
|
|
|
msgid "Gather user task"
|
|
|
msgstr "收集用户任务"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/models.py:73
|
|
|
msgid "Task"
|
|
|
msgstr "任务"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/models.py:85
|
|
|
msgid "gather user task execution"
|
|
|
msgstr "收集用户执行"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/models.py:91
|
|
|
msgid "Assets is empty, please change nodes"
|
|
|
msgstr "资产为空,请更改节点"
|
|
|
|
|
|
#: xpack/plugins/gathered_user/serializers.py:21
|
|
|
msgid "Executed times"
|
|
|
msgstr "执行次数"
|
|
|
|
|
|
#: xpack/plugins/interface/api.py:68
|
|
|
msgid "It is already in the default setting state!"
|
|
|
msgstr "当前已经是初始化状态!"
|
|
|
|
|
|
#: xpack/plugins/interface/api.py:72
|
|
|
msgid "Restore default successfully."
|
|
|
msgstr "恢复默认成功!"
|
|
|
|
|
|
#: xpack/plugins/interface/meta.py:10
|
|
|
msgid "Interface settings"
|
|
|
msgstr "界面设置"
|
|
|
|
|
|
#: xpack/plugins/interface/models.py:15
|
|
|
msgid "Title of login page"
|
|
|
msgstr "登录页面标题"
|
|
|
|
|
|
#: xpack/plugins/interface/models.py:19
|
|
|
msgid "Image of login page"
|
|
|
msgstr "登录页面图片"
|
|
|
|
|
|
#: xpack/plugins/interface/models.py:23
|
|
|
msgid "Website icon"
|
|
|
msgstr "网站图标"
|
|
|
|
|
|
#: xpack/plugins/interface/models.py:27
|
|
|
msgid "Logo of management page"
|
|
|
msgstr "管理页面logo"
|
|
|
|
|
|
#: xpack/plugins/interface/models.py:31
|
|
|
msgid "Logo of logout page"
|
|
|
msgstr "退出页面logo"
|
|
|
|
|
|
#: xpack/plugins/license/api.py:37
|
|
|
msgid "License import successfully"
|
|
|
msgstr "许可证导入成功"
|
|
|
|
|
|
#: xpack/plugins/license/api.py:38
|
|
|
msgid "License is invalid"
|
|
|
msgstr "无效的许可证"
|
|
|
|
|
|
#: xpack/plugins/license/meta.py:11 xpack/plugins/license/models.py:127
|
|
|
msgid "License"
|
|
|
msgstr "许可证"
|
|
|
|
|
|
#: xpack/plugins/license/models.py:71
|
|
|
msgid "Standard edition"
|
|
|
msgstr "标准版"
|
|
|
|
|
|
#: xpack/plugins/license/models.py:73
|
|
|
msgid "Enterprise edition"
|
|
|
msgstr "企业版"
|
|
|
|
|
|
#: xpack/plugins/license/models.py:75
|
|
|
msgid "Ultimate edition"
|
|
|
msgstr "旗舰版"
|
|
|
|
|
|
#: xpack/plugins/license/models.py:77
|
|
|
msgid "Community edition"
|
|
|
msgstr "社区版"
|
|
|
|
|
|
#~ msgid "OpenID"
|
|
|
#~ msgstr "OpenID"
|
|
|
|
|
|
#~ msgid "CAS"
|
|
|
#~ msgstr "CAS"
|
|
|
|
|
|
#~ msgid "Only "
|
|
|
#~ msgstr "仅能从用户配置来源登录"
|