Merge pull request #11182 from jumpserver/pr@dev@perf_telnet_prompt

perf: 修改 telnet 平台 setting
pull/11186/head
老广 2023-08-02 18:27:10 +08:00 committed by GitHub
commit 9691125c7a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 411 additions and 267 deletions

View File

@ -81,6 +81,26 @@ class Protocol(ChoicesMixin, models.TextChoices):
cls.telnet: {
'port': 23,
'secret_types': ['password'],
'setting': {
'username_prompt': {
'type': 'str',
'default': 'username:|login:',
'label': _('Username prompt'),
'help_text': _('We will send username when we see this prompt')
},
'password_prompt': {
'type': 'str',
'default': 'password:',
'label': _('Password prompt'),
'help_text': _('We will send password when we see this prompt')
},
'success_prompt': {
'type': 'str',
'default': 'success|成功|#|>|\$',
'label': _('Success prompt'),
'help_text': _('We will consider login success when we see this prompt')
}
}
},
cls.winrm: {
'port': 5985,

View File

@ -0,0 +1,33 @@
# Generated by Django 4.1.10 on 2023-08-02 09:40
from django.db import migrations
import json
def migrate_telnet_regex(apps, schema_editor):
setting_cls = apps.get_model('settings', 'Setting')
setting = setting_cls.objects.filter(name='TERMINAL_TELNET_REGEX').first()
if not setting:
print("Not found telnet regex setting, skip")
return
try:
value = json.loads(setting.value)
except Exception:
print("Invalid telnet regex setting, skip")
return
platform_protocol_cls = apps.get_model('assets', 'PlatformProtocol')
telnets = platform_protocol_cls.objects.filter(name='telnet')
if telnets.count() > 0:
telnets.update(setting={'success_prompt': value})
print("Migrate telnet regex setting success: ", telnets.count())
class Migration(migrations.Migration):
dependencies = [
('assets', '0122_auto_20230801_1940'),
]
operations = [
migrations.RunPython(migrate_telnet_regex)
]

View File

@ -449,7 +449,6 @@ class Config(dict):
'TERMINAL_ASSET_LIST_PAGE_SIZE': 'auto',
'TERMINAL_SESSION_KEEP_DURATION': 200,
'TERMINAL_HOST_KEY': '',
'TERMINAL_TELNET_REGEX': '',
'TERMINAL_COMMAND_STORAGE': {},
# Luna 页面
# 默认图形化分辨率
@ -554,6 +553,7 @@ class Config(dict):
'TICKET_AUTHORIZE_DEFAULT_TIME': 7,
'TICKET_AUTHORIZE_DEFAULT_TIME_UNIT': 'day',
'PERIOD_TASK_ENABLED': True,
'TERMINAL_TELNET_REGEX': '',
# 导航栏 帮助
'HELP_DOCUMENT_URL': 'https://docs.jumpserver.org/zh/v3/',

View File

@ -82,7 +82,7 @@ TERMINAL_ASSET_LIST_PAGE_SIZE = CONFIG.TERMINAL_ASSET_LIST_PAGE_SIZE
TERMINAL_SESSION_KEEP_DURATION = CONFIG.TERMINAL_SESSION_KEEP_DURATION
TERMINAL_HOST_KEY = CONFIG.TERMINAL_HOST_KEY
TERMINAL_HEADER_TITLE = CONFIG.TERMINAL_HEADER_TITLE
TERMINAL_TELNET_REGEX = CONFIG.TERMINAL_TELNET_REGEX
# TERMINAL_TELNET_REGEX = CONFIG.TERMINAL_TELNET_REGEX
# 默认图形化分辨率
TERMINAL_GRAPHICAL_RESOLUTION = CONFIG.TERMINAL_GRAPHICAL_RESOLUTION

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:538beabe7c224b203bbc0ebaf191509a8f407f6b3e8194038fc203bde10d6d5a
size 150250
oid sha256:d9e79f70d055fa4d3fda971820bcd0eb186a8806d91346c7038add4ee89d647a
size 151115

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-31 16:39+0800\n"
"POT-Creation-Date: 2023-08-02 16:52+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -45,7 +45,7 @@ msgid "Access key"
msgstr "アクセスキー"
#: accounts/const/account.py:9 assets/models/_user.py:48
#: authentication/models/sso_token.py:14
#: authentication/models/sso_token.py:14 settings/serializers/vault.py:19
msgid "Token"
msgstr "トークン"
@ -53,7 +53,7 @@ msgstr "トークン"
msgid "API key"
msgstr ""
#: accounts/const/account.py:14 common/db/fields.py:244
#: accounts/const/account.py:14 common/db/fields.py:235
#: settings/serializers/terminal.py:14
msgid "All"
msgstr "すべて"
@ -187,10 +187,20 @@ msgstr "作成してプッシュ"
msgid "Only create"
msgstr "作成のみ"
#: accounts/models/account.py:49
#: accounts/const/vault.py:8
#, fuzzy
#| msgid "Local"
msgid "Local Vault"
msgstr "ローカル"
#: accounts/const/vault.py:9
msgid "HCP Vault"
msgstr ""
#: accounts/models/account.py:50
#: accounts/models/automations/gather_account.py:16
#: accounts/serializers/account/account.py:200
#: accounts/serializers/account/account.py:237
#: accounts/serializers/account/account.py:245
#: accounts/serializers/account/gathered_account.py:10
#: accounts/serializers/automations/change_secret.py:112
#: accounts/serializers/automations/change_secret.py:132
@ -207,29 +217,29 @@ msgstr "作成のみ"
msgid "Asset"
msgstr "資産"
#: accounts/models/account.py:53 accounts/models/account.py:126
#: accounts/serializers/account/account.py:208
#: accounts/serializers/account/account.py:247
#: accounts/models/account.py:54 accounts/models/account.py:127
#: accounts/serializers/account/account.py:207
#: accounts/serializers/account/account.py:255
#: accounts/serializers/account/template.py:16
#: authentication/serializers/connect_token_secret.py:49
msgid "Su from"
msgstr "から切り替え"
#: accounts/models/account.py:55 settings/serializers/auth/cas.py:20
#: accounts/models/account.py:56 settings/serializers/auth/cas.py:20
#: settings/serializers/auth/feishu.py:20 terminal/models/applet/applet.py:34
msgid "Version"
msgstr "バージョン"
#: accounts/models/account.py:57 accounts/serializers/account/account.py:203
#: accounts/models/account.py:58 accounts/serializers/account/account.py:202
#: users/models/user.py:804
msgid "Source"
msgstr "ソース"
#: accounts/models/account.py:58
#: accounts/models/account.py:59
msgid "Source ID"
msgstr "ソース ID"
#: accounts/models/account.py:61
#: accounts/models/account.py:62
#: accounts/serializers/automations/change_secret.py:113
#: accounts/serializers/automations/change_secret.py:133
#: acls/serializers/base.py:124 assets/serializers/asset/common.py:125
@ -242,35 +252,35 @@ msgstr "ソース ID"
msgid "Account"
msgstr "アカウント"
#: accounts/models/account.py:67
#: accounts/models/account.py:68
msgid "Can view asset account secret"
msgstr "資産アカウントの秘密を表示できます"
#: accounts/models/account.py:68
#: accounts/models/account.py:69
msgid "Can view asset history account"
msgstr "資産履歴アカウントを表示できます"
#: accounts/models/account.py:69
#: accounts/models/account.py:70
msgid "Can view asset history account secret"
msgstr "資産履歴アカウントパスワードを表示できます"
#: accounts/models/account.py:70
#: accounts/models/account.py:71
msgid "Can verify account"
msgstr "アカウントを確認できます"
#: accounts/models/account.py:71
#: accounts/models/account.py:72
msgid "Can push account"
msgstr "アカウントをプッシュできます"
#: accounts/models/account.py:130
#: accounts/models/account.py:131
msgid "Account template"
msgstr "アカウント テンプレート"
#: accounts/models/account.py:135
#: accounts/models/account.py:136
msgid "Can view asset account template secret"
msgstr "アセット アカウント テンプレートのパスワードを表示できます"
#: accounts/models/account.py:136
#: accounts/models/account.py:137
msgid "Can change asset account template secret"
msgstr "アセット アカウント テンプレートのパスワードを変更できます"
@ -323,7 +333,7 @@ msgstr "理由"
#: accounts/models/automations/backup_account.py:99
#: accounts/serializers/automations/change_secret.py:111
#: accounts/serializers/automations/change_secret.py:134
#: ops/serializers/job.py:56 terminal/serializers/session.py:43
#: ops/serializers/job.py:56 terminal/serializers/session.py:44
msgid "Is success"
msgstr "成功は"
@ -368,7 +378,7 @@ msgid "Can add push account execution"
msgstr "プッシュ アカウントの作成の実行"
#: accounts/models/automations/change_secret.py:18 accounts/models/base.py:36
#: accounts/serializers/account/account.py:419
#: accounts/serializers/account/account.py:427
#: accounts/serializers/account/base.py:16
#: accounts/serializers/automations/change_secret.py:46
#: authentication/serializers/connect_token_secret.py:41
@ -377,8 +387,8 @@ msgid "Secret type"
msgstr "鍵の種類"
#: accounts/models/automations/change_secret.py:20
#: accounts/models/automations/change_secret.py:89 accounts/models/base.py:38
#: accounts/serializers/account/base.py:19
#: accounts/models/automations/change_secret.py:89
#: accounts/models/mixins/vault.py:48 accounts/serializers/account/base.py:19
#: authentication/models/temp_token.py:10
#: authentication/templates/authentication/_access_key_modal.html:31
#: settings/serializers/auth/radius.py:19
@ -418,7 +428,7 @@ msgid "Date finished"
msgstr "終了日"
#: accounts/models/automations/change_secret.py:93
#: accounts/serializers/account/account.py:239 assets/const/automation.py:8
#: accounts/serializers/account/account.py:247 assets/const/automation.py:8
#: authentication/views/base.py:26 authentication/views/base.py:27
#: authentication/views/base.py:28 common/const/choices.py:20
msgid "Error"
@ -497,7 +507,7 @@ msgstr "アカウントの確認"
#: assets/serializers/platform.py:223
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
#: ops/models/adhoc.py:20 ops/models/celery.py:15 ops/models/celery.py:57
#: ops/models/job.py:94 ops/models/playbook.py:23 ops/serializers/job.py:20
#: ops/models/job.py:94 ops/models/playbook.py:28 ops/serializers/job.py:20
#: orgs/models.py:80 perms/models/asset_permission.py:56 rbac/models/role.py:29
#: settings/models.py:32 settings/serializers/sms.py:6
#: terminal/models/applet/applet.py:32 terminal/models/component/endpoint.py:12
@ -509,11 +519,11 @@ msgstr "アカウントの確認"
msgid "Name"
msgstr "名前"
#: accounts/models/base.py:39
#: accounts/models/base.py:38
msgid "Privileged"
msgstr "特権アカウント"
#: accounts/models/base.py:40 assets/models/asset/common.py:156
#: accounts/models/base.py:39 assets/models/asset/common.py:156
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
#: assets/models/label.py:22
#: authentication/serializers/connect_token_secret.py:114
@ -588,8 +598,8 @@ msgstr "カテゴリ"
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:112
#: assets/serializers/platform.py:127 audits/serializers.py:49
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:105
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:38
#: terminal/models/component/storage.py:57
#: perms/serializers/user_permission.py:27 settings/serializers/vault.py:13
#: terminal/models/applet/applet.py:38 terminal/models/component/storage.py:57
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
#: terminal/serializers/session.py:20 terminal/serializers/storage.py:226
#: terminal/serializers/storage.py:238 tickets/models/comment.py:26
@ -603,23 +613,22 @@ msgstr "タイプ"
msgid "Asset not found"
msgstr "資産が存在しません"
#: accounts/serializers/account/account.py:201
#: accounts/serializers/account/base.py:64
#: accounts/serializers/account/account.py:236
msgid "Has secret"
msgstr "エスクローされたパスワード"
#: accounts/serializers/account/account.py:238 ops/models/celery.py:60
#: accounts/serializers/account/account.py:246 ops/models/celery.py:60
#: tickets/models/comment.py:13 tickets/models/ticket/general.py:45
#: tickets/models/ticket/general.py:279 tickets/serializers/super_ticket.py:14
#: tickets/serializers/ticket/ticket.py:21
msgid "State"
msgstr "状態"
#: accounts/serializers/account/account.py:240
#: accounts/serializers/account/account.py:248
msgid "Changed"
msgstr "編集済み"
#: accounts/serializers/account/account.py:250
#: accounts/serializers/account/account.py:258
#: accounts/serializers/automations/base.py:22 acls/models/base.py:97
#: assets/models/automations/base.py:19
#: assets/serializers/automations/base.py:20 ops/models/base.py:17
@ -628,27 +637,27 @@ msgstr "編集済み"
msgid "Assets"
msgstr "資産"
#: accounts/serializers/account/account.py:305
#: accounts/serializers/account/account.py:313
msgid "Account already exists"
msgstr "アカウントはすでに存在しています"
#: accounts/serializers/account/account.py:355
#: accounts/serializers/account/account.py:363
#, python-format
msgid "Asset does not support this secret type: %s"
msgstr "アセットはアカウント タイプをサポートしていません: %s"
#: accounts/serializers/account/account.py:387
#: accounts/serializers/account/account.py:395
msgid "Account has exist"
msgstr "アカウントはすでに存在しています"
#: accounts/serializers/account/account.py:420
#: accounts/serializers/account/account.py:428
#: authentication/serializers/connect_token_secret.py:156
#: authentication/templates/authentication/_access_key_modal.html:30
#: perms/models/perm_node.py:21 users/serializers/group.py:31
msgid "ID"
msgstr "ID"
#: accounts/serializers/account/account.py:427 acls/serializers/base.py:116
#: accounts/serializers/account/account.py:435 acls/serializers/base.py:116
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:49
#: audits/models.py:85 audits/models.py:163
#: authentication/models/connection_token.py:32
@ -656,10 +665,10 @@ msgstr "ID"
#: notifications/models/notification.py:12
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:58
#: perms/serializers/permission.py:30 rbac/builtin.py:123
#: rbac/models/rolebinding.py:49 terminal/backends/command/models.py:16
#: terminal/models/session/session.py:29 terminal/models/session/sharing.py:33
#: terminal/notifications.py:156 terminal/notifications.py:205
#: terminal/serializers/command.py:16
#: rbac/models/rolebinding.py:49 rbac/serializers/rolebinding.py:17
#: terminal/backends/command/models.py:16 terminal/models/session/session.py:29
#: terminal/models/session/sharing.py:33 terminal/notifications.py:156
#: terminal/notifications.py:205 terminal/serializers/command.py:16
#: terminal/templates/terminal/_msg_command_warning.html:6
#: terminal/templates/terminal/_msg_session_sharing.html:6
#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:947
@ -667,7 +676,7 @@ msgstr "ID"
msgid "User"
msgstr "ユーザー"
#: accounts/serializers/account/account.py:428
#: accounts/serializers/account/account.py:436
#: authentication/templates/authentication/_access_key_modal.html:33
#: terminal/notifications.py:158 terminal/notifications.py:207
msgid "Date"
@ -698,12 +707,12 @@ msgstr "資産タイプ"
msgid "Key password"
msgstr "キーパスワード"
#: accounts/serializers/account/base.py:80
#: accounts/serializers/account/base.py:78
#: assets/serializers/asset/common.py:311
msgid "Spec info"
msgstr "特別情報"
#: accounts/serializers/account/base.py:82
#: accounts/serializers/account/base.py:80
msgid ""
"Tip: If no username is required for authentication, fill in `null`, If AD "
"account, like `username@domain`"
@ -769,6 +778,12 @@ msgstr "資産の口座番号を収集する"
msgid "Push accounts to assets"
msgstr "アカウントをアセットにプッシュ:"
#: accounts/tasks/vault.py:15
#, fuzzy
#| msgid "Sync instance detail"
msgid "Sync secret to vault"
msgstr "同期インスタンスの詳細"
#: accounts/tasks/verify_account.py:49
msgid "Verify asset account availability"
msgstr "アセット アカウントの可用性を確認する"
@ -777,19 +792,19 @@ msgstr "アセット アカウントの可用性を確認する"
msgid "Verify accounts connectivity"
msgstr "アカウント接続のテスト"
#: accounts/utils.py:43
#: accounts/utils.py:41
msgid "Password can not contains `{{` "
msgstr "パスワードには '{{' を含まない"
#: accounts/utils.py:46
#: accounts/utils.py:44
msgid "Password can not contains `'` "
msgstr "パスワードには `'` を含まない"
#: accounts/utils.py:48
#: accounts/utils.py:46
msgid "Password can not contains `\"` "
msgstr "パスワードには `\"` を含まない"
#: accounts/utils.py:54
#: accounts/utils.py:52
msgid "private key invalid or passphrase error"
msgstr "秘密鍵が無効またはpassphraseエラー"
@ -1083,14 +1098,15 @@ msgstr "無効"
msgid "Basic"
msgstr "基本"
#: assets/const/base.py:35 assets/const/protocol.py:201
#: assets/const/base.py:35 assets/const/protocol.py:221
#: assets/models/asset/web.py:13
msgid "Script"
msgstr "脚本"
#: assets/const/category.py:10 assets/models/asset/host.py:8
#: settings/serializers/auth/radius.py:16 settings/serializers/auth/sms.py:67
#: terminal/models/component/endpoint.py:13 terminal/serializers/applet.py:17
#: settings/serializers/vault.py:16 terminal/models/component/endpoint.py:13
#: terminal/serializers/applet.py:17
#: xpack/plugins/cloud/serializers/account_attrs.py:72
msgid "Host"
msgstr "ホスト"
@ -1183,41 +1199,65 @@ msgstr "接続に使用するセキュリティ レイヤー"
msgid "AD domain"
msgstr "AD ドメイン"
#: assets/const/protocol.py:92 assets/models/asset/database.py:10
#: assets/const/protocol.py:88
msgid "Username prompt"
msgstr "ユーザー名プロンプト"
#: assets/const/protocol.py:89
msgid "We will send username when we see this prompt"
msgstr "このプロンプトが表示されたらユーザー名を送信します"
#: assets/const/protocol.py:94
msgid "Password prompt"
msgstr "パスワードプロンプト"
#: assets/const/protocol.py:95
msgid "We will send password when we see this prompt"
msgstr "このプロンプトが表示されたらパスワードを送信します"
#: assets/const/protocol.py:100
msgid "Success prompt"
msgstr "成功プロンプト"
#: assets/const/protocol.py:101
msgid "We will consider login success when we see this prompt"
msgstr "このプロンプトが表示されたらログイン成功とみなします"
#: assets/const/protocol.py:112 assets/models/asset/database.py:10
#: settings/serializers/email.py:37
msgid "Use SSL"
msgstr "SSLの使用"
#: assets/const/protocol.py:127
#: assets/const/protocol.py:147
msgid "SYSDBA"
msgstr "SYSDBA"
#: assets/const/protocol.py:128
#: assets/const/protocol.py:148
msgid "Connect as SYSDBA"
msgstr "SYSDBA として接続"
#: assets/const/protocol.py:157
#: assets/const/protocol.py:177
msgid "Auth username"
msgstr "ユーザー名で認証する"
#: assets/const/protocol.py:178 assets/models/asset/web.py:9
#: assets/const/protocol.py:198 assets/models/asset/web.py:9
#: assets/serializers/asset/info/spec.py:16
msgid "Autofill"
msgstr "自動充填"
#: assets/const/protocol.py:186 assets/models/asset/web.py:10
#: assets/const/protocol.py:206 assets/models/asset/web.py:10
msgid "Username selector"
msgstr "ユーザー名ピッカー"
#: assets/const/protocol.py:191 assets/models/asset/web.py:11
#: assets/const/protocol.py:211 assets/models/asset/web.py:11
msgid "Password selector"
msgstr "パスワードセレクター"
#: assets/const/protocol.py:196 assets/models/asset/web.py:12
#: assets/const/protocol.py:216 assets/models/asset/web.py:12
msgid "Submit selector"
msgstr "ボタンセレクターを確認する"
#: assets/const/protocol.py:219
#: assets/const/protocol.py:239
msgid "API mode"
msgstr "APIモード"
@ -1244,7 +1284,7 @@ msgstr "SSHパブリックキー"
#: assets/models/_user.py:27 assets/models/cmd_filter.py:40
#: assets/models/cmd_filter.py:88 assets/models/group.py:20
#: common/db/models.py:36 ops/models/adhoc.py:26 ops/models/job.py:113
#: ops/models/playbook.py:26 rbac/models/role.py:37 settings/models.py:37
#: ops/models/playbook.py:31 rbac/models/role.py:37 settings/models.py:37
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:250
#: terminal/models/applet/host.py:141 terminal/models/component/endpoint.py:24
#: terminal/models/component/endpoint.py:102
@ -1296,7 +1336,7 @@ msgstr "ユーザーと同じユーザー名"
#: assets/models/_user.py:52 authentication/models/connection_token.py:41
#: authentication/serializers/connect_token_secret.py:111
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:18
#: terminal/serializers/session.py:39 terminal/serializers/storage.py:70
#: terminal/serializers/session.py:40 terminal/serializers/storage.py:70
msgid "Protocol"
msgstr "プロトコル"
@ -1729,8 +1769,8 @@ msgstr "プロトコルが必要です: {}"
msgid "Default database"
msgstr "デフォルト・データベース"
#: assets/serializers/asset/database.py:28 common/db/fields.py:579
#: common/db/fields.py:584 common/serializers/fields.py:104
#: assets/serializers/asset/database.py:28 common/db/fields.py:570
#: common/db/fields.py:575 common/serializers/fields.py:104
#: tickets/serializers/ticket/common.py:58
#: xpack/plugins/cloud/serializers/account_attrs.py:56
#: xpack/plugins/cloud/serializers/account_attrs.py:79
@ -2031,7 +2071,7 @@ msgstr "パスワードを変更する"
#: audits/const.py:35 settings/serializers/terminal.py:6
#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:163
#: terminal/serializers/session.py:46 terminal/serializers/session.py:55
#: terminal/serializers/session.py:47 terminal/serializers/session.py:56
msgid "Terminal"
msgstr "ターミナル"
@ -2674,7 +2714,6 @@ msgid "Connect options"
msgstr "接続アイテム"
#: authentication/models/connection_token.py:44
#: rbac/serializers/rolebinding.py:21
msgid "User display"
msgstr "ユーザー表示"
@ -2890,7 +2929,7 @@ msgstr "コードエラー"
#: authentication/templates/authentication/_msg_reset_password_code.html:9
#: authentication/templates/authentication/_msg_rest_password_success.html:2
#: authentication/templates/authentication/_msg_rest_public_key_success.html:2
#: jumpserver/conf.py:431
#: jumpserver/conf.py:437
#: perms/templates/perms/_msg_item_permissions_expire.html:3
#: perms/templates/perms/_msg_permed_items_expire.html:3
#: tickets/templates/tickets/approve_check_password.html:33
@ -3245,11 +3284,11 @@ msgstr "チャーフィールドへのマーシャルデータ"
msgid "Marshal data to text field"
msgstr "テキストフィールドへのマーシャルデータ"
#: common/db/fields.py:176
#: common/db/fields.py:167
msgid "Encrypt field using Secret Key"
msgstr "Secret Keyを使用したフィールドの暗号化"
#: common/db/fields.py:567
#: common/db/fields.py:558
msgid ""
"Invalid JSON data for JSONManyToManyField, should be like {'type': 'all'} or "
"{'type': 'ids', 'ids': []} or {'type': 'attrs', 'attrs': [{'name': 'ip', "
@ -3259,19 +3298,19 @@ msgstr ""
"'type''ids''ids':[]}或 #タイプ:属性、属性:[名前ip、照合正確、"
"値1.1.1.1"
#: common/db/fields.py:574
#: common/db/fields.py:565
msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\""
msgstr "無効なタイプです。all、ids、またはattrsでなければなりません"
#: common/db/fields.py:577
#: common/db/fields.py:568
msgid "Invalid ids for ids, should be a list"
msgstr "無効なID、リストでなければなりません"
#: common/db/fields.py:582 common/db/fields.py:587
#: common/db/fields.py:573 common/db/fields.py:578
msgid "Invalid attrs, should be a list of dict"
msgstr "無効な属性、dictリストでなければなりません"
#: common/db/fields.py:589
#: common/db/fields.py:580
msgid "Invalid attrs, should be has name and value"
msgstr "名前と値が必要な無効な属性"
@ -3485,11 +3524,11 @@ msgstr "検索のエクスポート: %s"
msgid "User %s view/export secret"
msgstr "ユーザー %s がパスワードを閲覧/導き出しました"
#: jumpserver/conf.py:430
#: jumpserver/conf.py:436
msgid "Create account successfully"
msgstr "アカウントを正常に作成"
#: jumpserver/conf.py:432
#: jumpserver/conf.py:438
msgid "Your account has been created successfully"
msgstr "アカウントが正常に作成されました"
@ -3696,7 +3735,7 @@ msgid "Args"
msgstr "アルグ"
#: ops/models/adhoc.py:25 ops/models/base.py:16 ops/models/base.py:53
#: ops/models/job.py:106 ops/models/job.py:192 ops/models/playbook.py:25
#: ops/models/job.py:106 ops/models/job.py:192 ops/models/playbook.py:30
#: terminal/models/session/sharing.py:24
msgid "Creator"
msgstr "作成者"
@ -3791,11 +3830,11 @@ msgstr "Material を選択してオプションを設定します。"
msgid "Job Execution"
msgstr "ジョブ実行"
#: ops/models/playbook.py:28
#: ops/models/playbook.py:33
msgid "CreateMethod"
msgstr "创建方式"
#: ops/models/playbook.py:29
#: ops/models/playbook.py:34
msgid "VCS URL"
msgstr "VCS URL"
@ -3835,7 +3874,7 @@ msgstr "保存後に実行"
msgid "Job type"
msgstr "タスクの種類"
#: ops/serializers/job.py:57 terminal/serializers/session.py:47
#: ops/serializers/job.py:57 terminal/serializers/session.py:48
msgid "Is finished"
msgstr "終了しました"
@ -3932,14 +3971,14 @@ msgstr "アプリ組織"
#: orgs/mixins/models.py:57 orgs/mixins/serializers.py:25 orgs/models.py:89
#: rbac/const.py:7 rbac/models/rolebinding.py:56
#: rbac/serializers/rolebinding.py:40 settings/serializers/auth/ldap.py:63
#: rbac/serializers/rolebinding.py:44 settings/serializers/auth/ldap.py:63
#: terminal/templates/terminal/_msg_command_warning.html:21
#: terminal/templates/terminal/_msg_session_sharing.html:14
#: tickets/models/ticket/general.py:302 tickets/serializers/ticket/ticket.py:60
msgid "Organization"
msgstr "組織"
#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:23
#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:27
msgid "Org name"
msgstr "組織名"
@ -4079,7 +4118,7 @@ msgstr "ロールはユーザーにバインドされており、破壊するこ
msgid "Internal role, can't be update"
msgstr "内部ロール、更新できません"
#: rbac/api/rolebinding.py:52
#: rbac/api/rolebinding.py:45
msgid "{} at least one system role"
msgstr "{} 少なくとも1つのシステムロール"
@ -4192,11 +4231,7 @@ msgstr "ユーザー数"
msgid "Display name"
msgstr "表示名"
#: rbac/serializers/rolebinding.py:22
msgid "Role display"
msgstr "ロール表示"
#: rbac/serializers/rolebinding.py:56
#: rbac/serializers/rolebinding.py:60
msgid "Has bound this role"
msgstr "この役割をバインドしました"
@ -4275,7 +4310,7 @@ msgid "View permission tree"
msgstr "権限ツリーの表示"
#: settings/api/dingtalk.py:31 settings/api/feishu.py:36
#: settings/api/sms.py:155 settings/api/wecom.py:37
#: settings/api/sms.py:155 settings/api/vault.py:39 settings/api/wecom.py:37
msgid "Test success"
msgstr "テストの成功"
@ -4328,34 +4363,40 @@ msgid "Can change auth setting"
msgstr "資格認定の設定"
#: settings/models.py:162
#, fuzzy
#| msgid "Can change auth setting"
msgid "Can change vault setting"
msgstr "資格認定の設定"
#: settings/models.py:163
msgid "Can change system msg sub setting"
msgstr "システムmsgサブ设定を変更できます"
#: settings/models.py:163
#: settings/models.py:164
msgid "Can change sms setting"
msgstr "Smsの設定を変えることができます"
#: settings/models.py:164
#: settings/models.py:165
msgid "Can change security setting"
msgstr "セキュリティ設定を変更できます"
#: settings/models.py:165
#: settings/models.py:166
msgid "Can change clean setting"
msgstr "きれいな設定を変えることができます"
#: settings/models.py:166
#: settings/models.py:167
msgid "Can change interface setting"
msgstr "インターフェイスの設定を変えることができます"
#: settings/models.py:167
#: settings/models.py:168
msgid "Can change license setting"
msgstr "ライセンス設定を変更できます"
#: settings/models.py:168
#: settings/models.py:169
msgid "Can change terminal setting"
msgstr "ターミナルの設定を変えることができます"
#: settings/models.py:169
#: settings/models.py:170
msgid "Can change other setting"
msgstr "他の設定を変えることができます"
@ -5368,6 +5409,10 @@ msgstr ""
"ヒント: Luna ページでグラフィック アセットを接続するときに使用するデフォルト"
"の解像度"
#: settings/serializers/vault.py:22
msgid "Mount Point"
msgstr ""
#: settings/tasks/ldap.py:24
msgid "Periodic import ldap user"
msgstr "LDAP ユーザーを定期的にインポートする"
@ -5563,8 +5608,8 @@ msgstr "期限切れです。"
#, python-format
msgid ""
"\n"
" Your password has expired, please click <a href="
"\"%(user_password_update_url)s\"> this link </a> update password.\n"
" Your password has expired, please click <a "
"href=\"%(user_password_update_url)s\"> this link </a> update password.\n"
" "
msgstr ""
"\n"
@ -5585,34 +5630,34 @@ msgid ""
" "
msgstr ""
"\n"
" クリックしてください <a href=\"%(user_password_update_url)s"
"\"> リンク </a> パスワードの更新\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"
" 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"
" あなたの情報が不完全なので、クリックしてください。 <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"
" 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"
" SSHキーが設定されていないか無効になっている場合は、 <a "
"href=\"%(user_pubkey_update)s\"> リンク </a> 更新\n"
" "
#: templates/_mfa_login_field.html:28
@ -5702,7 +5747,7 @@ msgstr "コマンドストア"
msgid "Invalid"
msgstr "無効"
#: terminal/api/component/storage.py:119 terminal/tasks.py:140
#: terminal/api/component/storage.py:119 terminal/tasks.py:141
msgid "Test failure: {}"
msgstr "テスト失敗: {}"
@ -5711,7 +5756,7 @@ msgid "Test successful"
msgstr "テスト成功"
#: terminal/api/component/storage.py:124 terminal/notifications.py:240
#: terminal/tasks.py:144
#: terminal/tasks.py:145
msgid "Test failure: Account invalid"
msgstr "テスト失敗: アカウントが無効"
@ -6040,23 +6085,27 @@ msgstr "リプレイ"
msgid "Date end"
msgstr "終了日"
#: terminal/models/session/session.py:261
#: terminal/models/session/session.py:47 terminal/serializers/session.py:55
msgid "Command amount"
msgstr "コマンド量"
#: terminal/models/session/session.py:281
msgid "Session record"
msgstr "セッション記録"
#: terminal/models/session/session.py:263
#: terminal/models/session/session.py:283
msgid "Can monitor session"
msgstr "セッションを監視できます"
#: terminal/models/session/session.py:264
#: terminal/models/session/session.py:284
msgid "Can share session"
msgstr "セッションを共有できます"
#: terminal/models/session/session.py:265
#: terminal/models/session/session.py:285
msgid "Can terminate session"
msgstr "セッションを終了できます"
#: terminal/models/session/session.py:266
#: terminal/models/session/session.py:286
msgid "Can validate session action perm"
msgstr "セッションアクションのパーマを検証できます"
@ -6311,38 +6360,34 @@ msgstr ""
msgid "Asset IP"
msgstr "資産 IP"
#: terminal/serializers/session.py:22 terminal/serializers/session.py:44
#: terminal/serializers/session.py:22 terminal/serializers/session.py:45
msgid "Can replay"
msgstr "再生できます"
#: terminal/serializers/session.py:23 terminal/serializers/session.py:45
#: terminal/serializers/session.py:23 terminal/serializers/session.py:46
msgid "Can join"
msgstr "参加できます"
#: terminal/serializers/session.py:24 terminal/serializers/session.py:48
#: terminal/serializers/session.py:24 terminal/serializers/session.py:49
msgid "Can terminate"
msgstr "終了できます"
#: terminal/serializers/session.py:40
#: terminal/serializers/session.py:41
msgid "User ID"
msgstr "ユーザーID"
#: terminal/serializers/session.py:41
#: terminal/serializers/session.py:42
msgid "Asset ID"
msgstr "資産ID"
#: terminal/serializers/session.py:42
#: terminal/serializers/session.py:43
msgid "Login from display"
msgstr "表示からのログイン"
#: terminal/serializers/session.py:49
#: terminal/serializers/session.py:50
msgid "Terminal display"
msgstr "ターミナルディスプレイ"
#: terminal/serializers/session.py:54
msgid "Command amount"
msgstr "コマンド量"
#: terminal/serializers/storage.py:22
msgid "Endpoint invalid: remove path `{}`"
msgstr "エンドポイントが無効: パス '{}' を削除"
@ -6433,11 +6478,11 @@ msgstr "アプリケーション マシンの展開を実行する"
msgid "Install applet"
msgstr "アプリをインストールする"
#: terminal/tasks.py:110
#: terminal/tasks.py:111
msgid "Generate applet host accounts"
msgstr "リモートアプリケーション上のアカウントを収集する"
#: terminal/tasks.py:122
#: terminal/tasks.py:123
msgid "Check command replay storage connectivity"
msgstr "チェックコマンドと録画ストレージの接続性"
@ -7953,6 +7998,9 @@ msgstr "究極のエディション"
msgid "Community edition"
msgstr "コミュニティ版"
#~ msgid "Role display"
#~ msgstr "ロール表示"
#~ msgid "SFTP enabled"
#~ msgstr "SFTP が有効"

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2cf5749656bd07818b67191c2f665246e903d74e76c49ebcdec6004322f75314
size 122767
oid sha256:f70c68e6f9f5cd621ae5ff04e73bb882d4849d3750a8c34f586dc3cc74adfca4
size 123431

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: JumpServer 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-31 16:39+0800\n"
"POT-Creation-Date: 2023-08-02 16:52+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"
@ -44,7 +44,7 @@ msgid "Access key"
msgstr "Access key"
#: accounts/const/account.py:9 assets/models/_user.py:48
#: authentication/models/sso_token.py:14
#: authentication/models/sso_token.py:14 settings/serializers/vault.py:19
msgid "Token"
msgstr "Token"
@ -52,7 +52,7 @@ msgstr "Token"
msgid "API key"
msgstr ""
#: accounts/const/account.py:14 common/db/fields.py:244
#: accounts/const/account.py:14 common/db/fields.py:235
#: settings/serializers/terminal.py:14
msgid "All"
msgstr "全部"
@ -186,10 +186,20 @@ msgstr "创建并推送"
msgid "Only create"
msgstr "仅创建"
#: accounts/models/account.py:49
#: accounts/const/vault.py:8
#, fuzzy
#| msgid "Local"
msgid "Local Vault"
msgstr "数据库"
#: accounts/const/vault.py:9
msgid "HCP Vault"
msgstr ""
#: accounts/models/account.py:50
#: accounts/models/automations/gather_account.py:16
#: accounts/serializers/account/account.py:200
#: accounts/serializers/account/account.py:237
#: accounts/serializers/account/account.py:245
#: accounts/serializers/account/gathered_account.py:10
#: accounts/serializers/automations/change_secret.py:112
#: accounts/serializers/automations/change_secret.py:132
@ -206,29 +216,29 @@ msgstr "仅创建"
msgid "Asset"
msgstr "资产"
#: accounts/models/account.py:53 accounts/models/account.py:126
#: accounts/serializers/account/account.py:208
#: accounts/serializers/account/account.py:247
#: accounts/models/account.py:54 accounts/models/account.py:127
#: accounts/serializers/account/account.py:207
#: accounts/serializers/account/account.py:255
#: accounts/serializers/account/template.py:16
#: authentication/serializers/connect_token_secret.py:49
msgid "Su from"
msgstr "切换自"
#: accounts/models/account.py:55 settings/serializers/auth/cas.py:20
#: accounts/models/account.py:56 settings/serializers/auth/cas.py:20
#: settings/serializers/auth/feishu.py:20 terminal/models/applet/applet.py:34
msgid "Version"
msgstr "版本"
#: accounts/models/account.py:57 accounts/serializers/account/account.py:203
#: accounts/models/account.py:58 accounts/serializers/account/account.py:202
#: users/models/user.py:804
msgid "Source"
msgstr "来源"
#: accounts/models/account.py:58
#: accounts/models/account.py:59
msgid "Source ID"
msgstr "来源 ID"
#: accounts/models/account.py:61
#: accounts/models/account.py:62
#: accounts/serializers/automations/change_secret.py:113
#: accounts/serializers/automations/change_secret.py:133
#: acls/serializers/base.py:124 assets/serializers/asset/common.py:125
@ -241,35 +251,35 @@ msgstr "来源 ID"
msgid "Account"
msgstr "账号"
#: accounts/models/account.py:67
#: accounts/models/account.py:68
msgid "Can view asset account secret"
msgstr "可以查看资产账号密码"
#: accounts/models/account.py:68
#: accounts/models/account.py:69
msgid "Can view asset history account"
msgstr "可以查看资产历史账号"
#: accounts/models/account.py:69
#: accounts/models/account.py:70
msgid "Can view asset history account secret"
msgstr "可以查看资产历史账号密码"
#: accounts/models/account.py:70
#: accounts/models/account.py:71
msgid "Can verify account"
msgstr "可以验证账号"
#: accounts/models/account.py:71
#: accounts/models/account.py:72
msgid "Can push account"
msgstr "可以推送账号"
#: accounts/models/account.py:130
#: accounts/models/account.py:131
msgid "Account template"
msgstr "账号模版"
#: accounts/models/account.py:135
#: accounts/models/account.py:136
msgid "Can view asset account template secret"
msgstr "可以查看资产账号模版密码"
#: accounts/models/account.py:136
#: accounts/models/account.py:137
msgid "Can change asset account template secret"
msgstr "可以更改资产账号模版密码"
@ -322,7 +332,7 @@ msgstr "原因"
#: accounts/models/automations/backup_account.py:99
#: accounts/serializers/automations/change_secret.py:111
#: accounts/serializers/automations/change_secret.py:134
#: ops/serializers/job.py:56 terminal/serializers/session.py:43
#: ops/serializers/job.py:56 terminal/serializers/session.py:44
msgid "Is success"
msgstr "是否成功"
@ -367,7 +377,7 @@ msgid "Can add push account execution"
msgstr "创建推送账号执行"
#: accounts/models/automations/change_secret.py:18 accounts/models/base.py:36
#: accounts/serializers/account/account.py:419
#: accounts/serializers/account/account.py:427
#: accounts/serializers/account/base.py:16
#: accounts/serializers/automations/change_secret.py:46
#: authentication/serializers/connect_token_secret.py:41
@ -376,8 +386,8 @@ msgid "Secret type"
msgstr "密文类型"
#: accounts/models/automations/change_secret.py:20
#: accounts/models/automations/change_secret.py:89 accounts/models/base.py:38
#: accounts/serializers/account/base.py:19
#: accounts/models/automations/change_secret.py:89
#: accounts/models/mixins/vault.py:48 accounts/serializers/account/base.py:19
#: authentication/models/temp_token.py:10
#: authentication/templates/authentication/_access_key_modal.html:31
#: settings/serializers/auth/radius.py:19
@ -417,7 +427,7 @@ msgid "Date finished"
msgstr "结束日期"
#: accounts/models/automations/change_secret.py:93
#: accounts/serializers/account/account.py:239 assets/const/automation.py:8
#: accounts/serializers/account/account.py:247 assets/const/automation.py:8
#: authentication/views/base.py:26 authentication/views/base.py:27
#: authentication/views/base.py:28 common/const/choices.py:20
msgid "Error"
@ -496,7 +506,7 @@ msgstr "账号验证"
#: assets/serializers/platform.py:223
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
#: ops/models/adhoc.py:20 ops/models/celery.py:15 ops/models/celery.py:57
#: ops/models/job.py:94 ops/models/playbook.py:23 ops/serializers/job.py:20
#: ops/models/job.py:94 ops/models/playbook.py:28 ops/serializers/job.py:20
#: orgs/models.py:80 perms/models/asset_permission.py:56 rbac/models/role.py:29
#: settings/models.py:32 settings/serializers/sms.py:6
#: terminal/models/applet/applet.py:32 terminal/models/component/endpoint.py:12
@ -508,11 +518,11 @@ msgstr "账号验证"
msgid "Name"
msgstr "名称"
#: accounts/models/base.py:39
#: accounts/models/base.py:38
msgid "Privileged"
msgstr "特权账号"
#: accounts/models/base.py:40 assets/models/asset/common.py:156
#: accounts/models/base.py:39 assets/models/asset/common.py:156
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
#: assets/models/label.py:22
#: authentication/serializers/connect_token_secret.py:114
@ -584,8 +594,8 @@ msgstr "类别"
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:112
#: assets/serializers/platform.py:127 audits/serializers.py:49
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:105
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:38
#: terminal/models/component/storage.py:57
#: perms/serializers/user_permission.py:27 settings/serializers/vault.py:13
#: terminal/models/applet/applet.py:38 terminal/models/component/storage.py:57
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
#: terminal/serializers/session.py:20 terminal/serializers/storage.py:226
#: terminal/serializers/storage.py:238 tickets/models/comment.py:26
@ -599,23 +609,22 @@ msgstr "类型"
msgid "Asset not found"
msgstr "资产不存在"
#: accounts/serializers/account/account.py:201
#: accounts/serializers/account/base.py:64
#: accounts/serializers/account/account.py:236
msgid "Has secret"
msgstr "已托管密码"
#: accounts/serializers/account/account.py:238 ops/models/celery.py:60
#: accounts/serializers/account/account.py:246 ops/models/celery.py:60
#: tickets/models/comment.py:13 tickets/models/ticket/general.py:45
#: tickets/models/ticket/general.py:279 tickets/serializers/super_ticket.py:14
#: tickets/serializers/ticket/ticket.py:21
msgid "State"
msgstr "状态"
#: accounts/serializers/account/account.py:240
#: accounts/serializers/account/account.py:248
msgid "Changed"
msgstr "已修改"
#: accounts/serializers/account/account.py:250
#: accounts/serializers/account/account.py:258
#: accounts/serializers/automations/base.py:22 acls/models/base.py:97
#: assets/models/automations/base.py:19
#: assets/serializers/automations/base.py:20 ops/models/base.py:17
@ -624,27 +633,27 @@ msgstr "已修改"
msgid "Assets"
msgstr "资产"
#: accounts/serializers/account/account.py:305
#: accounts/serializers/account/account.py:313
msgid "Account already exists"
msgstr "账号已存在"
#: accounts/serializers/account/account.py:355
#: accounts/serializers/account/account.py:363
#, python-format
msgid "Asset does not support this secret type: %s"
msgstr "资产不支持账号类型: %s"
#: accounts/serializers/account/account.py:387
#: accounts/serializers/account/account.py:395
msgid "Account has exist"
msgstr "账号已存在"
#: accounts/serializers/account/account.py:420
#: accounts/serializers/account/account.py:428
#: authentication/serializers/connect_token_secret.py:156
#: authentication/templates/authentication/_access_key_modal.html:30
#: perms/models/perm_node.py:21 users/serializers/group.py:31
msgid "ID"
msgstr "ID"
#: accounts/serializers/account/account.py:427 acls/serializers/base.py:116
#: accounts/serializers/account/account.py:435 acls/serializers/base.py:116
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:49
#: audits/models.py:85 audits/models.py:163
#: authentication/models/connection_token.py:32
@ -652,10 +661,10 @@ msgstr "ID"
#: notifications/models/notification.py:12
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:58
#: perms/serializers/permission.py:30 rbac/builtin.py:123
#: rbac/models/rolebinding.py:49 terminal/backends/command/models.py:16
#: terminal/models/session/session.py:29 terminal/models/session/sharing.py:33
#: terminal/notifications.py:156 terminal/notifications.py:205
#: terminal/serializers/command.py:16
#: rbac/models/rolebinding.py:49 rbac/serializers/rolebinding.py:17
#: terminal/backends/command/models.py:16 terminal/models/session/session.py:29
#: terminal/models/session/sharing.py:33 terminal/notifications.py:156
#: terminal/notifications.py:205 terminal/serializers/command.py:16
#: terminal/templates/terminal/_msg_command_warning.html:6
#: terminal/templates/terminal/_msg_session_sharing.html:6
#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:947
@ -663,7 +672,7 @@ msgstr "ID"
msgid "User"
msgstr "用户"
#: accounts/serializers/account/account.py:428
#: accounts/serializers/account/account.py:436
#: authentication/templates/authentication/_access_key_modal.html:33
#: terminal/notifications.py:158 terminal/notifications.py:207
msgid "Date"
@ -694,12 +703,12 @@ msgstr "资产类型"
msgid "Key password"
msgstr "密钥密码"
#: accounts/serializers/account/base.py:80
#: accounts/serializers/account/base.py:78
#: assets/serializers/asset/common.py:311
msgid "Spec info"
msgstr "特殊信息"
#: accounts/serializers/account/base.py:82
#: accounts/serializers/account/base.py:80
msgid ""
"Tip: If no username is required for authentication, fill in `null`, If AD "
"account, like `username@domain`"
@ -765,6 +774,12 @@ msgstr "收集资产上的账号"
msgid "Push accounts to assets"
msgstr "推送账号到资产"
#: accounts/tasks/vault.py:15
#, fuzzy
#| msgid "Sync instance detail"
msgid "Sync secret to vault"
msgstr "同步实例详情"
#: accounts/tasks/verify_account.py:49
msgid "Verify asset account availability"
msgstr "验证资产账号可用性"
@ -773,19 +788,19 @@ msgstr "验证资产账号可用性"
msgid "Verify accounts connectivity"
msgstr "测试账号可连接性"
#: accounts/utils.py:43
#: accounts/utils.py:41
msgid "Password can not contains `{{` "
msgstr "密码不能包含 `{{` 字符"
#: accounts/utils.py:46
#: accounts/utils.py:44
msgid "Password can not contains `'` "
msgstr "密码不能包含 `'` 字符"
#: accounts/utils.py:48
#: accounts/utils.py:46
msgid "Password can not contains `\"` "
msgstr "密码不能包含 `\"` 字符"
#: accounts/utils.py:54
#: accounts/utils.py:52
msgid "private key invalid or passphrase error"
msgstr "密钥不合法或密钥密码错误"
@ -1076,14 +1091,15 @@ msgstr "禁用"
msgid "Basic"
msgstr "基本"
#: assets/const/base.py:35 assets/const/protocol.py:201
#: assets/const/base.py:35 assets/const/protocol.py:221
#: assets/models/asset/web.py:13
msgid "Script"
msgstr "脚本"
#: assets/const/category.py:10 assets/models/asset/host.py:8
#: settings/serializers/auth/radius.py:16 settings/serializers/auth/sms.py:67
#: terminal/models/component/endpoint.py:13 terminal/serializers/applet.py:17
#: settings/serializers/vault.py:16 terminal/models/component/endpoint.py:13
#: terminal/serializers/applet.py:17
#: xpack/plugins/cloud/serializers/account_attrs.py:72
msgid "Host"
msgstr "主机"
@ -1176,41 +1192,65 @@ msgstr "连接 RDP 使用的安全层"
msgid "AD domain"
msgstr "AD 网域"
#: assets/const/protocol.py:92 assets/models/asset/database.py:10
#: assets/const/protocol.py:88
msgid "Username prompt"
msgstr "用户名提示"
#: assets/const/protocol.py:89
msgid "We will send username when we see this prompt"
msgstr "当我们看到这个提示时,我们将发送用户名"
#: assets/const/protocol.py:94
msgid "Password prompt"
msgstr "密码提示"
#: assets/const/protocol.py:95
msgid "We will send password when we see this prompt"
msgstr "当我们看到这个提示时,我们将发送密码"
#: assets/const/protocol.py:100
msgid "Success prompt"
msgstr "成功提示"
#: assets/const/protocol.py:101
msgid "We will consider login success when we see this prompt"
msgstr "当我们看到这个提示时,我们将认为登录成功"
#: assets/const/protocol.py:112 assets/models/asset/database.py:10
#: settings/serializers/email.py:37
msgid "Use SSL"
msgstr "使用 SSL"
#: assets/const/protocol.py:127
#: assets/const/protocol.py:147
msgid "SYSDBA"
msgstr "SYSDBA"
#: assets/const/protocol.py:128
#: assets/const/protocol.py:148
msgid "Connect as SYSDBA"
msgstr "以 SYSDBA 角色连接"
#: assets/const/protocol.py:157
#: assets/const/protocol.py:177
msgid "Auth username"
msgstr "使用用户名认证"
#: assets/const/protocol.py:178 assets/models/asset/web.py:9
#: assets/const/protocol.py:198 assets/models/asset/web.py:9
#: assets/serializers/asset/info/spec.py:16
msgid "Autofill"
msgstr "自动代填"
#: assets/const/protocol.py:186 assets/models/asset/web.py:10
#: assets/const/protocol.py:206 assets/models/asset/web.py:10
msgid "Username selector"
msgstr "用户名选择器"
#: assets/const/protocol.py:191 assets/models/asset/web.py:11
#: assets/const/protocol.py:211 assets/models/asset/web.py:11
msgid "Password selector"
msgstr "密码选择器"
#: assets/const/protocol.py:196 assets/models/asset/web.py:12
#: assets/const/protocol.py:216 assets/models/asset/web.py:12
msgid "Submit selector"
msgstr "确认按钮选择器"
#: assets/const/protocol.py:219
#: assets/const/protocol.py:239
msgid "API mode"
msgstr "API 模式"
@ -1237,7 +1277,7 @@ msgstr "SSH公钥"
#: assets/models/_user.py:27 assets/models/cmd_filter.py:40
#: assets/models/cmd_filter.py:88 assets/models/group.py:20
#: common/db/models.py:36 ops/models/adhoc.py:26 ops/models/job.py:113
#: ops/models/playbook.py:26 rbac/models/role.py:37 settings/models.py:37
#: ops/models/playbook.py:31 rbac/models/role.py:37 settings/models.py:37
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:250
#: terminal/models/applet/host.py:141 terminal/models/component/endpoint.py:24
#: terminal/models/component/endpoint.py:102
@ -1289,7 +1329,7 @@ msgstr "用户名与用户相同"
#: assets/models/_user.py:52 authentication/models/connection_token.py:41
#: authentication/serializers/connect_token_secret.py:111
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:18
#: terminal/serializers/session.py:39 terminal/serializers/storage.py:70
#: terminal/serializers/session.py:40 terminal/serializers/storage.py:70
msgid "Protocol"
msgstr "协议"
@ -1720,8 +1760,8 @@ msgstr "协议是必填的: {}"
msgid "Default database"
msgstr "默认数据库"
#: assets/serializers/asset/database.py:28 common/db/fields.py:579
#: common/db/fields.py:584 common/serializers/fields.py:104
#: assets/serializers/asset/database.py:28 common/db/fields.py:570
#: common/db/fields.py:575 common/serializers/fields.py:104
#: tickets/serializers/ticket/common.py:58
#: xpack/plugins/cloud/serializers/account_attrs.py:56
#: xpack/plugins/cloud/serializers/account_attrs.py:79
@ -2015,7 +2055,7 @@ msgstr "改密"
#: audits/const.py:35 settings/serializers/terminal.py:6
#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:163
#: terminal/serializers/session.py:46 terminal/serializers/session.py:55
#: terminal/serializers/session.py:47 terminal/serializers/session.py:56
msgid "Terminal"
msgstr "终端"
@ -2642,7 +2682,6 @@ msgid "Connect options"
msgstr "连接项"
#: authentication/models/connection_token.py:44
#: rbac/serializers/rolebinding.py:21
msgid "User display"
msgstr "用户名称"
@ -2858,7 +2897,7 @@ msgstr "代码错误"
#: authentication/templates/authentication/_msg_reset_password_code.html:9
#: authentication/templates/authentication/_msg_rest_password_success.html:2
#: authentication/templates/authentication/_msg_rest_public_key_success.html:2
#: jumpserver/conf.py:431
#: jumpserver/conf.py:437
#: perms/templates/perms/_msg_item_permissions_expire.html:3
#: perms/templates/perms/_msg_permed_items_expire.html:3
#: tickets/templates/tickets/approve_check_password.html:33
@ -3205,11 +3244,11 @@ msgstr "编码数据为 char"
msgid "Marshal data to text field"
msgstr "编码数据为 text"
#: common/db/fields.py:176
#: common/db/fields.py:167
msgid "Encrypt field using Secret Key"
msgstr "加密的字段"
#: common/db/fields.py:567
#: common/db/fields.py:558
msgid ""
"Invalid JSON data for JSONManyToManyField, should be like {'type': 'all'} or "
"{'type': 'ids', 'ids': []} or {'type': 'attrs', 'attrs': [{'name': 'ip', "
@ -3219,19 +3258,19 @@ msgstr ""
"{'type': 'attrs', 'attrs': [{'name': 'ip', 'match': 'exact', 'value': "
"'1.1.1.1'}}"
#: common/db/fields.py:574
#: common/db/fields.py:565
msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\""
msgstr "无效类型,应为 all、ids 或 attrs"
#: common/db/fields.py:577
#: common/db/fields.py:568
msgid "Invalid ids for ids, should be a list"
msgstr "无效的ID应为列表"
#: common/db/fields.py:582 common/db/fields.py:587
#: common/db/fields.py:573 common/db/fields.py:578
msgid "Invalid attrs, should be a list of dict"
msgstr "无效的属性应为dict列表"
#: common/db/fields.py:589
#: common/db/fields.py:580
msgid "Invalid attrs, should be has name and value"
msgstr "无效属性,应具有名称和值"
@ -3443,11 +3482,11 @@ msgstr "导出搜素: %s"
msgid "User %s view/export secret"
msgstr "用户 %s 查看/导出 了密码"
#: jumpserver/conf.py:430
#: jumpserver/conf.py:436
msgid "Create account successfully"
msgstr "创建账号成功"
#: jumpserver/conf.py:432
#: jumpserver/conf.py:438
msgid "Your account has been created successfully"
msgstr "你的账号已创建成功"
@ -3649,7 +3688,7 @@ msgid "Args"
msgstr "参数"
#: ops/models/adhoc.py:25 ops/models/base.py:16 ops/models/base.py:53
#: ops/models/job.py:106 ops/models/job.py:192 ops/models/playbook.py:25
#: ops/models/job.py:106 ops/models/job.py:192 ops/models/playbook.py:30
#: terminal/models/session/sharing.py:24
msgid "Creator"
msgstr "创建者"
@ -3744,11 +3783,11 @@ msgstr "Material 类型"
msgid "Job Execution"
msgstr "作业执行"
#: ops/models/playbook.py:28
#: ops/models/playbook.py:33
msgid "CreateMethod"
msgstr "创建方式"
#: ops/models/playbook.py:29
#: ops/models/playbook.py:34
msgid "VCS URL"
msgstr "VCS URL"
@ -3788,7 +3827,7 @@ msgstr "保存后执行"
msgid "Job type"
msgstr "任务类型"
#: ops/serializers/job.py:57 terminal/serializers/session.py:47
#: ops/serializers/job.py:57 terminal/serializers/session.py:48
msgid "Is finished"
msgstr "是否完成"
@ -3884,14 +3923,14 @@ msgstr "组织管理"
#: orgs/mixins/models.py:57 orgs/mixins/serializers.py:25 orgs/models.py:89
#: rbac/const.py:7 rbac/models/rolebinding.py:56
#: rbac/serializers/rolebinding.py:40 settings/serializers/auth/ldap.py:63
#: rbac/serializers/rolebinding.py:44 settings/serializers/auth/ldap.py:63
#: terminal/templates/terminal/_msg_command_warning.html:21
#: terminal/templates/terminal/_msg_session_sharing.html:14
#: tickets/models/ticket/general.py:302 tickets/serializers/ticket/ticket.py:60
msgid "Organization"
msgstr "组织"
#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:23
#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:27
msgid "Org name"
msgstr "组织名称"
@ -4031,7 +4070,7 @@ msgstr "角色已绑定用户,不能删除"
msgid "Internal role, can't be update"
msgstr "内部角色,不能更新"
#: rbac/api/rolebinding.py:52
#: rbac/api/rolebinding.py:45
msgid "{} at least one system role"
msgstr "{} 至少有一个系统角色"
@ -4143,11 +4182,7 @@ msgstr "用户数量"
msgid "Display name"
msgstr "显示名称"
#: rbac/serializers/rolebinding.py:22
msgid "Role display"
msgstr "角色显示"
#: rbac/serializers/rolebinding.py:56
#: rbac/serializers/rolebinding.py:60
msgid "Has bound this role"
msgstr "已经绑定"
@ -4226,7 +4261,7 @@ msgid "View permission tree"
msgstr "查看授权树"
#: settings/api/dingtalk.py:31 settings/api/feishu.py:36
#: settings/api/sms.py:155 settings/api/wecom.py:37
#: settings/api/sms.py:155 settings/api/vault.py:39 settings/api/wecom.py:37
msgid "Test success"
msgstr "测试成功"
@ -4279,34 +4314,40 @@ msgid "Can change auth setting"
msgstr "认证设置"
#: settings/models.py:162
#, fuzzy
#| msgid "Can change auth setting"
msgid "Can change vault setting"
msgstr "认证设置"
#: settings/models.py:163
msgid "Can change system msg sub setting"
msgstr "消息订阅设置"
#: settings/models.py:163
#: settings/models.py:164
msgid "Can change sms setting"
msgstr "短信设置"
#: settings/models.py:164
#: settings/models.py:165
msgid "Can change security setting"
msgstr "安全设置"
#: settings/models.py:165
#: settings/models.py:166
msgid "Can change clean setting"
msgstr "定期清理"
#: settings/models.py:166
#: settings/models.py:167
msgid "Can change interface setting"
msgstr "界面设置"
#: settings/models.py:167
#: settings/models.py:168
msgid "Can change license setting"
msgstr "许可证设置"
#: settings/models.py:168
#: settings/models.py:169
msgid "Can change terminal setting"
msgstr "终端设置"
#: settings/models.py:169
#: settings/models.py:170
msgid "Can change other setting"
msgstr "其它设置"
@ -5291,6 +5332,10 @@ msgid ""
"Tip: Default resolution to use when connecting graphical assets in Luna pages"
msgstr "提示在Luna 页面中连接图形化资产时默认使用的分辨率"
#: settings/serializers/vault.py:22
msgid "Mount Point"
msgstr ""
#: settings/tasks/ldap.py:24
msgid "Periodic import ldap user"
msgstr "周期导入 LDAP 用户"
@ -5481,13 +5526,13 @@ msgstr "过期。"
#, python-format
msgid ""
"\n"
" Your password has expired, please click <a href="
"\"%(user_password_update_url)s\"> this link </a> update password.\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"
" 您的密码已经过期,请点击 <a "
"href=\"%(user_password_update_url)s\"> 链接 </a> 更新密码\n"
" "
#: templates/_message.html:30
@ -5511,8 +5556,8 @@ msgstr ""
#, python-format
msgid ""
"\n"
" Your information was incomplete. Please click <a href="
"\"%(first_login_url)s\"> this link </a>to complete your information.\n"
" Your information was incomplete. Please click <a "
"href=\"%(first_login_url)s\"> this link </a>to complete your information.\n"
" "
msgstr ""
"\n"
@ -5524,13 +5569,13 @@ msgstr ""
#, 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"
" 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"
" 您的SSH密钥没有设置或已失效请点击 <a "
"href=\"%(user_pubkey_update)s\"> 链接 </a> 更新\n"
" "
#: templates/_mfa_login_field.html:28
@ -5615,7 +5660,7 @@ msgstr "命令存储"
msgid "Invalid"
msgstr "无效"
#: terminal/api/component/storage.py:119 terminal/tasks.py:140
#: terminal/api/component/storage.py:119 terminal/tasks.py:141
msgid "Test failure: {}"
msgstr "测试失败: {}"
@ -5624,7 +5669,7 @@ msgid "Test successful"
msgstr "测试成功"
#: terminal/api/component/storage.py:124 terminal/notifications.py:240
#: terminal/tasks.py:144
#: terminal/tasks.py:145
msgid "Test failure: Account invalid"
msgstr "测试失败: 账号无效"
@ -5953,23 +5998,27 @@ msgstr "回放"
msgid "Date end"
msgstr "结束日期"
#: terminal/models/session/session.py:261
#: terminal/models/session/session.py:47 terminal/serializers/session.py:55
msgid "Command amount"
msgstr "命令数量"
#: terminal/models/session/session.py:281
msgid "Session record"
msgstr "会话记录"
#: terminal/models/session/session.py:263
#: terminal/models/session/session.py:283
msgid "Can monitor session"
msgstr "可以监控会话"
#: terminal/models/session/session.py:264
#: terminal/models/session/session.py:284
msgid "Can share session"
msgstr "可以分享会话"
#: terminal/models/session/session.py:265
#: terminal/models/session/session.py:285
msgid "Can terminate session"
msgstr "可以终断会话"
#: terminal/models/session/session.py:266
#: terminal/models/session/session.py:286
msgid "Can validate session action perm"
msgstr "可以验证会话动作权限"
@ -6217,38 +6266,34 @@ msgstr "如果不同端点下的资产 IP 有冲突,使用资产标签实现"
msgid "Asset IP"
msgstr "资产 IP"
#: terminal/serializers/session.py:22 terminal/serializers/session.py:44
#: terminal/serializers/session.py:22 terminal/serializers/session.py:45
msgid "Can replay"
msgstr "是否可重放"
#: terminal/serializers/session.py:23 terminal/serializers/session.py:45
#: terminal/serializers/session.py:23 terminal/serializers/session.py:46
msgid "Can join"
msgstr "是否可加入"
#: terminal/serializers/session.py:24 terminal/serializers/session.py:48
#: terminal/serializers/session.py:24 terminal/serializers/session.py:49
msgid "Can terminate"
msgstr "是否可中断"
#: terminal/serializers/session.py:40
#: terminal/serializers/session.py:41
msgid "User ID"
msgstr "用户 ID"
#: terminal/serializers/session.py:41
#: terminal/serializers/session.py:42
msgid "Asset ID"
msgstr "资产 ID"
#: terminal/serializers/session.py:42
#: terminal/serializers/session.py:43
msgid "Login from display"
msgstr "登录来源名称"
#: terminal/serializers/session.py:49
#: terminal/serializers/session.py:50
msgid "Terminal display"
msgstr "终端显示"
#: terminal/serializers/session.py:54
msgid "Command amount"
msgstr "命令数量"
#: terminal/serializers/storage.py:22
msgid "Endpoint invalid: remove path `{}`"
msgstr "端点无效: 移除路径 `{}`"
@ -6339,11 +6384,11 @@ msgstr "运行应用机部署"
msgid "Install applet"
msgstr "安装应用"
#: terminal/tasks.py:110
#: terminal/tasks.py:111
msgid "Generate applet host accounts"
msgstr "收集远程应用上的账号"
#: terminal/tasks.py:122
#: terminal/tasks.py:123
msgid "Check command replay storage connectivity"
msgstr "检查命令及录像存储可连接性 "
@ -7837,6 +7882,9 @@ msgstr "旗舰版"
msgid "Community edition"
msgstr "社区版"
#~ msgid "Role display"
#~ msgstr "角色显示"
#~ msgid "SFTP enabled"
#~ msgstr "SFTP 已启用"

View File

@ -30,11 +30,6 @@ class TerminalSettingSerializer(serializers.Serializer):
TERMINAL_ASSET_LIST_PAGE_SIZE = serializers.ChoiceField(
PAGE_SIZE_CHOICES, required=False, label=_('List page size')
)
TERMINAL_TELNET_REGEX = serializers.CharField(
allow_blank=True, max_length=1024, required=False, label=_('Telnet login regex'),
help_text=_("Tips: The login success message varies with devices. "
"if you cannot log in to the device through Telnet, set this parameter")
)
TERMINAL_MAGNUS_ENABLED = serializers.BooleanField(label=_("Enable database proxy"))
TERMINAL_RAZOR_ENABLED = serializers.BooleanField(label=_("Enable Razor"))
TERMINAL_KOKO_SSH_ENABLED = serializers.BooleanField(label=_("Enable SSH Client"))