# 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.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-19 18:55+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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: accounts/api/automations/base.py:79 tickets/api/ticket.py:132
msgid "The parameter 'action' must be [{}]"
msgstr ""

#: accounts/automations/backup_account/handlers.py:21
msgid "The account key will be split into two parts and sent"
msgstr ""

#: accounts/automations/backup_account/handlers.py:119
msgid "Number of backup accounts"
msgstr ""

#: accounts/automations/backup_account/handlers.py:131
msgid "Generating asset or application related backup information files"
msgstr ""

#: accounts/automations/backup_account/handlers.py:156
#: accounts/automations/backup_account/handlers.py:295
#: accounts/automations/backup_account/manager.py:40 ops/serializers/job.py:82
#: settings/templates/ldap/_msg_import_ldap_user.html:7
msgid "Time cost"
msgstr ""

#: accounts/automations/backup_account/handlers.py:157
msgid "Backup file creation completed"
msgstr ""

#: accounts/automations/backup_account/handlers.py:179
msgid "Email sent to"
msgstr ""

#: accounts/automations/backup_account/handlers.py:194
msgid "Encrypting files using encryption password"
msgstr ""

#: accounts/automations/backup_account/handlers.py:204
msgid "The backup file will be sent to"
msgstr ""

#: accounts/automations/backup_account/handlers.py:213
#: users/forms/profile.py:75
msgid "Finish"
msgstr ""

#: accounts/automations/backup_account/handlers.py:219
#: accounts/const/automation.py:110
#: accounts/serializers/automations/change_secret.py:173
#: assets/serializers/automations/base.py:52 audits/const.py:64
#: audits/models.py:64 audits/signal_handlers/activity_log.py:33
#: common/const/choices.py:65 ops/const.py:74 ops/serializers/celery.py:48
#: terminal/const.py:80 terminal/models/session/sharing.py:121
#: tickets/views/approve.py:128
msgid "Success"
msgstr "Success"

#: accounts/automations/backup_account/handlers.py:221
#: accounts/const/account.py:34 accounts/const/automation.py:109
#: accounts/serializers/automations/change_secret.py:174 audits/const.py:65
#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:66
#: ops/const.py:76 terminal/const.py:81 xpack/plugins/cloud/const.py:47
msgid "Failed"
msgstr ""

#: accounts/automations/backup_account/handlers.py:248
msgid "The backup task has no assigned sftp server"
msgstr ""

#: accounts/automations/backup_account/handlers.py:270
msgid "The backup task has no assigned recipient"
msgstr ""

#: accounts/automations/backup_account/handlers.py:293
msgid "Plan start"
msgstr ""

#: accounts/automations/backup_account/handlers.py:294
msgid "Plan end"
msgstr ""

#: accounts/automations/backup_account/handlers.py:296
msgid "An exception occurred during task execution"
msgstr ""

#: accounts/automations/backup_account/manager.py:23
msgid "The account backup plan is being executed"
msgstr ""

#: accounts/automations/backup_account/manager.py:37
msgid "Plan execution end"
msgstr ""

#: accounts/automations/change_secret/manager.py:97
msgid "No pending accounts found"
msgstr ""

#: accounts/automations/change_secret/manager.py:225
#, python-format
msgid "Success: %s, Failed: %s, Total: %s"
msgstr ""

#: accounts/automations/verify_gateway_account/manager.py:18
msgid ">>> Start executing the task to test gateway account connectivity"
msgstr ""

#: accounts/const/account.py:6
#: accounts/serializers/automations/change_secret.py:34
#: audits/signal_handlers/login_log.py:34 authentication/confirm/password.py:9
#: authentication/confirm/password.py:24 authentication/confirm/password.py:26
#: authentication/forms.py:28
#: authentication/templates/authentication/login.html:362
#: settings/serializers/auth/ldap.py:26 settings/serializers/auth/ldap.py:52
#: settings/serializers/auth/ldap_ha.py:34 settings/serializers/msg.py:37
#: settings/serializers/terminal.py:28 terminal/serializers/storage.py:123
#: terminal/serializers/storage.py:142 users/forms/profile.py:21
#: users/serializers/user.py:144
#: users/templates/users/_msg_user_created.html:13
#: users/templates/users/user_password_verify.html:18
#: xpack/plugins/cloud/serializers/account_attrs.py:28
msgid "Password"
msgstr ""

#: accounts/const/account.py:7
#: accounts/serializers/automations/change_secret.py:35
#: authentication/models/ssh_key.py:27 terminal/serializers/storage.py:124
msgid "SSH key"
msgstr ""

#: accounts/const/account.py:8 authentication/models/access_key.py:42
msgid "Access key"
msgstr ""

#: accounts/const/account.py:9 authentication/backends/passkey/models.py:16
#: authentication/models/sso_token.py:14 settings/serializers/feature.py:74
msgid "Token"
msgstr ""

#: accounts/const/account.py:10
msgid "API key"
msgstr ""

#: accounts/const/account.py:14 common/db/fields.py:230
#: settings/serializers/terminal.py:14
msgid "All"
msgstr ""

#: accounts/const/account.py:15 accounts/models/virtual.py:27
msgid "Manual input"
msgstr ""

#: accounts/const/account.py:16
msgid "Dynamic user"
msgstr ""

#: accounts/const/account.py:17
msgid "Anonymous account"
msgstr ""

#: accounts/const/account.py:18
msgid "Specified account"
msgstr ""

#: accounts/const/account.py:26 users/models/user/_source.py:11
msgid "Local"
msgstr ""

#: accounts/const/account.py:27
msgid "Collected"
msgstr ""

#: accounts/const/account.py:28 accounts/serializers/account/account.py:28
#: settings/serializers/auth/sms.py:84
msgid "Template"
msgstr ""

#: accounts/const/account.py:32 ops/const.py:46 xpack/plugins/cloud/const.py:68
msgid "Skip"
msgstr ""

#: accounts/const/account.py:33 audits/const.py:24 rbac/tree.py:269
#: templates/_csv_import_export.html:18 templates/_csv_update_modal.html:6
msgid "Update"
msgstr ""

#: accounts/const/automation.py:24 rbac/tree.py:52
msgid "Push account"
msgstr ""

#: accounts/const/automation.py:25
msgid "Change secret"
msgstr ""

#: accounts/const/automation.py:26
msgid "Verify account"
msgstr ""

#: accounts/const/automation.py:27 accounts/tasks/remove_account.py:25
#: accounts/tasks/remove_account.py:38
msgid "Remove account"
msgstr ""

#: accounts/const/automation.py:28
msgid "Gather accounts"
msgstr ""

#: accounts/const/automation.py:29
msgid "Verify gateway account"
msgstr ""

#: accounts/const/automation.py:47
msgid "Specific secret"
msgstr ""

#: accounts/const/automation.py:48
msgid "Random generate"
msgstr ""

#: accounts/const/automation.py:52 ops/const.py:13
msgid "Append SSH KEY"
msgstr ""

#: accounts/const/automation.py:53 ops/const.py:14
msgid "Empty and append SSH KEY"
msgstr ""

#: accounts/const/automation.py:54 ops/const.py:15
msgid "Replace (Replace only keys pushed by JumpServer) "
msgstr ""

#: accounts/const/automation.py:59
msgid "On asset create"
msgstr ""

#: accounts/const/automation.py:62
msgid "On perm add user"
msgstr ""

#: accounts/const/automation.py:64
msgid "On perm add user group"
msgstr ""

#: accounts/const/automation.py:66
msgid "On perm add asset"
msgstr ""

#: accounts/const/automation.py:68
msgid "On perm add node"
msgstr ""

#: accounts/const/automation.py:70
msgid "On perm add account"
msgstr ""

#: accounts/const/automation.py:72
msgid "On asset join node"
msgstr ""

#: accounts/const/automation.py:74
msgid "On user join group"
msgstr ""

#: accounts/const/automation.py:82
msgid "On perm change"
msgstr ""

#: accounts/const/automation.py:89
msgid "Inherit from group or node"
msgstr ""

#: accounts/const/automation.py:97
msgid "Create and push"
msgstr ""

#: accounts/const/automation.py:98
msgid "Only create"
msgstr ""

#: accounts/const/automation.py:103
#: authentication/serializers/password_mfa.py:17
#: authentication/serializers/password_mfa.py:25
#: notifications/backends/__init__.py:10 settings/serializers/msg.py:21
#: settings/serializers/msg.py:61 users/forms/profile.py:100
#: users/forms/profile.py:108 users/models/user/__init__.py:65
#: users/templates/users/forgot_password.html:162
#: users/views/profile/reset.py:94
msgid "Email"
msgstr ""

#: accounts/const/automation.py:105 terminal/const.py:89
msgid "SFTP"
msgstr ""

#: accounts/const/automation.py:111 assets/serializers/automations/base.py:54
#: common/const/choices.py:63 terminal/const.py:79 tickets/const.py:29
#: tickets/const.py:38
msgid "Pending"
msgstr ""

#: accounts/const/vault.py:8 assets/const/category.py:12
#: assets/models/asset/database.py:10 assets/models/asset/database.py:29
msgid "Database"
msgstr ""

#: accounts/const/vault.py:9 settings/serializers/feature.py:69
msgid "HCP Vault"
msgstr ""

#: accounts/const/vault.py:10 settings/serializers/feature.py:82
msgid "Azure Key Vault"
msgstr ""

#: accounts/mixins.py:35
msgid "Export all"
msgstr ""

#: accounts/mixins.py:37
msgid "Export only selected items"
msgstr ""

#: accounts/mixins.py:42
#, python-format
msgid "Export filtered: %s"
msgstr ""

#: accounts/mixins.py:48
#, python-format
msgid "User %s view/export secret"
msgstr ""

#: accounts/models/account.py:49
#: accounts/models/automations/gather_account.py:16
#: accounts/serializers/account/account.py:226
#: accounts/serializers/account/account.py:272
#: accounts/serializers/account/gathered_account.py:10
#: accounts/serializers/automations/change_secret.py:118
#: accounts/serializers/automations/change_secret.py:150
#: accounts/templates/accounts/asset_account_change_info.html:7
#: accounts/templates/accounts/change_secret_failed_info.html:11
#: acls/serializers/base.py:123 assets/models/asset/common.py:102
#: assets/models/asset/common.py:362 assets/models/cmd_filter.py:36
#: audits/models.py:58 authentication/models/connection_token.py:36
#: perms/models/asset_permission.py:69 terminal/backends/command/models.py:17
#: terminal/models/session/session.py:32 terminal/notifications.py:156
#: terminal/serializers/command.py:17 terminal/serializers/session.py:30
#: terminal/templates/terminal/_msg_command_warning.html:4
#: terminal/templates/terminal/_msg_session_sharing.html:4
#: tickets/models/ticket/apply_asset.py:16 xpack/plugins/cloud/models.py:290
msgid "Asset"
msgstr ""

#: accounts/models/account.py:53 accounts/models/template.py:16
#: accounts/serializers/account/account.py:233
#: accounts/serializers/account/account.py:282
#: accounts/serializers/account/template.py:37
#: authentication/serializers/connect_token_secret.py:50
msgid "Su from"
msgstr "Switch from"

#: accounts/models/account.py:55 assets/const/protocol.py:195
#: settings/serializers/auth/cas.py:25 terminal/models/applet/applet.py:36
#: terminal/models/virtualapp/virtualapp.py:21
msgid "Version"
msgstr ""

#: accounts/models/account.py:57
msgid "historical Account"
msgstr ""

#: accounts/models/account.py:58 accounts/serializers/account/account.py:228
#: users/models/user/__init__.py:126
msgid "Source"
msgstr ""

#: accounts/models/account.py:59
msgid "Source ID"
msgstr ""

#: accounts/models/account.py:62
#: accounts/serializers/automations/change_secret.py:120
#: accounts/serializers/automations/change_secret.py:151
#: accounts/templates/accounts/change_secret_failed_info.html:12
#: acls/serializers/base.py:124
#: acls/templates/acls/asset_login_reminder.html:10
#: assets/serializers/gateway.py:33 audits/models.py:59
#: authentication/api/connection_token.py:411 ops/models/base.py:18
#: perms/models/asset_permission.py:75 settings/serializers/msg.py:33
#: terminal/backends/command/models.py:18 terminal/models/session/session.py:34
#: terminal/serializers/command.py:72
#: terminal/templates/terminal/_msg_command_warning.html:8
#: terminal/templates/terminal/_msg_session_sharing.html:8
#: tickets/models/ticket/command_confirm.py:13
#: xpack/plugins/cloud/models.py:101 xpack/plugins/cloud/ws.py:37
msgid "Account"
msgstr ""

#: accounts/models/account.py:68
msgid "Can view asset account secret"
msgstr ""

#: accounts/models/account.py:69
msgid "Can view asset history account"
msgstr ""

#: accounts/models/account.py:70
msgid "Can view asset history account secret"
msgstr ""

#: accounts/models/account.py:71
msgid "Can verify account"
msgstr ""

#: accounts/models/account.py:72
msgid "Can push account"
msgstr ""

#: accounts/models/account.py:73
msgid "Can remove account"
msgstr ""

#: accounts/models/automations/backup_account.py:27
msgid "Backup type"
msgstr ""

#: accounts/models/automations/backup_account.py:28
#: accounts/models/automations/backup_account.py:29
msgid "Password divided"
msgstr ""

#: accounts/models/automations/backup_account.py:32
msgid "Recipient part one"
msgstr ""

#: accounts/models/automations/backup_account.py:36
msgid "Recipient part two"
msgstr ""

#: accounts/models/automations/backup_account.py:40
msgid "Object storage recipient part one"
msgstr ""

#: accounts/models/automations/backup_account.py:44
msgid "Object storage recipient part two"
msgstr ""

#: accounts/models/automations/backup_account.py:47
msgid "Zip encrypt password"
msgstr "Passphrase"

#: accounts/models/automations/backup_account.py:56
#: accounts/models/automations/backup_account.py:139
msgid "Account backup plan"
msgstr ""

#: accounts/models/automations/backup_account.py:120
#: assets/models/automations/base.py:115 audits/models.py:65
#: ops/models/base.py:55 ops/models/celery.py:89 ops/models/job.py:243
#: ops/templates/ops/celery_task_log.html:101
#: perms/models/asset_permission.py:78 settings/serializers/feature.py:26
#: settings/templates/ldap/_msg_import_ldap_user.html:5
#: terminal/models/applet/host.py:141 terminal/models/session/session.py:45
#: tickets/models/ticket/apply_application.py:30
#: tickets/models/ticket/apply_asset.py:19
msgid "Date start"
msgstr ""

#: accounts/models/automations/backup_account.py:123
#: authentication/templates/authentication/_msg_oauth_bind.html:11
#: notifications/notifications.py:202
#: settings/templates/ldap/_msg_import_ldap_user.html:3
msgid "Time"
msgstr ""

#: accounts/models/automations/backup_account.py:127
msgid "Account backup snapshot"
msgstr ""

#: accounts/models/automations/backup_account.py:131
#: accounts/serializers/account/backup.py:48
#: accounts/serializers/automations/base.py:56
#: assets/models/automations/base.py:122
#: assets/serializers/automations/base.py:40 xpack/plugins/cloud/models.py:242
#: xpack/plugins/cloud/serializers/task.py:247
msgid "Trigger mode"
msgstr ""

#: accounts/models/automations/backup_account.py:134 audits/models.py:203
#: terminal/models/session/sharing.py:125 xpack/plugins/cloud/manager.py:176
#: xpack/plugins/cloud/models.py:231
msgid "Reason"
msgstr ""

#: accounts/models/automations/backup_account.py:136
#: accounts/serializers/automations/change_secret.py:117
#: accounts/serializers/automations/change_secret.py:152
#: ops/serializers/job.py:80 terminal/serializers/session.py:54
msgid "Is success"
msgstr "Is success"

#: accounts/models/automations/backup_account.py:144
msgid "Account backup execution"
msgstr ""

#: accounts/models/automations/base.py:18
msgid "Account automation task"
msgstr ""

#: accounts/models/automations/base.py:32
msgid "Automation execution"
msgstr ""

#: accounts/models/automations/base.py:33
msgid "Automation executions"
msgstr ""

#: accounts/models/automations/base.py:35
msgid "Can view change secret execution"
msgstr ""

#: accounts/models/automations/base.py:36
msgid "Can add change secret execution"
msgstr ""

#: accounts/models/automations/base.py:38
msgid "Can view gather accounts execution"
msgstr ""

#: accounts/models/automations/base.py:39
msgid "Can add gather accounts execution"
msgstr ""

#: accounts/models/automations/base.py:41
msgid "Can view push account execution"
msgstr ""

#: accounts/models/automations/base.py:42
msgid "Can add push account execution"
msgstr ""

#: accounts/models/automations/base.py:54
msgid "SSH key change strategy"
msgstr ""

#: accounts/models/automations/change_secret.py:15
#: accounts/models/automations/gather_account.py:58
#: accounts/serializers/account/backup.py:40
#: accounts/serializers/automations/change_secret.py:58
#: settings/serializers/auth/ldap.py:100
#: settings/serializers/auth/ldap_ha.py:82 settings/serializers/msg.py:45
msgid "Recipient"
msgstr "Recipients"

#: accounts/models/automations/change_secret.py:22
msgid "Change secret automation"
msgstr ""

#: accounts/models/automations/change_secret.py:39
msgid "Old secret"
msgstr ""

#: accounts/models/automations/change_secret.py:40
msgid "New secret"
msgstr ""

#: accounts/models/automations/change_secret.py:41
msgid "Date started"
msgstr ""

#: accounts/models/automations/change_secret.py:42
#: assets/models/automations/base.py:116 ops/models/base.py:56
#: ops/models/celery.py:90 ops/models/job.py:244
#: terminal/models/applet/host.py:142
msgid "Date finished"
msgstr ""

#: accounts/models/automations/change_secret.py:44
#: assets/models/automations/base.py:113
#: assets/serializers/automations/base.py:39 audits/models.py:208
#: audits/serializers.py:76 ops/models/base.py:49 ops/models/job.py:235
#: terminal/models/applet/applet.py:331 terminal/models/applet/host.py:140
#: terminal/models/component/status.py:30
#: terminal/models/virtualapp/virtualapp.py:99
#: terminal/serializers/applet.py:18 terminal/serializers/applet_host.py:148
#: terminal/serializers/virtualapp.py:35 tickets/models/ticket/general.py:284
#: tickets/serializers/super_ticket.py:13
#: tickets/serializers/ticket/ticket.py:20 xpack/plugins/cloud/models.py:227
#: xpack/plugins/cloud/models.py:294
msgid "Status"
msgstr ""

#: accounts/models/automations/change_secret.py:46
#: accounts/serializers/account/account.py:274
#: accounts/templates/accounts/change_secret_failed_info.html:13
#: assets/const/automation.py:8
#: authentication/templates/authentication/passkey.html:173
#: authentication/views/base.py:42 authentication/views/base.py:43
#: authentication/views/base.py:44 common/const/choices.py:67
#: settings/templates/ldap/_msg_import_ldap_user.html:26
msgid "Error"
msgstr ""

#: accounts/models/automations/change_secret.py:50
msgid "Change secret record"
msgstr ""

#: accounts/models/automations/gather_account.py:14
msgid "Present"
msgstr ""

#: accounts/models/automations/gather_account.py:15
msgid "Date login"
msgstr ""

#: accounts/models/automations/gather_account.py:17
#: accounts/models/automations/push_account.py:15 accounts/models/base.py:65
#: accounts/serializers/account/virtual.py:21 acls/serializers/base.py:19
#: acls/serializers/base.py:50 audits/models.py:188 authentication/forms.py:21
#: authentication/forms.py:23 authentication/models/temp_token.py:9
#: authentication/templates/authentication/_msg_different_city.html:9
#: authentication/templates/authentication/_msg_oauth_bind.html:9
#: terminal/serializers/storage.py:136 users/forms/profile.py:31
#: users/forms/profile.py:114 users/models/user/__init__.py:63
#: users/templates/users/_msg_user_created.html:12
#: xpack/plugins/cloud/serializers/account_attrs.py:26
msgid "Username"
msgstr ""

#: accounts/models/automations/gather_account.py:18
msgid "Address login"
msgstr ""

#: accounts/models/automations/gather_account.py:44
#: accounts/tasks/gather_accounts.py:30
msgid "Gather asset accounts"
msgstr ""

#: accounts/models/automations/gather_account.py:56
msgid "Is sync account"
msgstr "Is sync account"

#: accounts/models/automations/gather_account.py:75
msgid "Gather account automation"
msgstr ""

#: accounts/models/automations/push_account.py:14
msgid "Triggers"
msgstr ""

#: accounts/models/automations/push_account.py:16 acls/models/base.py:41
#: acls/serializers/base.py:57 assets/models/cmd_filter.py:81
#: audits/models.py:92 audits/serializers.py:106
#: authentication/serializers/connect_token_secret.py:119
#: authentication/templates/authentication/_access_key_modal.html:34
#: perms/serializers/permission.py:52 perms/serializers/permission.py:74
#: tickets/serializers/ticket/ticket.py:21
msgid "Action"
msgstr ""

#: accounts/models/automations/push_account.py:58
msgid "Push asset account"
msgstr ""

#: accounts/models/automations/verify_account.py:15
msgid "Verify asset account"
msgstr ""

#: accounts/models/base.py:37 accounts/models/base.py:67
#: accounts/serializers/account/account.py:464
#: accounts/serializers/account/base.py:17
#: accounts/serializers/automations/change_secret.py:47
#: authentication/serializers/connect_token_secret.py:42
#: authentication/serializers/connect_token_secret.py:51
#: terminal/serializers/storage.py:140
msgid "Secret type"
msgstr ""

#: accounts/models/base.py:39 accounts/models/mixins/vault.py:49
#: accounts/serializers/account/base.py:20
#: authentication/models/temp_token.py:10
#: authentication/templates/authentication/_access_key_modal.html:31
#: settings/serializers/auth/radius.py:20
msgid "Secret"
msgstr ""

#: accounts/models/base.py:42
#: accounts/serializers/automations/change_secret.py:41
msgid "Secret strategy"
msgstr ""

#: accounts/models/base.py:44 accounts/serializers/account/template.py:34
#: accounts/serializers/automations/change_secret.py:46
msgid "Password rules"
msgstr ""

#: accounts/models/base.py:64 accounts/serializers/account/virtual.py:20
#: acls/models/base.py:35 acls/models/base.py:96 acls/models/command_acl.py:21
#: acls/serializers/base.py:35 assets/models/asset/common.py:100
#: assets/models/asset/common.py:166 assets/models/cmd_filter.py:21
#: assets/models/domain.py:19 assets/models/label.py:18
#: assets/models/platform.py:15 assets/models/platform.py:94
#: assets/serializers/asset/common.py:169 assets/serializers/platform.py:157
#: assets/serializers/platform.py:277
#: authentication/backends/passkey/models.py:10
#: authentication/models/ssh_key.py:12
#: authentication/serializers/connect_token_secret.py:113
#: authentication/serializers/connect_token_secret.py:169 labels/models.py:11
#: ops/mixin.py:28 ops/models/adhoc.py:19 ops/models/celery.py:15
#: ops/models/celery.py:81 ops/models/job.py:145 ops/models/playbook.py:28
#: ops/models/variable.py:9 ops/serializers/job.py:19
#: ops/serializers/variable.py:20 orgs/models.py:82
#: perms/models/asset_permission.py:61 rbac/models/role.py:29
#: rbac/serializers/role.py:28 settings/models.py:35 settings/models.py:184
#: settings/serializers/msg.py:89 settings/serializers/terminal.py:9
#: terminal/models/applet/applet.py:34 terminal/models/component/endpoint.py:13
#: terminal/models/component/endpoint.py:112
#: terminal/models/component/storage.py:26 terminal/models/component/task.py:13
#: terminal/models/component/terminal.py:85
#: terminal/models/virtualapp/provider.py:10
#: terminal/models/virtualapp/virtualapp.py:19 tickets/api/ticket.py:87
#: users/forms/profile.py:32 users/models/group.py:13
#: users/models/preference.py:11 users/models/user/__init__.py:64
#: xpack/plugins/cloud/models.py:34 xpack/plugins/cloud/models.py:310
#: xpack/plugins/cloud/serializers/task.py:75
msgid "Name"
msgstr ""

#: accounts/models/base.py:69
msgid "Privileged"
msgstr ""

#: accounts/models/base.py:70 assets/models/automations/base.py:21
#: assets/models/cmd_filter.py:39 assets/models/label.py:22
#: authentication/serializers/connect_token_secret.py:117
#: terminal/models/applet/applet.py:41
#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:269
msgid "Is active"
msgstr "Active"

#: accounts/models/template.py:18
msgid "Auto push"
msgstr ""

#: accounts/models/template.py:21
msgid "Platforms"
msgstr ""

#: accounts/models/template.py:23
msgid "Push params"
msgstr ""

#: accounts/models/template.py:26 xpack/plugins/cloud/models.py:391
msgid "Account template"
msgstr ""

#: accounts/models/template.py:31
msgid "Can view asset account template secret"
msgstr ""

#: accounts/models/virtual.py:13
msgid "Alias"
msgstr ""

#: accounts/models/virtual.py:14
msgid "Secret from login"
msgstr ""

#: accounts/models/virtual.py:18
msgid "Virtual account"
msgstr ""

#: accounts/models/virtual.py:28
msgid "Same with user"
msgstr ""

#: accounts/models/virtual.py:37
msgid "Non-asset account, Input username/password on connect"
msgstr ""

#: accounts/models/virtual.py:38
msgid "The account username name same with user on connect"
msgstr ""

#: accounts/models/virtual.py:39
msgid ""
"Connect asset without using a username and password, and it only supports "
"web-based and custom-type assets"
msgstr ""

#: accounts/notifications.py:12 accounts/notifications.py:37
msgid "Notification of account backup route task results"
msgstr ""

#: accounts/notifications.py:22 accounts/notifications.py:46
msgid ""
"{} - The account backup passage task has been completed. See the attachment "
"for details"
msgstr ""

#: accounts/notifications.py:25
msgid ""
"{} - The account backup passage task has been completed: the encryption "
"password has not been set - please go to personal information -> Basic file "
"encryption password for preference settings"
msgstr ""

#: accounts/notifications.py:56
msgid "Notification of implementation result of encryption change plan"
msgstr ""

#: accounts/notifications.py:67
msgid ""
"{} - The encryption change task has been completed. See the attachment for "
"details"
msgstr ""

#: accounts/notifications.py:71
msgid ""
"{} - The encryption change task has been completed: the encryption password "
"has not been set - please go to personal information -> set encryption "
"password in preferences"
msgstr ""

#: accounts/notifications.py:83
msgid "Gather account change information"
msgstr ""

#: accounts/notifications.py:105
msgid "Change secret or push account failed information"
msgstr ""

#: accounts/serializers/account/account.py:31
msgid "Push now"
msgstr ""

#: accounts/serializers/account/account.py:36
msgid "Params"
msgstr ""

#: accounts/serializers/account/account.py:40
msgid "Exist policy"
msgstr ""

#: accounts/serializers/account/account.py:181
#: accounts/serializers/account/account.py:340
msgid "Account already exists"
msgstr ""

#: accounts/serializers/account/account.py:206 assets/models/label.py:21
#: assets/models/platform.py:95 assets/serializers/asset/common.py:145
#: assets/serializers/cagegory.py:12 assets/serializers/platform.py:172
#: assets/serializers/platform.py:278 perms/serializers/user_permission.py:26
#: settings/models.py:37 tickets/models/ticket/apply_application.py:13
#: users/models/preference.py:12
msgid "Category"
msgstr ""

#: accounts/serializers/account/account.py:207
#: accounts/serializers/automations/base.py:55 acls/models/command_acl.py:24
#: acls/serializers/command_acl.py:19 assets/models/automations/base.py:20
#: assets/models/cmd_filter.py:74 assets/models/platform.py:96
#: assets/serializers/asset/common.py:146 assets/serializers/platform.py:159
#: assets/serializers/platform.py:171 audits/serializers.py:75
#: audits/serializers.py:192
#: authentication/serializers/connect_token_secret.py:126 ops/models/job.py:153
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:40
#: terminal/models/component/storage.py:58
#: terminal/models/component/storage.py:152 terminal/serializers/applet.py:29
#: terminal/serializers/session.py:25 terminal/serializers/storage.py:281
#: terminal/serializers/storage.py:294 tickets/models/comment.py:26
#: tickets/models/flow.py:42 tickets/models/ticket/apply_application.py:16
#: tickets/models/ticket/general.py:276 tickets/serializers/flow.py:25
#: tickets/serializers/ticket/ticket.py:19
msgid "Type"
msgstr ""

#: accounts/serializers/account/account.py:222
msgid "Asset not found"
msgstr ""

#: accounts/serializers/account/account.py:263
msgid "Has secret"
msgstr ""

#: accounts/serializers/account/account.py:273 ops/models/celery.py:84
#: tickets/models/comment.py:13 tickets/models/ticket/general.py:49
#: tickets/models/ticket/general.py:280 tickets/serializers/super_ticket.py:14
msgid "State"
msgstr ""

#: accounts/serializers/account/account.py:275
msgid "Changed"
msgstr ""

#: accounts/serializers/account/account.py:285
#: accounts/serializers/automations/base.py:22 acls/models/base.py:97
#: acls/templates/acls/asset_login_reminder.html:9
#: assets/models/automations/base.py:19
#: assets/serializers/automations/base.py:20 assets/serializers/domain.py:34
#: assets/serializers/platform.py:180 assets/serializers/platform.py:212
#: authentication/api/connection_token.py:410 ops/models/base.py:17
#: ops/models/job.py:155 ops/serializers/job.py:20
#: perms/serializers/permission.py:46
#: terminal/templates/terminal/_msg_command_execute_alert.html:16
#: xpack/plugins/cloud/manager.py:89
msgid "Assets"
msgstr ""

#: accounts/serializers/account/account.py:390
#, python-format
msgid "Asset does not support this secret type: %s"
msgstr ""

#: accounts/serializers/account/account.py:422
msgid "Account has exist"
msgstr ""

#: accounts/serializers/account/account.py:459
#: accounts/serializers/account/base.py:93
#: accounts/serializers/account/template.py:83
#: assets/serializers/asset/common.py:418
msgid "Spec info"
msgstr ""

#: accounts/serializers/account/account.py:465
#: authentication/serializers/connect_token_secret.py:159
#: authentication/templates/authentication/_access_key_modal.html:30
#: perms/models/perm_node.py:21 users/serializers/group.py:33
msgid "ID"
msgstr ""

#: accounts/serializers/account/account.py:475 acls/serializers/base.py:116
#: acls/templates/acls/asset_login_reminder.html:8
#: acls/templates/acls/user_login_reminder.html:8
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54
#: audits/models.py:90 audits/models.py:172 audits/models.py:271
#: audits/serializers.py:193 authentication/models/connection_token.py:32
#: authentication/models/ssh_key.py:22 authentication/models/sso_token.py:16
#: notifications/models/notification.py:12
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:63
#: rbac/builtin.py:125 rbac/models/rolebinding.py:49
#: rbac/serializers/rolebinding.py:17 terminal/backends/command/models.py:16
#: terminal/models/session/session.py:30 terminal/models/session/sharing.py:34
#: terminal/notifications.py:157 terminal/notifications.py:217
#: 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 tickets/serializers/flow.py:15
#: users/const.py:14 users/models/user/__init__.py:291
#: users/models/user/__init__.py:318
msgid "User"
msgstr ""

#: accounts/serializers/account/account.py:476
#: authentication/templates/authentication/_access_key_modal.html:33
#: terminal/notifications.py:159 terminal/notifications.py:219
msgid "Date"
msgstr ""

#: accounts/serializers/account/backup.py:20
msgid "Zip Encrypt Password"
msgstr ""

#: accounts/serializers/account/backup.py:38
#: accounts/serializers/automations/base.py:38
msgid "Executions"
msgstr "Executions"

#: accounts/serializers/account/backup.py:41
#: accounts/serializers/automations/change_secret.py:59
msgid "Currently only mail sending is supported"
msgstr ""

#: accounts/serializers/account/backup.py:43
msgid "Asset type"
msgstr ""

#: accounts/serializers/account/base.py:33 terminal/serializers/storage.py:149
msgid "Passphrase"
msgstr ""

#: accounts/serializers/account/base.py:96
msgid ""
"* If no username is required for authentication, enter null.  For AD "
"accounts, use the format username@domain."
msgstr ""

#: accounts/serializers/account/template.py:13
msgid "Password length"
msgstr ""

#: accounts/serializers/account/template.py:14
#: settings/serializers/security.py:44
msgid "Lowercase"
msgstr ""

#: accounts/serializers/account/template.py:15
#: settings/serializers/security.py:41
msgid "Uppercase"
msgstr ""

#: accounts/serializers/account/template.py:16
msgid "Digit"
msgstr ""

#: accounts/serializers/account/template.py:17
msgid "Special symbol"
msgstr ""

#: accounts/serializers/account/template.py:19
msgid "Exclude symbol"
msgstr ""

#: accounts/serializers/account/template.py:24
msgid ""
"length is the length of the password, and the range is 8 to 30.\n"
"lowercase indicates whether the password contains lowercase letters, \n"
"uppercase indicates whether it contains uppercase letters,\n"
"digit indicates whether it contains numbers, and symbol indicates whether it "
"contains special symbols.\n"
"exclude_symbols is used to exclude specific symbols. You can fill in the "
"symbol characters to be excluded (up to 16). \n"
"If you do not need to exclude symbols, you can leave it blank.\n"
"default: {\"length\": 16, \"lowercase\": true, \"uppercase\": true, "
"\"digit\": true, \"symbol\": true, \"exclude_symbols\": \"\"}"
msgstr ""

#: accounts/serializers/account/template.py:49
msgid "Secret generation strategy for account creation"
msgstr ""

#: accounts/serializers/account/template.py:50
msgid "Whether to automatically push the account to the asset"
msgstr ""

#: accounts/serializers/account/template.py:53
msgid ""
"Associated platform, you can configure push parameters. If not associated, "
"default parameters will be used"
msgstr ""

#: accounts/serializers/account/virtual.py:19 assets/models/cmd_filter.py:40
#: assets/models/cmd_filter.py:88 common/db/models.py:36 ops/models/adhoc.py:25
#: ops/models/job.py:163 ops/models/playbook.py:31 rbac/models/role.py:37
#: settings/models.py:40 terminal/models/applet/applet.py:46
#: terminal/models/applet/applet.py:332 terminal/models/applet/host.py:143
#: terminal/models/component/endpoint.py:27
#: terminal/models/component/endpoint.py:122
#: terminal/models/session/session.py:47
#: terminal/models/virtualapp/virtualapp.py:28 tickets/models/comment.py:32
#: tickets/models/ticket/general.py:298 users/models/user/__init__.py:98
#: xpack/plugins/cloud/models.py:41 xpack/plugins/cloud/models.py:124
msgid "Comment"
msgstr "Description"

#: accounts/serializers/account/virtual.py:24
msgid ""
"Current only support login from AD/LDAP. Secret priority: Same account in "
"asset secret > Login secret > Manual input. <br/ >For security, please set "
"config CACHE_LOGIN_PASSWORD_ENABLED to true"
msgstr ""

#: accounts/serializers/automations/base.py:23
#: assets/models/asset/common.py:176 assets/serializers/asset/common.py:172
#: assets/serializers/automations/base.py:21 ops/serializers/job.py:21
#: perms/serializers/permission.py:47
msgid "Nodes"
msgstr ""

#: accounts/serializers/automations/base.py:24
msgid "Periodic perform"
msgstr "Periodic"

#: accounts/serializers/automations/base.py:45
msgid "Name already exists"
msgstr ""

#: accounts/serializers/automations/base.py:54
#: assets/models/automations/base.py:118
#: assets/serializers/automations/base.py:38
msgid "Automation snapshot"
msgstr ""

#: accounts/serializers/automations/change_secret.py:44
msgid "SSH Key strategy"
msgstr ""

#: accounts/serializers/automations/change_secret.py:57
msgid "Please enter your account username"
msgstr ""

#: accounts/serializers/automations/change_secret.py:62
msgid ""
"Secret parameter settings, currently only effective for assets of the host "
"type."
msgstr ""

#: accounts/serializers/automations/change_secret.py:124
#: assets/models/automations/base.py:127
msgid "Automation task execution"
msgstr ""

# msgid "Success"
# msgstr ""
#: accounts/signal_handlers.py:48
#, python-format
msgid "Push related accounts to assets: %s, by system"
msgstr ""

#: accounts/signal_handlers.py:57
#, python-format
msgid "Add account: %s"
msgstr ""

#: accounts/signal_handlers.py:59
#, python-format
msgid "Delete account: %s"
msgstr ""

#: accounts/tasks/automation.py:32
msgid "Account execute automation"
msgstr ""

#: accounts/tasks/automation.py:35
msgid ""
"Unified execution entry for account automation tasks: when the system "
"performs tasks \n"
"        such as account push, password change, account verification, account "
"collection, \n"
"        and gateway account verification, all tasks are executed through "
"this unified entry"
msgstr ""

#: accounts/tasks/automation.py:64 accounts/tasks/automation.py:72
msgid "Execute automation record"
msgstr ""

#: accounts/tasks/automation.py:67
msgid "When manually executing password change records, this task is used"
msgstr ""

#: accounts/tasks/automation.py:96
msgid "Clean change secret and push record period"
msgstr ""

#: accounts/tasks/automation.py:98
msgid ""
"The system will periodically clean up unnecessary password change and push "
"records, \n"
"        including their associated change tasks, execution logs, assets, and "
"accounts. When any \n"
"        of these associated items are deleted, the corresponding password "
"change and push records \n"
"        become invalid. Therefore, to maintain a clean and efficient "
"database, the system will \n"
"        clean up expired records at 2 a.m daily, based on the interval "
"specified by \n"
"        PERM_EXPIRED_CHECK_PERIODIC in the config.txt configuration file. "
"This periodic cleanup \n"
"        mechanism helps free up storage space and enhances the security and "
"overall performance \n"
"        of data management"
msgstr ""

#: accounts/tasks/backup_account.py:26
msgid "Execute account backup plan"
msgstr ""

#: accounts/tasks/backup_account.py:29
msgid "When performing scheduled or manual account backups, this task is used"
msgstr ""

#: accounts/tasks/gather_accounts.py:32 assets/tasks/automation.py:27
#: orgs/tasks.py:11 terminal/tasks.py:33
msgid "Unused"
msgstr ""

#: accounts/tasks/gather_accounts.py:36
msgid "Gather assets accounts"
msgstr ""

#: accounts/tasks/push_account.py:16 accounts/tasks/push_account.py:27
msgid "Push accounts to assets"
msgstr ""

#: accounts/tasks/push_account.py:19
msgid ""
"When creating or modifying an account requires account push, this task is "
"executed"
msgstr ""

#: accounts/tasks/remove_account.py:28
msgid ""
"When clicking \"Sync deletion\" in 'Console - Gather Account - Gathered "
"accounts' this \n"
"        task will be executed"
msgstr ""

#: accounts/tasks/remove_account.py:50
msgid "Clean historical accounts"
msgstr ""

#: accounts/tasks/remove_account.py:52
msgid ""
"Each time an asset account is updated, a historical account is generated, so "
"it is \n"
"        necessary to clean up the asset account history. The system will "
"clean up excess account \n"
"        records at 2 a.m. daily based on the configuration in the \"System "
"settings - Features - \n"
"        Account storage - Record limit"
msgstr ""

#: accounts/tasks/remove_account.py:89
msgid "Remove historical accounts that are out of range."
msgstr ""

#: accounts/tasks/template.py:11
msgid "Template sync info to related accounts"
msgstr ""

#: accounts/tasks/template.py:14
msgid ""
"When clicking 'Sync new secret to accounts' in 'Console - Account - "
"Templates - \n"
"        Accounts' this task will be executed"
msgstr ""

#: accounts/tasks/vault.py:32
msgid "Sync secret to vault"
msgstr ""

#: accounts/tasks/vault.py:34
msgid ""
"When clicking 'Sync' in 'System Settings - Features - Account Storage' this "
"task will be executed"
msgstr ""

#: accounts/tasks/verify_account.py:49
msgid "Verify asset account availability"
msgstr ""

#: accounts/tasks/verify_account.py:52
msgid ""
"When clicking 'Test' in 'Console - Asset details - Accounts' this task will "
"be executed"
msgstr ""

#: accounts/tasks/verify_account.py:58
msgid "Verify accounts connectivity"
msgstr ""

#: accounts/templates/accounts/asset_account_change_info.html:10
msgid "Added account"
msgstr ""

#: accounts/templates/accounts/asset_account_change_info.html:13
msgid "Deleted account"
msgstr ""

#: accounts/templates/accounts/change_secret_failed_info.html:3
#: terminal/serializers/task.py:10
msgid "Task name"
msgstr ""

#: accounts/templates/accounts/change_secret_failed_info.html:4
msgid "Task execution id"
msgstr ""

#: accounts/templates/accounts/change_secret_failed_info.html:5
msgid "Respectful"
msgstr ""

#: accounts/templates/accounts/change_secret_failed_info.html:6
msgid ""
"Hello! The following is the failure of changing the password of your assets "
"or pushing the account. Please check and handle it in time."
msgstr ""

#: accounts/utils.py:52
msgid ""
"If the password starts with {{` and ends with }} `, then the password is not "
"allowed."
msgstr ""

#: accounts/utils.py:59
msgid "private key invalid or passphrase error"
msgstr ""

#: acls/apps.py:7
msgid "App Acls"
msgstr "ACLs"

#: acls/const.py:6 audits/const.py:36 terminal/const.py:11 tickets/const.py:44
#: tickets/templates/tickets/approve_check_password.html:47
msgid "Reject"
msgstr ""

#: acls/const.py:7 audits/const.py:33 terminal/const.py:9
msgid "Accept"
msgstr ""

#: acls/const.py:8 audits/const.py:34
msgid "Review"
msgstr ""

#: acls/const.py:9
msgid "Warn"
msgstr ""

#: acls/const.py:10
msgid "Notify"
msgstr ""

#: acls/const.py:11
msgid "Notify and warn"
msgstr ""

#: acls/models/base.py:37 assets/models/cmd_filter.py:76
#: terminal/models/component/endpoint.py:115 xpack/plugins/cloud/models.py:316
msgid "Priority"
msgstr ""

#: acls/models/base.py:38 assets/models/cmd_filter.py:76
#: terminal/models/component/endpoint.py:116 xpack/plugins/cloud/models.py:317
msgid "1-100, the lower the value will be match first"
msgstr ""

#: acls/models/base.py:42 assets/models/cmd_filter.py:86
#: authentication/serializers/connect_token_secret.py:91
msgid "Reviewers"
msgstr ""

#: acls/models/base.py:43 assets/models/asset/common.py:178
#: authentication/models/access_key.py:25
#: authentication/models/connection_token.py:53
#: authentication/models/ssh_key.py:13
#: authentication/templates/authentication/_access_key_modal.html:32
#: perms/models/asset_permission.py:82 terminal/models/component/endpoint.py:28
#: terminal/models/component/endpoint.py:123
#: terminal/models/session/sharing.py:29 terminal/serializers/terminal.py:44
#: tickets/const.py:36
msgid "Active"
msgstr "Active"

#: acls/models/base.py:81 perms/serializers/permission.py:42
#: tickets/models/flow.py:23 users/models/preference.py:16
#: users/serializers/group.py:21 users/serializers/user.py:424
msgid "Users"
msgstr ""

#: acls/models/base.py:98 assets/models/automations/base.py:17
#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:148
#: assets/serializers/asset/common.py:417 perms/serializers/permission.py:55
#: perms/serializers/user_permission.py:75 rbac/tree.py:35
msgid "Accounts"
msgstr ""

#: acls/models/command_acl.py:16 assets/models/cmd_filter.py:60
#: audits/serializers.py:38 ops/serializers/job.py:79 terminal/const.py:88
#: terminal/models/session/session.py:43 terminal/serializers/command.py:18
#: terminal/templates/terminal/_msg_command_alert.html:12
#: terminal/templates/terminal/_msg_command_execute_alert.html:10
#: terminal/templates/terminal/_msg_command_warning.html:23
msgid "Command"
msgstr ""

#: acls/models/command_acl.py:17 assets/models/cmd_filter.py:59
#: xpack/plugins/cloud/models.py:357
msgid "Regex"
msgstr ""

#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
#: settings/models.py:185 settings/serializers/feature.py:21
#: settings/serializers/msg.py:78 xpack/plugins/license/models.py:30
msgid "Content"
msgstr ""

#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
msgid "One command per line"
msgstr ""

#: acls/models/command_acl.py:27 assets/models/cmd_filter.py:80
msgid "Ignore case"
msgstr ""

#: acls/models/command_acl.py:33 acls/models/command_acl.py:97
#: acls/serializers/command_acl.py:29
#: authentication/serializers/connect_token_secret.py:88
#: terminal/templates/terminal/_msg_command_warning.html:14
msgid "Command group"
msgstr ""

#: acls/models/command_acl.py:86
msgid "The generated regular expression is incorrect: {}"
msgstr ""

#: acls/models/command_acl.py:103
#: terminal/templates/terminal/_msg_command_warning.html:12
msgid "Command acl"
msgstr ""

#: acls/models/command_acl.py:112 tickets/const.py:12
msgid "Command confirm"
msgstr ""

#: acls/models/connect_method.py:10
msgid "Connect methods"
msgstr ""

#: acls/models/connect_method.py:13
msgid "Connect method acl"
msgstr ""

#: acls/models/login_acl.py:11 acls/models/login_asset_acl.py:9
#: acls/serializers/login_acl.py:15 acls/serializers/login_asset_acl.py:13
msgid "Rule"
msgstr ""

#: acls/models/login_acl.py:14
msgid "Login acl"
msgstr ""

#: acls/models/login_acl.py:27 tickets/const.py:11
msgid "Login confirm"
msgstr ""

#: acls/models/login_asset_acl.py:12
msgid "Login asset acl"
msgstr ""

#: acls/models/login_asset_acl.py:22 tickets/const.py:13
msgid "Login asset confirm"
msgstr ""

#: acls/notifications.py:12
msgid "User login reminder"
msgstr ""

#: acls/notifications.py:42
msgid "User login alert for asset"
msgstr ""

#: acls/serializers/base.py:11 acls/serializers/login_acl.py:11
msgid "With * indicating a match all. "
msgstr ""

#: acls/serializers/base.py:26
msgid ""
"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 ""

#: acls/serializers/base.py:41 assets/serializers/asset/host.py:19
msgid "IP/Host"
msgstr ""

#: acls/serializers/base.py:91
msgid "Recipients"
msgstr ""

#: acls/serializers/base.py:103 tickets/serializers/ticket/ticket.py:77
msgid "The organization `{}` does not exist"
msgstr ""

#: acls/serializers/base.py:109
msgid "None of the reviewers belong to Organization `{}`"
msgstr ""

#: acls/serializers/rules/rules.py:20
#: xpack/plugins/cloud/serializers/task.py:150
msgid "IP address invalid: `{}`"
msgstr ""

#: acls/serializers/rules/rules.py:25
msgid ""
"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 ""

#: acls/serializers/rules/rules.py:33
#: authentication/templates/authentication/_msg_oauth_bind.html:12
#: authentication/templates/authentication/_msg_rest_password_success.html:8
#: authentication/templates/authentication/_msg_rest_public_key_success.html:8
#: common/drf/renders/base.py:150 xpack/plugins/cloud/models.py:392
msgid "IP"
msgstr ""

#: acls/serializers/rules/rules.py:35
msgid "Time Period"
msgstr ""

#: acls/templates/acls/asset_login_reminder.html:3
#: acls/templates/acls/user_login_reminder.html:3
#: authentication/templates/authentication/_msg_rest_password_success.html:2
#: authentication/templates/authentication/_msg_rest_public_key_success.html:2
#: perms/templates/perms/_msg_permed_items_expire.html:3
#: users/templates/users/_msg_reset_mfa.html:4
msgid "Dear"
msgstr ""

#: acls/templates/acls/asset_login_reminder.html:5
msgid ""
"We would like to inform you that a user has recently logged into the "
"following asset:"
msgstr ""

#: acls/templates/acls/asset_login_reminder.html:6
msgid "Asset details"
msgstr ""

#: acls/templates/acls/asset_login_reminder.html:14
#: acls/templates/acls/user_login_reminder.html:15
msgid ""
"Please review the login activity to ensure the security and proper usage of "
"the asset. If you did not authorize this login or if you notice any "
"suspicious activity, please take the necessary actions immediately."
msgstr ""

#: acls/templates/acls/asset_login_reminder.html:16
#: acls/templates/acls/user_login_reminder.html:16
msgid "Thank you for your attention to this matter"
msgstr ""

#: acls/templates/acls/user_login_reminder.html:5
msgid "We would like to inform you that a user has recently logged:"
msgstr ""

#: acls/templates/acls/user_login_reminder.html:6
msgid "User details"
msgstr ""

#: acls/templates/acls/user_login_reminder.html:10 audits/models.py:194
#: audits/models.py:265
#: authentication/templates/authentication/_msg_different_city.html:11
#: tickets/models/ticket/login_confirm.py:11
msgid "Login city"
msgstr ""

#: acls/templates/acls/user_login_reminder.html:11 audits/models.py:197
#: audits/models.py:266 audits/serializers.py:90
msgid "User agent"
msgstr ""

#: assets/api/asset/asset.py:194
msgid "Cannot create asset directly, you should create a host or other"
msgstr ""

#: assets/api/asset/asset.py:198
msgid "The number of assets exceeds the limit of 5000"
msgstr ""

#: assets/api/domain.py:67
msgid "Number required"
msgstr ""

#: assets/api/node.py:58
msgid "You can't update the root node name"
msgstr ""

#: assets/api/node.py:65
msgid "You can't delete the root node ({})"
msgstr ""

#: assets/api/node.py:68
msgid "Deletion failed and the node contains assets"
msgstr ""

#: assets/api/tree.py:48 assets/serializers/node.py:42
msgid "The same level node name cannot be the same"
msgstr ""

#: assets/apps.py:9
msgid "App Assets"
msgstr "Assets"

#: assets/automations/base/manager.py:188
msgid "{} disabled"
msgstr ""

#: assets/automations/base/manager.py:251
msgid "  - Platform {} ansible disabled"
msgstr ""

#: assets/automations/base/manager.py:324
msgid ">>> Task preparation phase"
msgstr ""

#: assets/automations/base/manager.py:327
#, python-brace-format
msgid ">>> Executing tasks in batches, total {runner_count}"
msgstr ""

#: assets/automations/base/manager.py:329
msgid ">>> Start executing tasks"
msgstr ""

#: assets/automations/base/manager.py:331
msgid ">>> No tasks need to be executed"
msgstr ""

#: assets/automations/base/manager.py:336
#, python-brace-format
msgid ">>> Begin executing batch {index} of tasks"
msgstr ""

#: assets/automations/ping_gateway/manager.py:33
#: authentication/models/connection_token.py:131
msgid "No account"
msgstr ""

#: assets/automations/ping_gateway/manager.py:36
msgid "Asset, {}, using account {}"
msgstr ""

#: assets/automations/ping_gateway/manager.py:55
#, python-brace-format
msgid "Unable to connect to port {port} on {address}"
msgstr ""

#: assets/automations/ping_gateway/manager.py:58
#: authentication/middleware.py:94 xpack/plugins/cloud/providers/fc.py:47
msgid "Authentication failed"
msgstr ""

#: assets/automations/ping_gateway/manager.py:60
#: assets/automations/ping_gateway/manager.py:86 terminal/const.py:104
msgid "Connect failed"
msgstr ""

#: assets/automations/ping_gateway/manager.py:118
msgid ">>> Start executing the task to test gateway connectivity"
msgstr ""

#: assets/const/automation.py:6 audits/const.py:6 audits/const.py:47
#: audits/signal_handlers/activity_log.py:62 common/utils/ip/geoip/utils.py:31
#: common/utils/ip/geoip/utils.py:37 common/utils/ip/utils.py:104
msgid "Unknown"
msgstr ""

#: assets/const/automation.py:7
msgid "OK"
msgstr ""

#: assets/const/automation.py:12
msgid "Ping"
msgstr ""

#: assets/const/automation.py:13
msgid "Ping gateway"
msgstr ""

#: assets/const/automation.py:14
msgid "Gather facts"
msgstr ""

#: assets/const/base.py:32 audits/const.py:58
#: terminal/serializers/applet_host.py:32 users/models/user/_auth.py:32
msgid "Disabled"
msgstr ""

#: assets/const/base.py:33 settings/serializers/basic.py:8
#: users/serializers/preference/koko.py:19
#: users/serializers/preference/luna.py:85
msgid "Basic"
msgstr ""

#: assets/const/base.py:34 assets/const/protocol.py:298
#: 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:17 settings/serializers/auth/sms.py:76
#: settings/serializers/feature.py:71 settings/serializers/feature.py:84
#: settings/serializers/msg.py:30 terminal/models/component/endpoint.py:14
#: terminal/serializers/applet.py:17 xpack/plugins/cloud/manager.py:89
#: xpack/plugins/cloud/serializers/account_attrs.py:72
msgid "Host"
msgstr ""

#: assets/const/category.py:11 assets/models/asset/device.py:8
msgid "Device"
msgstr ""

#: assets/const/category.py:13
msgid "Cloud service"
msgstr "Cloud"

#: assets/const/category.py:14 assets/models/asset/gpt.py:11
#: assets/models/asset/web.py:16 audits/const.py:45
#: terminal/models/applet/applet.py:28 users/const.py:64
msgid "Web"
msgstr ""

#: assets/const/category.py:15 common/sdk/sms/endpoint.py:20
msgid "Custom type"
msgstr "Custom"

#: assets/const/cloud.py:7
msgid "Public cloud"
msgstr ""

#: assets/const/cloud.py:8
msgid "Private cloud"
msgstr ""

#: assets/const/cloud.py:9
msgid "Kubernetes"
msgstr ""

#: assets/const/device.py:7 terminal/models/applet/applet.py:27
#: tickets/const.py:9
msgid "General"
msgstr ""

#: assets/const/device.py:8
msgid "Switch"
msgstr ""

#: assets/const/device.py:9
msgid "Router"
msgstr ""

#: assets/const/device.py:10
msgid "Firewall"
msgstr ""

#: assets/const/gpt.py:7
msgid "ChatGPT"
msgstr ""

#: assets/const/host.py:12 rbac/tree.py:28 rbac/tree.py:66
#: xpack/plugins/cloud/const.py:69
msgid "Other"
msgstr ""

#: assets/const/protocol.py:46
msgid "Old SSH version"
msgstr ""

#: assets/const/protocol.py:47
msgid "Old SSH version like openssh 5.x or 6.x"
msgstr ""

#: assets/const/protocol.py:53
msgid "Netcat help text"
msgstr ""
"Use netcat (nc) as a proxy tool to forward connections from the proxy server "
"to the target host. This is useful in environments that do not support the "
"SSH native proxy option (-W), or when more flexibility and timeout control "
"are needed."

#: assets/const/protocol.py:64
msgid "SFTP root"
msgstr ""

#: assets/const/protocol.py:66
#, python-brace-format
msgid ""
"SFTP root directory, Support variable: <br>- ${ACCOUNT} The connected "
"account username <br>- ${HOME} The home directory of the connected account "
"<br>- ${USER} The username of the user"
msgstr ""

#: assets/const/protocol.py:81
msgid "Console"
msgstr ""

#: assets/const/protocol.py:82
msgid "Connect to console session"
msgstr ""

#: assets/const/protocol.py:86
msgid "Any"
msgstr ""

#: assets/const/protocol.py:88 rbac/tree.py:62
#: settings/serializers/security.py:232
msgid "Security"
msgstr ""

#: assets/const/protocol.py:89
msgid ""
"Security layer to use for the connection:<br>Any<br>Automatically select the "
"security mode based on the security protocols supported by both the client "
"and the server<br>RDP<br>Legacy RDP encryption. This mode is generally only "
"used for older Windows servers or in cases where a standard Windows login "
"screen is desired<br>TLS<br>RDP authentication and encryption implemented "
"via TLS.<br>NLA<br>This mode uses TLS encryption and requires the username "
"and password to be given in advance"
msgstr ""

#: assets/const/protocol.py:106
msgid "AD domain"
msgstr ""

#: assets/const/protocol.py:121
msgid "Username prompt"
msgstr ""

#: assets/const/protocol.py:122
msgid "We will send username when we see this prompt"
msgstr ""

#: assets/const/protocol.py:127
msgid "Password prompt"
msgstr ""

#: assets/const/protocol.py:128
msgid "We will send password when we see this prompt"
msgstr ""

#: assets/const/protocol.py:133
msgid "Success prompt"
msgstr ""

#: assets/const/protocol.py:134
msgid "We will consider login success when we see this prompt"
msgstr ""

#: assets/const/protocol.py:145 assets/models/asset/database.py:11
#: settings/serializers/msg.py:49
msgid "Use SSL"
msgstr ""

#: assets/const/protocol.py:180
msgid "SYSDBA"
msgstr ""

#: assets/const/protocol.py:181
msgid "Connect as SYSDBA"
msgstr ""

#: assets/const/protocol.py:196
msgid ""
"SQL Server version, Different versions have different connection drivers"
msgstr ""

#: assets/const/protocol.py:226
msgid "Auth source"
msgstr ""

#: assets/const/protocol.py:227
msgid "The database to authenticate against"
msgstr ""

#: assets/const/protocol.py:232 authentication/models/connection_token.py:43
msgid "Connect options"
msgstr ""

#: assets/const/protocol.py:233
msgid "The connection specific options eg. retryWrites=false&retryReads=false"
msgstr ""

#: assets/const/protocol.py:245
msgid "Auth username"
msgstr ""

#: assets/const/protocol.py:268
msgid "Safe mode"
msgstr ""

#: assets/const/protocol.py:270
msgid ""
"When safe mode is enabled, some operations will be disabled, such as: New "
"tab, right click, visit other website, etc."
msgstr ""

#: assets/const/protocol.py:275 assets/models/asset/web.py:9
#: assets/serializers/asset/info/spec.py:16
msgid "Autofill"
msgstr ""

#: assets/const/protocol.py:283 assets/models/asset/web.py:10
msgid "Username selector"
msgstr ""

#: assets/const/protocol.py:288 assets/models/asset/web.py:11
msgid "Password selector"
msgstr ""

#: assets/const/protocol.py:293 assets/models/asset/web.py:12
msgid "Submit selector"
msgstr ""

#: assets/const/protocol.py:316
msgid "API mode"
msgstr ""

#: assets/const/types.py:249
msgid "All types"
msgstr ""

#: assets/const/web.py:7
msgid "Website"
msgstr ""

#: assets/exceptions.py:12
msgid "This function is not supported temporarily"
msgstr ""

#: assets/models/asset/cloud.py:11
msgid "Cloud"
msgstr ""

#: assets/models/asset/common.py:101 assets/models/platform.py:16
#: settings/serializers/auth/radius.py:18 settings/serializers/auth/sms.py:77
#: settings/serializers/msg.py:31 terminal/serializers/storage.py:133
#: xpack/plugins/cloud/serializers/account_attrs.py:73
msgid "Port"
msgstr ""

#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:170
#: settings/serializers/terminal.py:10
msgid "Address"
msgstr ""

#: assets/models/asset/common.py:169 assets/models/platform.py:149
#: authentication/backends/passkey/models.py:12
#: authentication/serializers/connect_token_secret.py:118
#: perms/serializers/user_permission.py:25 xpack/plugins/cloud/models.py:387
msgid "Platform"
msgstr ""

#: assets/models/asset/common.py:173 assets/models/domain.py:22
msgid "Zone"
msgstr ""

#: assets/models/asset/common.py:179 assets/serializers/asset/common.py:419
#: assets/serializers/asset/host.py:11
msgid "Gathered info"
msgstr ""

#: assets/models/asset/common.py:180 assets/serializers/asset/custom.py:14
msgid "Custom info"
msgstr ""

#: assets/models/asset/common.py:365
msgid "Can refresh asset hardware info"
msgstr ""

#: assets/models/asset/common.py:366
msgid "Can test asset connectivity"
msgstr ""

#: assets/models/asset/common.py:367
msgid "Can match asset"
msgstr ""

#: assets/models/asset/common.py:368
msgid "Can change asset nodes"
msgstr ""

#: assets/models/asset/custom.py:8
msgid "Custom asset"
msgstr ""

#: assets/models/asset/database.py:12
msgid "CA cert"
msgstr ""

#: assets/models/asset/database.py:13
msgid "Client cert"
msgstr ""

#: assets/models/asset/database.py:14
msgid "Client key"
msgstr ""

#: assets/models/asset/database.py:15
msgid "Allow invalid cert"
msgstr ""

#: assets/models/asset/database.py:18
msgid "Postgresql SSL mode"
msgstr ""

#: assets/models/asset/gpt.py:8 settings/serializers/feature.py:114
msgid "Proxy"
msgstr ""

#: assets/models/automations/base.py:18 assets/models/cmd_filter.py:32
#: assets/models/node.py:553 ops/models/job.py:156
#: perms/models/asset_permission.py:72 tickets/models/ticket/apply_asset.py:14
#: xpack/plugins/cloud/models.py:388
msgid "Node"
msgstr ""

#: assets/models/automations/base.py:22 ops/models/job.py:238
#: ops/serializers/job.py:23 settings/serializers/auth/sms.py:108
msgid "Parameters"
msgstr ""

#: assets/models/automations/base.py:29 assets/models/automations/base.py:111
msgid "Automation task"
msgstr ""

#: assets/models/automations/base.py:104
msgid "Asset automation task"
msgstr ""

#: assets/models/automations/base.py:114 assets/models/cmd_filter.py:41
#: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:242
#: users/models/user/__init__.py:321
msgid "Date created"
msgstr ""

#: assets/models/automations/gather_facts.py:15
msgid "Gather asset facts"
msgstr ""

#: assets/models/automations/ping.py:15
msgid "Ping asset"
msgstr ""

#: assets/models/base.py:19 terminal/notifications.py:243
msgid "Connectivity"
msgstr ""

#: assets/models/base.py:21 authentication/models/temp_token.py:12
msgid "Date verified"
msgstr ""

#: assets/models/cmd_filter.py:28 perms/models/asset_permission.py:66
#: users/models/group.py:25 users/models/user/__init__.py:70
msgid "User group"
msgstr ""

#: assets/models/cmd_filter.py:42 common/db/models.py:35
#: users/models/user/__init__.py:149
msgid "Date updated"
msgstr ""

#: assets/models/cmd_filter.py:44 assets/models/cmd_filter.py:91
#: common/db/models.py:32 users/models/user/__init__.py:108
#: users/serializers/group.py:32
msgid "Created by"
msgstr ""

#: assets/models/cmd_filter.py:52
msgid "Command filter"
msgstr ""

#: assets/models/cmd_filter.py:66
msgid "Deny"
msgstr ""

#: assets/models/cmd_filter.py:67
msgid "Allow"
msgstr ""

#: assets/models/cmd_filter.py:68
msgid "Reconfirm"
msgstr ""

#: assets/models/cmd_filter.py:72
msgid "Filter"
msgstr ""

#: assets/models/cmd_filter.py:95
msgid "Command filter rule"
msgstr ""

#: assets/models/favorite_asset.py:17
msgid "Favorite asset"
msgstr ""

#: assets/models/gateway.py:34 assets/serializers/domain.py:19
msgid "Gateway"
msgstr ""

#: assets/models/label.py:15 rbac/const.py:6
msgid "System"
msgstr ""

#: assets/models/label.py:19 assets/models/node.py:539
#: assets/serializers/cagegory.py:11 assets/serializers/cagegory.py:18
#: assets/serializers/cagegory.py:24
#: authentication/models/connection_token.py:29
#: authentication/serializers/connect_token_secret.py:125
#: common/serializers/common.py:86 labels/models.py:12 settings/models.py:36
#: users/models/preference.py:13
msgid "Value"
msgstr ""

#: assets/models/label.py:40 assets/serializers/cagegory.py:10
#: assets/serializers/cagegory.py:17 assets/serializers/cagegory.py:23
#: assets/serializers/platform.py:158
#: authentication/serializers/connect_token_secret.py:124
#: common/serializers/common.py:85 labels/serializers.py:45
#: settings/serializers/msg.py:90
msgid "Label"
msgstr ""

#: assets/models/my_asset.py:12 assets/serializers/my_asset.py:16
msgid "Custom Name"
msgstr ""

#: assets/models/my_asset.py:13 assets/serializers/my_asset.py:17
msgid "Custom Comment"
msgstr ""

#: assets/models/my_asset.py:18 rbac/tree.py:54
msgid "My assets"
msgstr ""

#: assets/models/node.py:168
msgid "New node"
msgstr ""

#: assets/models/node.py:467 audits/backends/db.py:85 audits/backends/db.py:86
msgid "empty"
msgstr ""

#: assets/models/node.py:538 perms/models/perm_node.py:28
msgid "Key"
msgstr ""

#: assets/models/node.py:540 assets/serializers/node.py:20
msgid "Full value"
msgstr ""

#: assets/models/node.py:544 perms/models/perm_node.py:30
msgid "Parent key"
msgstr ""

#: assets/models/node.py:556
msgid "Can match node"
msgstr ""

#: assets/models/platform.py:17
msgid "Primary"
msgstr ""

#: assets/models/platform.py:18 ops/models/variable.py:20
msgid "Required"
msgstr ""

#: assets/models/platform.py:19 assets/serializers/platform.py:160
#: terminal/models/component/storage.py:28
#: xpack/plugins/cloud/providers/nutanix.py:30
msgid "Default"
msgstr ""

#: assets/models/platform.py:20
msgid "Public"
msgstr ""

#: assets/models/platform.py:21 assets/serializers/platform.py:84
#: settings/serializers/settings.py:95
#: users/templates/users/reset_password.html:29
msgid "Setting"
msgstr ""

#: assets/models/platform.py:38 audits/const.py:59
#: authentication/backends/passkey/models.py:11 settings/models.py:39
#: terminal/serializers/applet_host.py:33 users/models/user/_auth.py:33
msgid "Enabled"
msgstr ""

#: assets/models/platform.py:39
msgid "Ansible config"
msgstr ""

#: assets/models/platform.py:41 assets/serializers/platform.py:35
msgid "Ping enabled"
msgstr ""

#: assets/models/platform.py:42 assets/serializers/platform.py:36
msgid "Ping method"
msgstr ""

#: assets/models/platform.py:43
msgid "Ping params"
msgstr ""

#: assets/models/platform.py:45 assets/models/platform.py:69
#: assets/serializers/platform.py:38
msgid "Gather facts enabled"
msgstr ""

#: assets/models/platform.py:47 assets/models/platform.py:71
#: assets/serializers/platform.py:42
msgid "Gather facts method"
msgstr ""

#: assets/models/platform.py:49 assets/models/platform.py:73
msgid "Gather facts params"
msgstr ""

#: assets/models/platform.py:51 assets/serializers/platform.py:52
msgid "Change secret enabled"
msgstr ""

#: assets/models/platform.py:53 assets/serializers/platform.py:56
msgid "Change secret method"
msgstr ""

#: assets/models/platform.py:55
msgid "Change secret params"
msgstr ""

#: assets/models/platform.py:57 assets/serializers/platform.py:59
msgid "Push account enabled"
msgstr ""

#: assets/models/platform.py:59 assets/serializers/platform.py:63
msgid "Push account method"
msgstr ""

#: assets/models/platform.py:61
msgid "Push account params"
msgstr ""

#: assets/models/platform.py:63 assets/serializers/platform.py:45
msgid "Verify account enabled"
msgstr ""

#: assets/models/platform.py:65 assets/serializers/platform.py:49
msgid "Verify account method"
msgstr ""

#: assets/models/platform.py:67
msgid "Verify account params"
msgstr ""

#: assets/models/platform.py:75
msgid "Remove account enabled"
msgstr ""

#: assets/models/platform.py:77 assets/serializers/platform.py:73
msgid "Remove account method"
msgstr ""

#: assets/models/platform.py:79
msgid "Remove account params"
msgstr ""

#: assets/models/platform.py:97 tickets/models/ticket/general.py:301
msgid "Meta"
msgstr ""

#: assets/models/platform.py:98 labels/models.py:13
msgid "Internal"
msgstr "Builtin"

#: assets/models/platform.py:102 assets/serializers/platform.py:170
msgid "Charset"
msgstr ""

#: assets/models/platform.py:104 assets/serializers/platform.py:208
msgid "Gateway enabled"
msgstr ""

#: assets/models/platform.py:106 assets/serializers/platform.py:201
msgid "Su enabled"
msgstr "Switch account enabled"

#: assets/models/platform.py:107 assets/serializers/platform.py:176
msgid "Su method"
msgstr "Switch account method"

#: assets/models/platform.py:108 assets/serializers/platform.py:179
msgid "Custom fields"
msgstr ""

#: assets/models/utils.py:18
#, python-format
msgid "%(value)s is not an even number"
msgstr ""

#: assets/notifications.py:12
msgid ""
"Batch update platform in assets, skipping assets that do not meet platform "
"type"
msgstr ""

#: assets/serializers/asset/common.py:36 assets/serializers/platform.py:152
msgid "Protocols, format is [\"protocol/port\"]"
msgstr ""

#: assets/serializers/asset/common.py:38
msgid "Protocol, format is name/port"
msgstr ""

#: assets/serializers/asset/common.py:107
msgid ""
"Accounts, format [{\"name\": \"x\", \"username\": \"x\", \"secret\": \"x\", "
"\"secret_type\": \"password\"}]"
msgstr ""

#: assets/serializers/asset/common.py:135
msgid ""
"Node path, format [\"/org_name/node_name\"], if node not exist, will create "
"it"
msgstr ""

#: assets/serializers/asset/common.py:147 assets/serializers/platform.py:173
#: authentication/serializers/connect_token_secret.py:30
#: authentication/serializers/connect_token_secret.py:75
#: perms/models/asset_permission.py:76 perms/serializers/permission.py:56
#: perms/serializers/user_permission.py:74 xpack/plugins/cloud/models.py:390
#: xpack/plugins/cloud/serializers/task.py:35
msgid "Protocols"
msgstr ""

#: assets/serializers/asset/common.py:149
#: assets/serializers/asset/common.py:171
msgid "Node path"
msgstr ""

#: assets/serializers/asset/common.py:168
#: assets/serializers/asset/common.py:420
msgid "Auto info"
msgstr ""

#: assets/serializers/asset/common.py:265
msgid "Platform not exist"
msgstr ""

#: assets/serializers/asset/common.py:301
msgid "port out of range (0-65535)"
msgstr ""

#: assets/serializers/asset/common.py:308
msgid "Protocol is required: {}"
msgstr ""

#: assets/serializers/asset/common.py:347
msgid "Invalid data"
msgstr ""

#: assets/serializers/asset/database.py:13
msgid "Default database"
msgstr ""

#: assets/serializers/asset/database.py:23
msgid "CA cert help text"
msgstr ""
"The Common Name (CN) field has been deprecated. Please use the Subject "
"Alternative Name (SAN) field to verify the domain name according to RFC 5280 "
"for better security."

#: assets/serializers/asset/database.py:24
msgid "Postgresql ssl model help text"
msgstr ""
"Prefer: I don't care about encryption, but I wish to pay the overhead of "
"encryption if the server supports it.\n"
"Require: I want my data to be encrypted, and I accept the overhead. I trust "
"that the network will make sure I always connect to the server I want.\n"
"Verify CA: I want my data encrypted, and I accept the overhead. I want to be "
"sure that I connect to a server that I trust.\n"
"Verify Full: I want my data encrypted, and I accept the overhead. I want to "
"be sure that I connect to a server I trust, and that it's the one I specify."

#: assets/serializers/asset/gpt.py:20
msgid ""
"If the server cannot directly connect to the API address, you need set up an "
"HTTP proxy. e.g. http(s)://host:port"
msgstr ""

#: assets/serializers/asset/gpt.py:24
msgid "HTTP proxy"
msgstr ""

#: assets/serializers/asset/gpt.py:31
msgid "Proxy must start with http:// or https://"
msgstr ""

#: assets/serializers/asset/info/gathered.py:6
msgid "Vendor"
msgstr ""

#: assets/serializers/asset/info/gathered.py:7
msgid "Model"
msgstr ""

#: assets/serializers/asset/info/gathered.py:8
#: tickets/models/ticket/general.py:300
msgid "Serial number"
msgstr ""

#: assets/serializers/asset/info/gathered.py:9
msgid "CPU model"
msgstr ""

#: assets/serializers/asset/info/gathered.py:10
msgid "CPU count"
msgstr ""

#: assets/serializers/asset/info/gathered.py:11
msgid "CPU cores"
msgstr ""

#: assets/serializers/asset/info/gathered.py:12
msgid "CPU vcpus"
msgstr ""

#: assets/serializers/asset/info/gathered.py:13
msgid "Memory"
msgstr ""

#: assets/serializers/asset/info/gathered.py:14
msgid "Disk total"
msgstr ""

#: assets/serializers/asset/info/gathered.py:16
#: authentication/serializers/connect_token_secret.py:115
msgid "OS"
msgstr ""

#: assets/serializers/asset/info/gathered.py:17
msgid "OS version"
msgstr ""

#: assets/serializers/asset/info/gathered.py:18
msgid "OS arch"
msgstr ""

#: assets/serializers/cagegory.py:13
msgid "Constraints"
msgstr ""

#: assets/serializers/cagegory.py:19
msgid "Types"
msgstr ""

#: assets/serializers/domain.py:21
msgid ""
"A gateway is a network proxy for a zone, and when connecting assets within "
"the zone, the connection is routed through the gateway."
msgstr ""

#: assets/serializers/domain.py:24 assets/serializers/platform.py:181
#: orgs/serializers.py:13 perms/serializers/permission.py:50
msgid "Assets amount"
msgstr ""

#: assets/serializers/gateway.py:19
msgid "The platform must start with Gateway"
msgstr ""

#: assets/serializers/gateway.py:28 common/validators.py:34
msgid "This field must be unique."
msgstr ""

#: assets/serializers/node.py:17
msgid "value"
msgstr ""

#: assets/serializers/node.py:31
msgid "Can't contains: /"
msgstr ""

#: assets/serializers/platform.py:35
msgid "Enable asset detection"
msgstr ""

#: assets/serializers/platform.py:39
msgid "Enable asset information collection"
msgstr ""

#: assets/serializers/platform.py:46
msgid "Enable account verification"
msgstr ""

#: assets/serializers/platform.py:53
msgid "Enable account secret auto change"
msgstr ""

#: assets/serializers/platform.py:60
msgid "Enable account auto push"
msgstr ""

#: assets/serializers/platform.py:66
msgid "Gather accounts enabled"
msgstr ""

#: assets/serializers/platform.py:67
msgid "Enable account collection"
msgstr ""

#: assets/serializers/platform.py:70
msgid "Gather accounts method"
msgstr ""

#: assets/serializers/platform.py:76
msgid "Remove accounts enabled"
msgstr ""

#: assets/serializers/platform.py:77
msgid "Enable account remove"
msgstr ""

#: assets/serializers/platform.py:85
msgid "Port from addr"
msgstr ""

#: assets/serializers/platform.py:97
msgid ""
"This protocol is primary, and it must be set when adding assets. "
"Additionally, there can only be one primary protocol."
msgstr ""

#: assets/serializers/platform.py:102
msgid "This protocol is required, and it must be set when adding assets."
msgstr ""

#: assets/serializers/platform.py:105
msgid ""
"This protocol is default, when adding assets, it will be displayed by "
"default."
msgstr ""

#: assets/serializers/platform.py:108
msgid "This protocol is public, asset will show this protocol to user"
msgstr ""

#: assets/serializers/platform.py:161
msgid "Help text"
msgstr ""

#: assets/serializers/platform.py:162
msgid "Choices"
msgstr ""

#: assets/serializers/platform.py:174
msgid "Automation"
msgstr ""

#: assets/serializers/platform.py:203
msgid ""
"Login with account when accessing assets, then automatically switch to "
"another, similar to logging in with a regular account and then switching to "
"root"
msgstr ""

#: assets/serializers/platform.py:209
msgid "Assets can be connected using a zone gateway"
msgstr ""

#: assets/serializers/platform.py:211
msgid "Default Domain"
msgstr ""

#: assets/serializers/platform.py:233
msgid "type is required"
msgstr ""

#: assets/serializers/platform.py:248
msgid "Protocols is required"
msgstr ""

#: assets/signal_handlers/asset.py:26 assets/tasks/ping.py:39
msgid "Test assets connectivity "
msgstr ""

#: assets/signal_handlers/asset.py:36
msgid "Gather asset hardware info"
msgstr ""

#: assets/tasks/automation.py:25
msgid "Asset execute automation"
msgstr ""

#: assets/tasks/gather_facts.py:22 assets/tasks/gather_facts.py:32
msgid "Gather assets facts"
msgstr ""

#: assets/tasks/gather_facts.py:25
msgid ""
"When clicking 'Refresh hardware info' in 'Console - Asset Details - Basic' "
"this task \n"
"        will be executed"
msgstr ""

#: assets/tasks/gather_facts.py:44
msgid "Update assets hardware info: "
msgstr ""

#: assets/tasks/gather_facts.py:52
msgid "Update node asset hardware information: "
msgstr ""

#: assets/tasks/nodes_amount.py:16
msgid "Check the amount of assets under the node"
msgstr ""

#: assets/tasks/nodes_amount.py:18
msgid ""
"Manually verifying asset quantities updates the asset count for nodes under "
"the \n"
"        current organization. This task will be called in the following two "
"cases: when updating \n"
"        nodes and when the number of nodes exceeds 100"
msgstr ""

#: assets/tasks/nodes_amount.py:34
msgid ""
"The task of self-checking is already running and cannot be started repeatedly"
msgstr ""

#: assets/tasks/nodes_amount.py:40
msgid "Periodic check the amount of assets under the node"
msgstr ""

#: assets/tasks/nodes_amount.py:42
msgid ""
"Schedule the check_node_assets_amount_task to periodically update the asset "
"count of \n"
"        all nodes under all organizations"
msgstr ""

#: assets/tasks/ping.py:20 assets/tasks/ping.py:30
msgid "Test assets connectivity"
msgstr ""

#: assets/tasks/ping.py:24
msgid ""
"When clicking 'Test Asset Connectivity' in 'Asset Details - Basic Settings' "
"this task will be executed"
msgstr ""

#: assets/tasks/ping.py:46
msgid "Test if the assets under the node are connectable "
msgstr ""

#: assets/tasks/ping_gateway.py:19 assets/tasks/ping_gateway.py:29
#: assets/tasks/ping_gateway.py:38
msgid "Test gateways connectivity"
msgstr ""

#: assets/tasks/ping_gateway.py:23
msgid ""
"When clicking 'Test Connection' in 'Domain Details - Gateway' this task will "
"be executed"
msgstr ""

#: assets/tasks/utils.py:16
msgid "Asset has been disabled, skipped: {}"
msgstr ""

#: assets/tasks/utils.py:20
msgid "Asset may not be support ansible, skipped: {}"
msgstr ""

#: assets/tasks/utils.py:38
msgid "For security, do not push user {}"
msgstr ""

#: assets/tasks/utils.py:54
msgid "No assets matched, stop task"
msgstr ""

#: audits/apps.py:9
msgid "App Audits"
msgstr "Activities"

#: audits/backends/db.py:17
msgid "The text content is too long. Use Elasticsearch to store operation logs"
msgstr ""

#: audits/backends/db.py:78
msgid "labels"
msgstr "Labels"

#: audits/backends/db.py:79
msgid "operate_log_id"
msgstr ""

#: audits/backends/db.py:111 ops/models/variable.py:19
msgid "Tips"
msgstr ""

#: audits/const.py:12
msgid "Mkdir"
msgstr ""

#: audits/const.py:13
msgid "Rmdir"
msgstr ""

#: audits/const.py:14 audits/const.py:25
#: authentication/templates/authentication/_access_key_modal.html:65
#: rbac/tree.py:270
msgid "Delete"
msgstr ""

#: audits/const.py:15
msgid "Upload"
msgstr ""

#: audits/const.py:16
msgid "Rename"
msgstr ""

#: audits/const.py:17
msgid "Symlink"
msgstr ""

#: audits/const.py:18 audits/const.py:28
#: ops/templates/ops/celery_task_log.html:86
#: terminal/api/session/session.py:153
msgid "Download"
msgstr ""

#: audits/const.py:19
msgid "Rename dir"
msgstr ""

#: audits/const.py:23 rbac/tree.py:268 terminal/api/session/session.py:281
#: terminal/templates/terminal/_msg_command_warning.html:18
#: terminal/templates/terminal/_msg_session_sharing.html:10
#: xpack/plugins/cloud/manager.py:90
msgid "View"
msgstr ""

#: audits/const.py:26
#: authentication/templates/authentication/_access_key_modal.html:22
#: rbac/tree.py:267
msgid "Create"
msgstr ""

#: audits/const.py:29
msgid "Connect"
msgstr ""

#: audits/const.py:30 authentication/templates/authentication/login.html:329
#: authentication/templates/authentication/login.html:401
#: templates/_header_bar.html:101
msgid "Login"
msgstr "Sign in"

#: audits/const.py:31 ops/const.py:9
msgid "Change password"
msgstr ""

#: audits/const.py:35 rbac/tree.py:56
msgid "Notifications"
msgstr ""

#: audits/const.py:37 tickets/const.py:45
msgid "Approve"
msgstr ""

#: audits/const.py:38
#: authentication/templates/authentication/_access_key_modal.html:155
#: authentication/templates/authentication/_mfa_confirm_modal.html:53
#: templates/_modal.html:22 tickets/const.py:43
msgid "Close"
msgstr ""

#: audits/const.py:41 ops/models/celery.py:85
#: terminal/models/session/sharing.py:128 tickets/const.py:25
#: xpack/plugins/cloud/const.py:67
msgid "Finished"
msgstr ""

#: audits/const.py:46 settings/serializers/terminal.py:6
#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:182
#: terminal/models/virtualapp/provider.py:14 terminal/serializers/session.py:57
#: terminal/serializers/session.py:113
msgid "Terminal"
msgstr ""

#: audits/const.py:51 audits/models.py:132
msgid "Operate log"
msgstr ""

#: audits/const.py:52
msgid "Session log"
msgstr ""

#: audits/const.py:53
msgid "Login log"
msgstr ""

#: audits/const.py:54 rbac/tree.py:64 terminal/models/applet/host.py:144
#: terminal/models/component/task.py:22
#: xpack/plugins/cloud/serializers/account.py:77
msgid "Task"
msgstr ""

#: audits/const.py:60
msgid "-"
msgstr ""

#: audits/handler.py:128
msgid "Yes"
msgstr ""

#: audits/handler.py:128
msgid "No"
msgstr ""

#: audits/models.py:47 rbac/tree.py:67
msgid "Job audit log"
msgstr ""

#: audits/models.py:56 audits/models.py:100 audits/models.py:175
#: terminal/models/session/session.py:39 terminal/models/session/sharing.py:113
msgid "Remote addr"
msgstr ""

#: audits/models.py:61 audits/serializers.py:60
msgid "Operate"
msgstr ""

#: audits/models.py:63
msgid "Filename"
msgstr ""

#: audits/models.py:66
msgid "Can Download"
msgstr ""

#: audits/models.py:67 terminal/backends/command/models.py:21
#: terminal/models/session/replay.py:9 terminal/models/session/sharing.py:20
#: terminal/models/session/sharing.py:95 terminal/serializers/command.py:19
#: terminal/templates/terminal/_msg_command_alert.html:10
#: terminal/templates/terminal/_msg_command_warning.html:17
#: tickets/models/ticket/command_confirm.py:15
msgid "Session"
msgstr ""

#: audits/models.py:70
msgid "File transfer log"
msgstr ""

#: audits/models.py:94 audits/serializers.py:108
msgid "Resource Type"
msgstr ""

#: audits/models.py:95 audits/models.py:98 audits/models.py:144
#: audits/serializers.py:107 labels/serializers.py:46
msgid "Resource"
msgstr ""

#: audits/models.py:101 audits/models.py:147 audits/models.py:177
#: terminal/serializers/command.py:75
msgid "Datetime"
msgstr ""

#: audits/models.py:140
msgid "Activity type"
msgstr ""

#: audits/models.py:150
msgid "Detail"
msgstr ""

#: audits/models.py:153
msgid "Detail ID"
msgstr ""

#: audits/models.py:157
msgid "Activity log"
msgstr ""

#: audits/models.py:173
msgid "Change by"
msgstr ""

#: audits/models.py:183
msgid "Password change log"
msgstr ""

#: audits/models.py:190 audits/models.py:267
msgid "Login type"
msgstr ""

#: audits/models.py:192 audits/models.py:263
#: tickets/models/ticket/login_confirm.py:10
msgid "Login IP"
msgstr ""

#: audits/models.py:200 audits/serializers.py:74
#: authentication/templates/authentication/_mfa_confirm_modal.html:14
#: users/forms/profile.py:63 users/models/user/__init__.py:86
#: users/serializers/profile.py:70
msgid "MFA"
msgstr ""

#: audits/models.py:210
#: authentication/templates/authentication/_msg_different_city.html:10
#: tickets/models/ticket/login_confirm.py:12
msgid "Login Date"
msgstr ""

#: audits/models.py:212 audits/models.py:268
msgid "Auth backend"
msgstr ""

#: audits/models.py:256
msgid "User login log"
msgstr ""

#: audits/models.py:264
msgid "Session key"
msgstr ""

#: audits/models.py:269
msgid "Login date"
msgstr ""

#: audits/models.py:300
msgid "User session"
msgstr ""

#: audits/models.py:302
msgid "Offline user session"
msgstr ""

#: audits/serializers.py:33 ops/models/adhoc.py:24 ops/models/base.py:16
#: ops/models/base.py:53 ops/models/celery.py:87 ops/models/job.py:154
#: ops/models/job.py:241 ops/models/playbook.py:30 ops/models/variable.py:17
#: terminal/models/session/sharing.py:25
msgid "Creator"
msgstr ""

#: audits/serializers.py:39 ops/models/base.py:52 ops/models/job.py:240
#: xpack/plugins/cloud/manager.py:99
msgid "Summary"
msgstr ""

#: audits/serializers.py:40 ops/serializers/celery.py:33
msgid "Execution cycle"
msgstr ""

#: audits/serializers.py:91
msgid "Reason display"
msgstr ""

#: audits/serializers.py:92 audits/serializers.py:206
msgid "Auth backend display"
msgstr ""

#: audits/serializers.py:156
#, python-format
msgid "%s %s this resource"
msgstr ""

#: audits/serializers.py:194 authentication/models/connection_token.py:47
#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:80
#: tickets/models/ticket/apply_application.py:31
#: tickets/models/ticket/apply_asset.py:20 users/models/user/__init__.py:105
msgid "Date expired"
msgstr ""

#: audits/signal_handlers/activity_log.py:26
#, python-format
msgid "User %s use account %s login asset %s"
msgstr ""

#: audits/signal_handlers/activity_log.py:34
#, python-format
msgid "User %s login system %s"
msgstr ""

#: audits/signal_handlers/activity_log.py:64
#, python-format
msgid "User %s perform a task for this resource: %s"
msgstr ""

#: audits/signal_handlers/login_log.py:33
msgid "SSH Key"
msgstr ""

#: audits/signal_handlers/login_log.py:35 settings/serializers/auth/sso.py:13
msgid "SSO"
msgstr ""

#: audits/signal_handlers/login_log.py:36
msgid "Auth Token"
msgstr ""

#: audits/signal_handlers/login_log.py:37 authentication/notifications.py:73
#: authentication/views/login.py:78 notifications/backends/__init__.py:11
#: settings/serializers/auth/wecom.py:11 settings/serializers/auth/wecom.py:16
#: users/models/user/__init__.py:129 users/models/user/_source.py:19
msgid "WeCom"
msgstr ""

#: audits/signal_handlers/login_log.py:38 authentication/views/feishu.py:97
#: authentication/views/login.py:90 notifications/backends/__init__.py:14
#: settings/serializers/auth/feishu.py:12
#: settings/serializers/auth/feishu.py:14 users/models/user/__init__.py:135
#: users/models/user/_source.py:21
msgid "FeiShu"
msgstr ""

#: audits/signal_handlers/login_log.py:40 authentication/views/login.py:102
#: authentication/views/slack.py:79 notifications/backends/__init__.py:16
#: settings/serializers/auth/slack.py:11 settings/serializers/auth/slack.py:13
#: users/models/user/__init__.py:141 users/models/user/_source.py:23
msgid "Slack"
msgstr ""

#: audits/signal_handlers/login_log.py:41 authentication/views/dingtalk.py:151
#: authentication/views/login.py:84 notifications/backends/__init__.py:12
#: settings/serializers/auth/dingtalk.py:11 users/models/user/__init__.py:132
#: users/models/user/_source.py:20
msgid "DingTalk"
msgstr ""

#: audits/signal_handlers/login_log.py:42
#: authentication/models/temp_token.py:16
msgid "Temporary token"
msgstr ""

#: audits/signal_handlers/login_log.py:43 authentication/views/login.py:108
#: settings/serializers/auth/passkey.py:8
#: settings/serializers/auth/passkey.py:11
msgid "Passkey"
msgstr ""

#: audits/tasks.py:132
msgid "Clean audits session task log"
msgstr ""

#: audits/tasks.py:134
msgid ""
"Since the system generates login logs, operation logs, file upload logs, "
"activity \n"
"        logs, Celery execution logs, session recordings, command records, "
"and password change \n"
"        logs, it will perform cleanup of records that exceed the time limit "
"according to the \n"
"        'Tasks - Regular clean-up' in the system settings at 2 a.m daily"
msgstr ""

#: audits/tasks.py:154
msgid "Upload FTP file to external storage"
msgstr ""

#: audits/tasks.py:156
msgid ""
"If SERVER_REPLAY_STORAGE is configured, files uploaded through file "
"management will be \n"
"        synchronized to external storage"
msgstr ""

#: authentication/api/access_key.py:39
msgid "Access keys can be created at most 10"
msgstr ""

#: authentication/api/common.py:34 settings/serializers/auth/sms.py:122
#, python-format
msgid "The value in the parameter must contain %s"
msgstr ""

#: authentication/api/confirm.py:50
msgid "This action require verify your MFA"
msgstr ""

#: authentication/api/connection_token.py:265
msgid "Reusable connection token is not allowed, global setting not enabled"
msgstr ""

#: authentication/api/connection_token.py:379
msgid "Anonymous account is not supported for this asset"
msgstr ""

#: authentication/api/connection_token.py:399
msgid "Account not found"
msgstr ""

#: authentication/api/connection_token.py:402
msgid "Permission expired"
msgstr ""

#: authentication/api/connection_token.py:435
msgid "ACL action is reject: {}({})"
msgstr ""

#: authentication/api/connection_token.py:439
msgid "ACL action is review"
msgstr ""

#: authentication/api/mfa.py:161
msgid "Current user not support mfa type: {}"
msgstr ""

#: authentication/api/password.py:33 terminal/api/session/session.py:334
#: users/views/profile/reset.py:63
msgid "User does not exist: {}"
msgstr ""

#: authentication/api/password.py:33 users/views/profile/reset.py:166
msgid "No user matched"
msgstr ""

#: authentication/api/password.py:37
msgid ""
"The user is from {}, please go to the corresponding system to change the "
"password"
msgstr ""

#: authentication/api/password.py:65
#: authentication/templates/authentication/login.html:393
#: users/templates/users/forgot_password.html:41
#: users/templates/users/forgot_password.html:42
#: users/templates/users/forgot_password_previewing.html:13
#: users/templates/users/forgot_password_previewing.html:14
msgid "Forgot password"
msgstr ""

#: authentication/apps.py:7
msgid "App Authentication"
msgstr "Authentication"

#: authentication/backends/custom.py:59
#: authentication/backends/oauth2/backends.py:173
msgid "User invalid, disabled or expired"
msgstr ""

#: authentication/backends/drf.py:52
msgid "Invalid token header. No credentials provided."
msgstr ""

#: authentication/backends/drf.py:55
msgid "Invalid token header. Sign string should not contain spaces."
msgstr ""

#: authentication/backends/drf.py:61
msgid ""
"Invalid token header. Sign string should not contain invalid characters."
msgstr ""

#: authentication/backends/drf.py:74
msgid "Invalid token or cache refreshed."
msgstr ""

#: authentication/backends/oidc/views.py:174
msgid "OpenID Error"
msgstr ""

#: authentication/backends/oidc/views.py:175
#: authentication/backends/saml2/views.py:282
msgid "Please check if a user with the same username or email already exists"
msgstr ""

#: authentication/backends/passkey/api.py:37
msgid "Only register passkey for local user"
msgstr ""

#: authentication/backends/passkey/api.py:65
msgid "Auth failed"
msgstr ""

#: authentication/backends/passkey/fido.py:151
msgid "This key is not registered"
msgstr ""

#: authentication/backends/passkey/models.py:13
msgid "Added on"
msgstr ""

#: authentication/backends/passkey/models.py:14
#: authentication/models/access_key.py:26
#: authentication/models/private_token.py:8 authentication/models/ssh_key.py:20
msgid "Date last used"
msgstr ""

#: authentication/backends/passkey/models.py:15
msgid "Credential ID"
msgstr ""

#: authentication/backends/saml2/views.py:281
msgid "SAML2 Error"
msgstr ""

#: authentication/confirm/password.py:16
msgid "Authentication failed password incorrect"
msgstr ""

#: authentication/confirm/relogin.py:10
msgid "Login time has exceeded {} minutes, please login again"
msgstr ""

#: authentication/errors/const.py:18
msgid "Username/password check failed"
msgstr ""

#: authentication/errors/const.py:19
msgid "Password decrypt failed"
msgstr ""

#: authentication/errors/const.py:20
msgid "MFA failed"
msgstr ""

#: authentication/errors/const.py:21
msgid "MFA unset"
msgstr ""

#: authentication/errors/const.py:22
msgid "Username does not exist"
msgstr ""

#: authentication/errors/const.py:23
msgid "Password expired"
msgstr ""

#: authentication/errors/const.py:24
msgid "Disabled or expired"
msgstr ""

#: authentication/errors/const.py:25
msgid "This account is inactive."
msgstr ""

#: authentication/errors/const.py:26
msgid "This account is expired"
msgstr ""

#: authentication/errors/const.py:27
msgid "Auth backend not match"
msgstr ""

#: authentication/errors/const.py:28
msgid "ACL is not allowed"
msgstr ""

#: authentication/errors/const.py:29
msgid "Only local users are allowed"
msgstr ""

#: authentication/errors/const.py:39
msgid "No session found, check your cookie"
msgstr ""

#: authentication/errors/const.py:41
#, 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 ""

#: authentication/errors/const.py:47 authentication/errors/const.py:55
msgid ""
"The account has been locked (please contact admin to unlock it or try again "
"after {} minutes)"
msgstr ""

#: authentication/errors/const.py:51
msgid ""
"The address has been locked (please contact admin to unlock it or try again "
"after {} minutes)"
msgstr ""

#: authentication/errors/const.py:59
#, python-brace-format
msgid ""
"{error}, You can also try {times_try} times (The account will be temporarily "
"locked for {block_time} minutes)"
msgstr ""

#: authentication/errors/const.py:63
msgid "MFA required"
msgstr ""

#: authentication/errors/const.py:64
msgid "MFA not set, please set it first"
msgstr ""

#: authentication/errors/const.py:65
msgid "Login confirm required"
msgstr ""

#: authentication/errors/const.py:66
msgid "Wait login confirm ticket for accept"
msgstr ""

#: authentication/errors/const.py:67
msgid "Login confirm ticket was {}"
msgstr ""

#: authentication/errors/failed.py:149
msgid "Current login is prohibited by ACL rules"
msgstr ""

#: authentication/errors/failed.py:154
msgid "Please enter MFA code"
msgstr ""

#: authentication/errors/failed.py:159
msgid "Please enter SMS code"
msgstr ""

#: authentication/errors/failed.py:164 users/exceptions.py:14
msgid "Phone not set"
msgstr ""

#: authentication/errors/mfa.py:8
msgid "SSO auth closed"
msgstr ""

#: authentication/errors/mfa.py:18 authentication/views/wecom.py:48
msgid "WeCom is already bound"
msgstr ""

#: authentication/errors/mfa.py:23 authentication/views/wecom.py:143
#: authentication/views/wecom.py:185
msgid "WeCom is not bound"
msgstr ""

#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:203
#: authentication/views/dingtalk.py:245
msgid "DingTalk is not bound"
msgstr ""

#: authentication/errors/mfa.py:33 authentication/views/feishu.py:130
msgid "FeiShu is not bound"
msgstr ""

#: authentication/errors/mfa.py:38 authentication/views/lark.py:48
msgid "Lark is not bound"
msgstr ""

#: authentication/errors/mfa.py:43 authentication/views/slack.py:119
msgid "Slack is not bound"
msgstr ""

#: authentication/errors/mfa.py:48
msgid "Your password is invalid"
msgstr ""

#: authentication/errors/mfa.py:53
#, python-format
msgid "Please wait for %s seconds before retry"
msgstr ""

#: authentication/errors/redirect.py:85 authentication/mixins.py:365
msgid "Your password is too simple, please change it for security"
msgstr ""

#: authentication/errors/redirect.py:93 authentication/mixins.py:374
msgid "You should to change your password before login"
msgstr ""

#: authentication/errors/redirect.py:101 authentication/mixins.py:383
msgid "Your password has expired, please reset before logging in"
msgstr ""

#: authentication/forms.py:34
msgid "Auto-login"
msgstr "Remember me"

#: authentication/forms.py:52
msgid "MFA Code"
msgstr ""

#: authentication/forms.py:53
msgid "MFA type"
msgstr ""

#: authentication/forms.py:61
#: authentication/templates/authentication/_captcha_field.html:15
msgid "Captcha"
msgstr ""

#: authentication/forms.py:66 users/forms/profile.py:27
msgid "MFA code"
msgstr ""

#: authentication/forms.py:68
msgid "Dynamic code"
msgstr ""

#: authentication/mfa/base.py:7
msgid "Please input security code"
msgstr ""

#: authentication/mfa/custom.py:20
msgid "MFA Custom code invalid"
msgstr ""

#: authentication/mfa/custom.py:26
msgid "MFA custom verification code"
msgstr ""

#: authentication/mfa/custom.py:56
msgid "MFA custom global enabled, cannot disable"
msgstr ""

#: authentication/mfa/face.py:13
msgid "Face Recognition"
msgstr ""

#: authentication/mfa/face.py:23 authentication/mfa/face.py:25
msgid "Facial comparison failed"
msgstr ""

#: authentication/mfa/face.py:53
msgid "Frontal Face Recognition"
msgstr ""

#: authentication/mfa/otp.py:7
msgid "OTP code invalid, or server time error"
msgstr ""

#: authentication/mfa/otp.py:12
msgid "OTP"
msgstr ""

#: authentication/mfa/otp.py:13
msgid "OTP verification code"
msgstr ""

#: authentication/mfa/otp.py:48
msgid "Virtual OTP based MFA"
msgstr ""

#: authentication/mfa/radius.py:7
msgid "Radius verify code invalid"
msgstr ""

#: authentication/mfa/radius.py:13
msgid "Radius verification code"
msgstr ""

#: authentication/mfa/radius.py:44
msgid "Radius global enabled, cannot disable"
msgstr ""

#: authentication/mfa/sms.py:7
msgid "SMS verify code invalid"
msgstr ""

#: authentication/mfa/sms.py:12 authentication/serializers/password_mfa.py:17
#: authentication/serializers/password_mfa.py:25
#: settings/serializers/auth/sms.py:18 settings/serializers/auth/sms.py:36
#: users/forms/profile.py:103 users/forms/profile.py:108
#: users/templates/users/forgot_password.html:157
#: users/views/profile/reset.py:100
msgid "SMS"
msgstr ""

#: authentication/mfa/sms.py:13
msgid "SMS verification code"
msgstr ""

#: authentication/mfa/sms.py:57
msgid "Set phone number to enable"
msgstr ""

#: authentication/mfa/sms.py:61
msgid "Clear phone number to disable"
msgstr ""

#: authentication/middleware.py:95 settings/utils/ldap.py:691
msgid "Authentication failed (before login check failed): {}"
msgstr ""

#: authentication/mixins.py:82
msgid "User is invalid"
msgstr ""

#: authentication/mixins.py:97
msgid ""
"The administrator has enabled 'Only allow login from user source'. \n"
"            The current user source is {}. Please contact the administrator."
msgstr ""

#: authentication/mixins.py:311
msgid "The MFA type ({}) is not enabled"
msgstr ""

#: authentication/mixins.py:353
msgid "Please change your password"
msgstr ""

#: authentication/models/access_key.py:22
#: terminal/models/component/endpoint.py:113
msgid "IP group"
msgstr ""

#: authentication/models/connection_token.py:38
#: terminal/serializers/storage.py:114
msgid "Account name"
msgstr ""

#: authentication/models/connection_token.py:39
msgid "Input username"
msgstr ""

#: authentication/models/connection_token.py:40
#: authentication/serializers/connection_token.py:18
msgid "Input secret"
msgstr ""

#: authentication/models/connection_token.py:41
#: authentication/serializers/connect_token_secret.py:114
#: settings/serializers/msg.py:28 terminal/models/applet/applet.py:43
#: terminal/models/virtualapp/virtualapp.py:24
#: terminal/serializers/session.py:23 terminal/serializers/session.py:50
#: terminal/serializers/storage.py:71
msgid "Protocol"
msgstr ""

#: authentication/models/connection_token.py:42
msgid "Connect method"
msgstr ""

#: authentication/models/connection_token.py:44
msgid "User display"
msgstr ""

#: authentication/models/connection_token.py:45
msgid "Asset display"
msgstr ""

#: authentication/models/connection_token.py:46
msgid "Reusable"
msgstr ""

#: authentication/models/connection_token.py:51
#: perms/models/asset_permission.py:83
msgid "From ticket"
msgstr ""

#: authentication/models/connection_token.py:58
msgid "Can expire connection token"
msgstr ""

#: authentication/models/connection_token.py:59
msgid "Can reuse connection token"
msgstr ""

#: authentication/models/connection_token.py:61
msgid "Connection token"
msgstr ""

#: authentication/models/connection_token.py:118
msgid "Connection token inactive"
msgstr ""

#: authentication/models/connection_token.py:122
msgid "Connection token expired at: {}"
msgstr ""

#: authentication/models/connection_token.py:125
#: terminal/serializers/session.py:95
msgid "No user or invalid user"
msgstr ""

#: authentication/models/connection_token.py:128
msgid "No asset or inactive asset"
msgstr ""

#: authentication/models/connection_token.py:274
msgid "Can view super connection token secret"
msgstr ""

#: authentication/models/connection_token.py:276
msgid "Super connection token"
msgstr ""

#: authentication/models/private_token.py:11
msgid "Private Token"
msgstr ""

#: authentication/models/ssh_key.py:15 terminal/serializers/storage.py:146
#: users/models/user/__init__.py:93
#: xpack/plugins/cloud/serializers/account_attrs.py:213
msgid "Private key"
msgstr ""

#: authentication/models/ssh_key.py:18 settings/serializers/terminal.py:34
#: users/forms/profile.py:172 users/models/user/__init__.py:96
#: xpack/plugins/cloud/serializers/account_attrs.py:210
msgid "Public key"
msgstr ""

#: authentication/models/sso_token.py:15
msgid "Expired"
msgstr ""

#: authentication/models/sso_token.py:20
msgid "SSO token"
msgstr ""

#: authentication/models/temp_token.py:11
msgid "Verified"
msgstr ""

#: authentication/notifications.py:19
msgid "Different city login reminder"
msgstr ""

#: authentication/notifications.py:52
msgid "binding reminder"
msgstr ""

#: authentication/serializers/connect_token_secret.py:116
msgid "Is builtin"
msgstr "Builtin"

#: authentication/serializers/connect_token_secret.py:120
msgid "Options"
msgstr ""

#: authentication/serializers/connect_token_secret.py:127
#: ops/notifications.py:19 rbac/tree.py:60
msgid "Component"
msgstr ""

#: authentication/serializers/connect_token_secret.py:136
#: perms/serializers/user_permission.py:28 xpack/plugins/cloud/models.py:389
msgid "Domain"
msgstr ""

#: authentication/serializers/connect_token_secret.py:138
msgid "Expired now"
msgstr ""

#: authentication/serializers/connect_token_secret.py:170
#: terminal/models/virtualapp/virtualapp.py:25
msgid "Image name"
msgstr ""

#: authentication/serializers/connect_token_secret.py:171
#: terminal/models/virtualapp/virtualapp.py:27
msgid "Image port"
msgstr ""

#: authentication/serializers/connect_token_secret.py:172
#: terminal/models/virtualapp/virtualapp.py:26
msgid "Image protocol"
msgstr ""

#: authentication/serializers/connection_token.py:16
msgid "Expired time"
msgstr ""

#: authentication/serializers/connection_token.py:20
msgid "Ticket info"
msgstr ""

#: authentication/serializers/connection_token.py:21
#: perms/models/asset_permission.py:77
#: tickets/models/ticket/apply_application.py:28
#: tickets/models/ticket/apply_asset.py:18
msgid "Actions"
msgstr ""

#: authentication/serializers/connection_token.py:42
#: perms/serializers/permission.py:54 perms/serializers/permission.py:75
#: users/serializers/user.py:127 users/serializers/user.py:273
msgid "Is expired"
msgstr "Expired"

#: authentication/serializers/connection_token.py:43
#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:27
msgid "Org name"
msgstr "Organization"

#: authentication/serializers/password_mfa.py:30
#: users/templates/users/forgot_password.html:153
msgid "The {} cannot be empty"
msgstr ""

#: authentication/serializers/ssh_key.py:17
msgid "Automatically Generate Key Pair"
msgstr ""

#: authentication/serializers/ssh_key.py:19
msgid "Import Existing Key Pair"
msgstr ""

#: authentication/serializers/ssh_key.py:31
msgid "Create Type"
msgstr ""

#: authentication/serializers/ssh_key.py:33
msgid ""
"Please download the private key after creation. Each private key can only be "
"downloaded once"
msgstr ""

#: authentication/serializers/ssh_key.py:57 users/forms/profile.py:161
#: users/serializers/profile.py:133 users/serializers/profile.py:160
msgid "Not a valid ssh public key"
msgstr ""

#: authentication/serializers/token.py:22
msgid "Access IP"
msgstr ""

#: authentication/serializers/token.py:92 perms/serializers/permission.py:53
#: perms/serializers/permission.py:76 users/serializers/user.py:128
#: users/serializers/user.py:270
msgid "Is valid"
msgstr "Is Valid"

#: authentication/tasks.py:13
msgid "Clean expired session"
msgstr ""

#: authentication/tasks.py:15
msgid ""
"Since user logins create sessions, the system will clean up expired sessions "
"every 24 hours"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:6
msgid "API key list"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:18
msgid "Using api key sign api header, every requests header difference"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:19
msgid "docs"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:48
msgid "Show"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:66
#: users/const.py:42 users/templates/users/user_verify_mfa.html:36
msgid "Disable"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:67
#: users/const.py:43 users/templates/users/mfa_setting.html:120
#: users/templates/users/mfa_setting.html:158
#: users/templates/users/mfa_setting.html:177
msgid "Enable"
msgstr ""

#: authentication/templates/authentication/_access_key_modal.html:147
msgid "Delete success"
msgstr ""

#: authentication/templates/authentication/_captcha_field.html:8
msgid "Play CAPTCHA as audio file"
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
#: authentication/templates/authentication/auth_fail_flash_message_standalone.html:37
#: templates/_modal.html:23 templates/flash_message_standalone.html:37
#: 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/_msg_different_city.html:3
#: authentication/templates/authentication/_msg_oauth_bind.html:3
#: authentication/templates/authentication/_msg_reset_password.html:3
#: authentication/templates/authentication/_msg_reset_password_code.html:9
#: jumpserver/conf.py:536
#: perms/templates/perms/_msg_item_permissions_expire.html:3
#: tickets/templates/tickets/approve_check_password.html:32
#: users/templates/users/_msg_account_expire_reminder.html:4
#: users/templates/users/_msg_password_expire_reminder.html:4
#: users/templates/users/_msg_reset_ssh_key.html:4
msgid "Hello"
msgstr ""

#: authentication/templates/authentication/_msg_different_city.html:6
msgid "Your account has remote login behavior, please pay attention"
msgstr ""

#: authentication/templates/authentication/_msg_different_city.html:14
msgid ""
"If you suspect that the login behavior is abnormal, please modify the "
"account password in time."
msgstr ""

#: authentication/templates/authentication/_msg_oauth_bind.html:6
msgid "Your account has just been bound to"
msgstr ""

#: authentication/templates/authentication/_msg_oauth_bind.html:17
msgid "If the operation is not your own, unbind and change the password."
msgstr ""

#: authentication/templates/authentication/_msg_reset_password.html:6
msgid ""
"Please click the link below to reset your password, if not your request, "
"concern your account security"
msgstr ""

#: authentication/templates/authentication/_msg_reset_password.html:10
msgid "Click here reset password"
msgstr ""

#: authentication/templates/authentication/_msg_reset_password.html:15
#: users/templates/users/_msg_user_created.html:20
msgid "This link is valid for 1 hour. After it expires"
msgstr ""

#: authentication/templates/authentication/_msg_reset_password.html:16
#: users/templates/users/_msg_user_created.html:21
msgid "request new one"
msgstr ""

#: authentication/templates/authentication/_msg_reset_password_code.html:12
#: terminal/models/session/sharing.py:27 terminal/models/session/sharing.py:97
#: terminal/templates/terminal/_msg_session_sharing.html:12
#: users/forms/profile.py:106 users/templates/users/forgot_password.html:98
msgid "Verify code"
msgstr ""

#: authentication/templates/authentication/_msg_reset_password_code.html:15
msgid ""
"Copy the verification code to the Reset Password page to reset the password."
msgstr ""

#: authentication/templates/authentication/_msg_reset_password_code.html:18
msgid "The validity period of the verification code is one minute"
msgstr ""

#: authentication/templates/authentication/_msg_rest_password_success.html:5
msgid "Your password has just been successfully updated"
msgstr ""

#: authentication/templates/authentication/_msg_rest_password_success.html:9
#: authentication/templates/authentication/_msg_rest_public_key_success.html:9
msgid "Browser"
msgstr ""

#: authentication/templates/authentication/_msg_rest_password_success.html:12
msgid ""
"If the password update was not initiated by you, your account may have "
"security issues"
msgstr ""

#: authentication/templates/authentication/_msg_rest_password_success.html:13
#: authentication/templates/authentication/_msg_rest_public_key_success.html:13
msgid "If you have any questions, you can contact the administrator"
msgstr ""

#: authentication/templates/authentication/_msg_rest_public_key_success.html:5
msgid "Your public key has just been successfully updated"
msgstr ""

#: authentication/templates/authentication/_msg_rest_public_key_success.html:12
msgid ""
"If the public key update was not initiated by you, your account may have "
"security issues"
msgstr ""

#: authentication/templates/authentication/auth_fail_flash_message_standalone.html:28
#: templates/flash_message_standalone.html:28 tickets/const.py:18
msgid "Cancel"
msgstr ""

#: authentication/templates/authentication/face_capture.html:44
msgid "Retry"
msgstr ""

#: authentication/templates/authentication/login.html:308
msgid ""
"Configuration file has problems and cannot be logged in. Please contact the "
"administrator or view latest docs"
msgstr ""

#: authentication/templates/authentication/login.html:309
msgid "If you are administrator, you can update the config resolve it, set"
msgstr ""

#: authentication/templates/authentication/login.html:408
msgid "More login options"
msgstr "Or"

#: authentication/templates/authentication/login_mfa.html:6
msgid "MFA Auth"
msgstr ""

#: authentication/templates/authentication/login_mfa.html:19
#: users/templates/users/user_otp_check_password.html:12
#: users/templates/users/user_otp_enable_bind.html:24
#: users/templates/users/user_otp_enable_install_app.html:31
#: users/templates/users/user_verify_mfa.html:30
msgid "Next"
msgstr ""

#: authentication/templates/authentication/login_mfa.html:22
msgid "Can't provide security? Please contact the administrator!"
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:117
msgid "Copy success"
msgstr ""

#: authentication/templates/authentication/passkey.html:162
msgid ""
"This page is not served over HTTPS. Please use HTTPS to ensure security of "
"your credentials."
msgstr ""

#: authentication/templates/authentication/passkey.html:173
msgid "Do you want to retry ?"
msgstr ""

#: authentication/utils.py:24 common/utils/ip/geoip/utils.py:24
#: xpack/plugins/cloud/const.py:33
msgid "LAN"
msgstr ""

#: authentication/views/base.py:71
#: perms/templates/perms/_msg_permed_items_expire.html:20
msgid "If you have any question, please contact the administrator"
msgstr ""

#: authentication/views/base.py:141
#, python-format
msgid "%s query user failed"
msgstr ""

#: authentication/views/base.py:149
#, python-format
msgid "The %s is already bound to another user"
msgstr ""

#: authentication/views/base.py:155
#, python-format
msgid "Binding %s successfully"
msgstr ""

#: authentication/views/dingtalk.py:42
msgid "DingTalk Error, Please contact your system administrator"
msgstr ""

#: authentication/views/dingtalk.py:45 authentication/views/dingtalk.py:202
msgid "DingTalk Error"
msgstr ""

#: authentication/views/dingtalk.py:53
msgid "DingTalk is already bound"
msgstr ""

#: authentication/views/dingtalk.py:122
msgid "Invalid user_id"
msgstr ""

#: authentication/views/dingtalk.py:138
msgid "DingTalk query user failed"
msgstr ""

#: authentication/views/dingtalk.py:146
msgid "The DingTalk is already bound to another user"
msgstr ""

#: authentication/views/dingtalk.py:152
msgid "Binding DingTalk successfully"
msgstr ""

#: authentication/views/dingtalk.py:204 authentication/views/dingtalk.py:239
msgid "Failed to get user from DingTalk"
msgstr ""

#: authentication/views/dingtalk.py:246
msgid "Please login with a password and then bind the DingTalk"
msgstr ""

#: authentication/views/feishu.py:43 authentication/views/feishu.py:129
msgid "FeiShu Error"
msgstr ""

#: authentication/views/feishu.py:44
msgid "FeiShu is already bound"
msgstr ""

#: authentication/views/feishu.py:131
msgid "Failed to get user from FeiShu"
msgstr ""

#: authentication/views/lark.py:19 authentication/views/lark.py:47
msgid "Lark Error"
msgstr ""

#: authentication/views/lark.py:20
msgid "Lark is already bound"
msgstr ""

#: authentication/views/lark.py:49
msgid "Failed to get user from Lark"
msgstr ""

#: authentication/views/login.py:218
msgid "Redirecting"
msgstr ""

#: authentication/views/login.py:219
msgid "Redirecting to {} authentication"
msgstr ""

#: authentication/views/login.py:242
msgid "Login timeout, please try again."
msgstr ""

#: authentication/views/login.py:287
msgid "User email already exists ({})"
msgstr ""

#: authentication/views/login.py:364
msgid ""
"Wait for <b>{}</b> confirm, You also can copy link to her/him <br/>\n"
"                  Don't close this page"
msgstr ""

#: authentication/views/login.py:369
msgid "No ticket found"
msgstr ""

#: authentication/views/login.py:405
msgid "Logout success"
msgstr ""

#: authentication/views/login.py:406
msgid "Logout success, return login page"
msgstr ""

#: authentication/views/mixins.py:39
msgid ""
"For your safety, automatic redirection login is not supported on the client. "
"If you need to open it in the client, please log in again"
msgstr ""

#: authentication/views/slack.py:35 authentication/views/slack.py:118
msgid "Slack Error"
msgstr ""

#: authentication/views/slack.py:55
msgid "Slack is already bound"
msgstr ""

#: authentication/views/slack.py:120
msgid "Failed to get user from Slack"
msgstr ""

#: authentication/views/wecom.py:37
msgid "WeCom Error, Please contact your system administrator"
msgstr ""

#: authentication/views/wecom.py:40 authentication/views/wecom.py:142
msgid "WeCom Error"
msgstr ""

#: authentication/views/wecom.py:102
msgid "Wecom"
msgstr ""

#: authentication/views/wecom.py:144 authentication/views/wecom.py:179
msgid "Failed to get user from WeCom"
msgstr ""

#: authentication/views/wecom.py:186
msgid "Please login with a password and then bind the WeCom"
msgstr ""

#: common/api/action.py:57
msgid "Request file format may be wrong"
msgstr ""

#: common/const/choices.py:40
msgid "China"
msgstr ""

#: common/const/choices.py:57
msgid "Manual trigger"
msgstr ""

#: common/const/choices.py:58
msgid "Timing trigger"
msgstr ""

#: common/const/choices.py:62
msgid "Ready"
msgstr ""

#: common/const/choices.py:64 ops/const.py:73
msgid "Running"
msgstr ""

#: common/const/choices.py:68
msgid "Canceled"
msgstr ""

#: common/const/common.py:5 xpack/plugins/cloud/manager.py:429
#, python-format
msgid "%(name)s was created successfully"
msgstr ""

#: common/const/common.py:6
#, python-format
msgid "%(name)s was updated successfully"
msgstr ""

#: common/db/encoder.py:11
msgid "gettext_lazy"
msgstr ""

#: common/db/fields.py:105
msgid "Marshal dict data to char field"
msgstr ""

#: common/db/fields.py:109
msgid "Marshal dict data to text field"
msgstr ""

#: common/db/fields.py:121
msgid "Marshal list data to char field"
msgstr ""

#: common/db/fields.py:125
msgid "Marshal list data to text field"
msgstr ""

#: common/db/fields.py:129
msgid "Marshal data to char field"
msgstr ""

#: common/db/fields.py:133
msgid "Marshal data to text field"
msgstr ""

#: common/db/fields.py:166
msgid "Encrypt field using Secret Key"
msgstr ""

#: common/db/fields.py:577
msgid ""
"Invalid JSON data for JSONManyToManyField, should be like {'type': 'all'} or "
"{'type': 'ids', 'ids': []} or {'type': 'attrs', 'attrs': [{'name': 'ip', "
"'match': 'exact', 'value': '1.1.1.1'}}"
msgstr ""

#: common/db/fields.py:584
msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\""
msgstr ""

#: common/db/fields.py:587
msgid "Invalid ids for ids, should be a list"
msgstr ""

#: common/db/fields.py:589 common/db/fields.py:594
#: common/serializers/fields.py:144 terminal/serializers/session.py:81
#: tickets/serializers/ticket/common.py:58
#: xpack/plugins/cloud/serializers/account_attrs.py:56
#: xpack/plugins/cloud/serializers/account_attrs.py:79
#: xpack/plugins/cloud/serializers/account_attrs.py:150
msgid "This field is required."
msgstr ""

#: common/db/fields.py:592 common/db/fields.py:597
msgid "Invalid attrs, should be a list of dict"
msgstr ""

#: common/db/fields.py:599
msgid "Invalid attrs, should be has name and value"
msgstr ""

#: common/db/mixins.py:32
msgid "is discard"
msgstr ""

#: common/db/mixins.py:33
msgid "discard time"
msgstr ""

#: common/db/models.py:33 users/models/user/__init__.py:111
msgid "Updated by"
msgstr ""

#: common/db/validators.py:9
msgid "Invalid port range, should be like and within {}-{}"
msgstr ""

#: common/drf/exc_handlers.py:28
msgid "Object"
msgstr ""

#: common/drf/metadata.py:127
msgid "Org ID"
msgstr "Organization ID"

#: common/drf/parsers/base.py:21
msgid "The file content overflowed (The maximum length `{}` bytes)"
msgstr ""

#: common/drf/parsers/base.py:207
msgid "Parse file error: {}"
msgstr ""

#: common/drf/parsers/excel.py:14
msgid "Invalid excel file"
msgstr ""

#: common/drf/renders/base.py:138
msgid "Yes/No"
msgstr ""

#: common/drf/renders/base.py:141
msgid "Text, max length {}"
msgstr ""

#: common/drf/renders/base.py:143
msgid "Long text, no length limit"
msgstr ""

#: common/drf/renders/base.py:145
msgid "Number, min {} max {}"
msgstr ""

#: common/drf/renders/base.py:148
msgid "Datetime format {}"
msgstr ""

#: common/drf/renders/base.py:154
msgid ""
"Choices, format name(value), name is optional for human read, value is "
"requisite, options {}"
msgstr ""

#: common/drf/renders/base.py:157
msgid "Choices, options {}"
msgstr ""

#: common/drf/renders/base.py:159
msgid "Phone number, format +8612345678901"
msgstr ""

#: common/drf/renders/base.py:161
msgid "Label, format [\"key:value\"]"
msgstr ""

#: common/drf/renders/base.py:163
msgid ""
"Object, format name(id), name is optional for human read, id is requisite"
msgstr ""

#: common/drf/renders/base.py:165
msgid "Object, format id"
msgstr ""

#: common/drf/renders/base.py:169
msgid ""
"Objects, format [\"name(id)\", ...], name is optional for human read, id is "
"requisite"
msgstr ""

#: common/drf/renders/base.py:171
msgid ""
"Labels, format [\"key:value\", ...], if label not exists, will create it"
msgstr ""

#: common/drf/renders/base.py:173
msgid "Objects, format [\"id\", ...]"
msgstr ""

#: common/drf/renders/base.py:271
msgid ""
"{} - The encryption password has not been set - please go to personal "
"information -> file encryption password to set the encryption password"
msgstr ""

#: common/exceptions.py:15 xpack/plugins/cloud/ws.py:37
#, python-format
msgid "%s object does not exist."
msgstr ""

#: 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:51
msgid "This action require confirm current user"
msgstr ""

#: common/exceptions.py:59
msgid "Unexpect error occur"
msgstr ""

#: common/plugins/es.py:35
msgid "Invalid elasticsearch config"
msgstr ""

#: common/plugins/es.py:40
msgid "Not Support Elasticsearch8"
msgstr ""

#: common/plugins/es.py:46
msgid ""
"Connection failed: Self-signed certificate used. Please check server "
"certificate configuration"
msgstr ""

#: common/sdk/im/exceptions.py:23
msgid "Network error, please contact system administrator"
msgstr ""

#: common/sdk/im/slack/__init__.py:78
msgid "Unknown error occur"
msgstr ""

#: common/sdk/im/wecom/__init__.py:19
msgid "WeCom error, please contact system administrator"
msgstr ""

#: common/sdk/sms/alibaba.py:56
msgid "Signature does not match"
msgstr ""

#: common/sdk/sms/cmpp2.py:44
msgid "sp_id is 6 bits"
msgstr ""

#: common/sdk/sms/cmpp2.py:214
msgid "Failed to connect to the CMPP gateway server, err: {}"
msgstr ""

#: common/sdk/sms/custom_file.py:41
msgid "The custom sms file is invalid"
msgstr ""

#: common/sdk/sms/custom_file.py:47
#, python-format
msgid "SMS sending failed[%s]: %s"
msgstr ""

#: common/sdk/sms/endpoint.py:16
msgid "Alibaba cloud"
msgstr ""

#: common/sdk/sms/endpoint.py:17
msgid "Tencent cloud"
msgstr ""

#: common/sdk/sms/endpoint.py:18 xpack/plugins/cloud/const.py:13
msgid "Huawei Cloud"
msgstr ""

#: common/sdk/sms/endpoint.py:19
msgid "CMPP v2.0"
msgstr ""

#: common/sdk/sms/endpoint.py:21
msgid "Custom type (File)"
msgstr "Custom (File)"

#: common/sdk/sms/endpoint.py:32
msgid "SMS provider not support: {}"
msgstr ""

#: common/sdk/sms/endpoint.py:54
msgid "SMS verification code signature or template invalid"
msgstr ""

#: common/sdk/sms/exceptions.py:8
msgid "The verification code has expired. Please resend it"
msgstr ""

#: common/sdk/sms/exceptions.py:13
msgid "The verification code is incorrect"
msgstr ""

#: common/sdk/sms/exceptions.py:18
msgid "Please wait {} seconds before sending"
msgstr ""

#: common/serializers/common.py:90
msgid "Children"
msgstr ""

#: common/serializers/common.py:98
msgid "File"
msgstr ""

#: common/serializers/fields.py:137
msgid "Invalid data type"
msgstr ""

#: common/serializers/fields.py:145
#, python-brace-format
msgid "Invalid pk \"{pk_value}\" - object does not exist."
msgstr ""

#: common/serializers/fields.py:146
#, python-brace-format
msgid "Incorrect type. Expected pk value, received {data_type}."
msgstr ""

#: common/serializers/fields.py:220
msgid "Invalid data type, should be list"
msgstr ""

#: common/serializers/fields.py:235
msgid "Invalid choice: {}"
msgstr ""

#: common/serializers/mixin.py:452 terminal/models/applet/applet.py:45
#: terminal/models/virtualapp/virtualapp.py:29
msgid "Tags"
msgstr ""

#: common/tasks.py:32
msgid "Send email"
msgstr ""

#: common/tasks.py:35
msgid "This task will be executed when sending email notifications"
msgstr ""

#: common/tasks.py:65
msgid "Send email attachment"
msgstr ""

#: common/tasks.py:68
msgid ""
"When an account password is changed or an account backup generates "
"attachments, \n"
"        this task needs to be executed for sending emails and handling "
"attachments"
msgstr ""

#: common/tasks.py:94
msgid "Upload account backup to external storage"
msgstr ""

#: common/tasks.py:96
msgid ""
"When performing an account backup, this task needs to be executed to "
"external storage (SFTP)"
msgstr ""

#: common/utils/ip/geoip/utils.py:26
msgid "Invalid ip"
msgstr ""

#: common/utils/ip/utils.py:98
msgid "Invalid address"
msgstr ""

#: common/utils/translate.py:46
#, python-format
msgid "Hello %s"
msgstr ""

#: common/utils/verify_code.py:17
msgid "Send SMS code"
msgstr ""

#: common/utils/verify_code.py:19
msgid ""
"When resetting a password, forgetting a password, or verifying MFA, this "
"task needs to \n"
"        be executed to send SMS messages"
msgstr ""

#: common/validators.py:16
msgid "Special char not allowed"
msgstr ""

#: common/validators.py:42
msgid "Should not contains special characters"
msgstr ""

#: common/validators.py:47
msgid "The mobile phone number format is incorrect"
msgstr ""

#: jumpserver/conf.py:530
#, python-brace-format
msgid "The verification code is: {code}"
msgstr ""

#: jumpserver/conf.py:535
msgid "Create account successfully"
msgstr ""

#: jumpserver/conf.py:537
msgid "Your account has been created successfully"
msgstr ""

#: jumpserver/context_processor.py:14
msgid "JumpServer - An open-source PAM"
msgstr "JumpServer"

#: jumpserver/views/celery_flower.py:22
msgid "<h1>Flower service unavailable, check it</h1>"
msgstr ""

#: jumpserver/views/other.py:28
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 ""

#: jumpserver/views/other.py:76
msgid "Websocket server run on port: {}, you should proxy it on nginx"
msgstr ""

#: jumpserver/views/other.py:90
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 ""

#: labels/apps.py:8
msgid "App Labels"
msgstr "App labels"

#: labels/models.py:15
msgid "Color"
msgstr ""

#: labels/models.py:20 labels/models.py:39
msgid "Tag"
msgstr ""

#: labels/models.py:43
msgid "Resource ID"
msgstr ""

#: labels/models.py:49
msgid "Tagged resource"
msgstr ""

#: labels/serializers.py:22
msgid "Resource count"
msgstr "Resource count"

#: labels/serializers.py:28
msgid "Cannot contain \":,\""
msgstr ""

#: labels/serializers.py:43
msgid "Resource type"
msgstr ""

#: notifications/apps.py:7
msgid "App Notifications"
msgstr ""

#: notifications/backends/__init__.py:13
msgid "Site message"
msgstr ""

#: notifications/models/notification.py:14
msgid "receive backend"
msgstr ""

#: notifications/models/notification.py:18
msgid "User message"
msgstr ""

#: notifications/models/notification.py:21
msgid "{} subscription"
msgstr ""

#: notifications/models/notification.py:34
msgid "System message"
msgstr ""

#: notifications/notifications.py:46
msgid "Publish the station message"
msgstr ""

#: notifications/notifications.py:48
msgid ""
"This task needs to be executed for sending internal messages for system "
"alerts, \n"
"        work orders, and other notifications"
msgstr ""

#: ops/ansible/inventory.py:116 ops/models/job.py:68
msgid "No account available"
msgstr ""

#: ops/ansible/inventory.py:296
msgid "Ansible disabled"
msgstr ""

#: ops/ansible/inventory.py:312
msgid "Skip hosts below:"
msgstr ""

#: ops/api/celery.py:66 ops/api/celery.py:81
msgid "Waiting task start"
msgstr ""

#: ops/api/celery.py:262
msgid "Task {} not found"
msgstr ""

#: ops/api/celery.py:269
msgid "Task {} args or kwargs error"
msgstr ""

#: ops/api/job.py:68
#, python-brace-format
msgid ""
"Asset ({asset}) must have at least one of the following protocols added: "
"SSH, SFTP, or WinRM"
msgstr ""

#: ops/api/job.py:69
#, python-brace-format
msgid "Asset ({asset}) authorization is missing SSH, SFTP, or WinRM protocol"
msgstr ""

#: ops/api/job.py:70
#, python-brace-format
msgid "Asset ({asset}) authorization lacks upload permissions"
msgstr ""

#: ops/api/job.py:157
msgid "Duplicate file exists"
msgstr ""

#: ops/api/job.py:162
#, python-brace-format
msgid ""
"File size exceeds maximum limit. Please select a file smaller than {limit}MB"
msgstr ""

#: ops/api/job.py:235
msgid ""
"The task is being created and cannot be interrupted. Please try again later."
msgstr ""

#: ops/api/playbook.py:55
msgid "Currently playbook is being used in a job"
msgstr ""

#: ops/api/playbook.py:128
msgid "Unsupported file content"
msgstr ""

#: ops/api/playbook.py:130 ops/api/playbook.py:176 ops/api/playbook.py:224
msgid "Invalid file path"
msgstr ""

#: ops/api/playbook.py:202
msgid "This file can not be rename"
msgstr ""

#: ops/api/playbook.py:221
msgid "File already exists"
msgstr ""

#: ops/api/playbook.py:239
msgid "File key is required"
msgstr ""

#: ops/api/playbook.py:242
msgid "This file can not be delete"
msgstr ""

#: ops/apps.py:9
msgid "App Ops"
msgstr ""

#: ops/const.py:6
msgid "Push"
msgstr ""

#: ops/const.py:7
msgid "Verify"
msgstr ""

#: ops/const.py:8
msgid "Collect"
msgstr ""

#: ops/const.py:19
msgid "Custom password"
msgstr ""

#: ops/const.py:20
msgid "All assets use the same random password"
msgstr ""

#: ops/const.py:21
msgid "All assets use different random password"
msgstr ""

#: ops/const.py:33
msgid "Blank"
msgstr ""

#: ops/const.py:34
msgid "VCS"
msgstr ""

#: ops/const.py:38 ops/models/adhoc.py:44 ops/models/variable.py:26
#: settings/serializers/feature.py:145
msgid "Adhoc"
msgstr ""

#: ops/const.py:39 ops/models/job.py:152 ops/models/playbook.py:89
#: ops/models/variable.py:23
msgid "Playbook"
msgstr ""

#: ops/const.py:40
msgid "Upload File"
msgstr ""

#: ops/const.py:44
msgid "Privileged only"
msgstr ""

#: ops/const.py:45
msgid "Privileged first"
msgstr ""

#: ops/const.py:50 ops/const.py:61
msgid "Shell"
msgstr ""

#: ops/const.py:51 ops/const.py:62
msgid "Powershell"
msgstr ""

#: ops/const.py:52 ops/const.py:63
msgid "Python"
msgstr ""

#: ops/const.py:53 ops/const.py:64
msgid "MySQL"
msgstr ""

#: ops/const.py:54 ops/const.py:66
msgid "PostgreSQL"
msgstr ""

#: ops/const.py:55 ops/const.py:67
msgid "SQLServer"
msgstr ""

#: ops/const.py:56 ops/const.py:69
msgid "Raw"
msgstr ""

#: ops/const.py:57
msgid "HUAWEI"
msgstr ""

#: ops/const.py:65
msgid "MariaDB"
msgstr ""

#: ops/const.py:68
msgid "Oracle"
msgstr ""

#: ops/const.py:75
msgid "Timeout"
msgstr ""

#: ops/const.py:82
msgid "Command execution disabled"
msgstr ""

#: ops/const.py:86
msgctxt "scope"
msgid "Public"
msgstr ""

#: ops/const.py:87
msgid "Private"
msgstr ""

#: ops/const.py:91
msgid "Text"
msgstr ""

#: ops/const.py:92
msgid "Select"
msgstr ""

#: ops/exception.py:6
msgid "no valid program entry found."
msgstr ""

#: ops/mixin.py:30 ops/mixin.py:110 settings/serializers/auth/ldap.py:73
#: settings/serializers/auth/ldap_ha.py:55
msgid "Periodic run"
msgstr "Periodic"

#: ops/mixin.py:32 ops/mixin.py:96 ops/mixin.py:116
#: settings/serializers/auth/ldap.py:80 settings/serializers/auth/ldap_ha.py:62
msgid "Interval"
msgstr ""

#: ops/mixin.py:35 ops/mixin.py:94 ops/mixin.py:113
#: settings/serializers/auth/ldap.py:77 settings/serializers/auth/ldap_ha.py:59
msgid "Crontab"
msgstr ""

#: ops/mixin.py:118
msgid "Run period"
msgstr "Period"

#: ops/mixin.py:127
msgid "* Please enter a valid crontab expression"
msgstr ""

#: ops/mixin.py:134
msgid "Range {} to {}"
msgstr ""

#: ops/mixin.py:145
msgid "Require interval or crontab setting"
msgstr ""

#: ops/models/adhoc.py:20
msgid "Pattern"
msgstr ""

#: ops/models/adhoc.py:22 ops/models/job.py:149
msgid "Module"
msgstr ""

#: ops/models/adhoc.py:23 ops/models/celery.py:82 ops/models/job.py:147
#: terminal/models/component/task.py:14
msgid "Args"
msgstr ""

#: ops/models/adhoc.py:26 ops/models/playbook.py:34 ops/serializers/mixin.py:10
#: rbac/models/role.py:31 rbac/models/rolebinding.py:46
#: rbac/serializers/role.py:12 settings/serializers/auth/oauth2.py:37
msgid "Scope"
msgstr ""

#: ops/models/base.py:19
msgid "Account policy"
msgstr ""

#: ops/models/base.py:20
msgid "Last execution"
msgstr ""

#: ops/models/base.py:22 ops/serializers/job.py:18
msgid "Date last run"
msgstr ""

#: ops/models/base.py:51 ops/models/job.py:239
#: xpack/plugins/cloud/models.py:225
msgid "Result"
msgstr ""

#: ops/models/celery.py:16
msgid "Date last publish"
msgstr ""

#: ops/models/celery.py:71
msgid "Celery Task"
msgstr ""

#: ops/models/celery.py:74
msgid "Can view task monitor"
msgstr ""

#: ops/models/celery.py:83 terminal/models/component/task.py:15
msgid "Kwargs"
msgstr ""

#: ops/models/celery.py:88
msgid "Date published"
msgstr ""

#: ops/models/celery.py:124
msgid "Celery Task Execution"
msgstr ""

#: ops/models/job.py:150
msgid "Run dir"
msgstr ""

#: ops/models/job.py:151
msgid "Timeout (Seconds)"
msgstr ""

#: ops/models/job.py:157
msgid "Use Parameter Define"
msgstr ""

#: ops/models/job.py:158
msgid "Parameters define"
msgstr ""

#: ops/models/job.py:159
#, fuzzy
#| msgid "Periodic run"
msgid "Periodic variable"
msgstr "Periodic"

#: ops/models/job.py:160
msgid "Run as"
msgstr ""

#: ops/models/job.py:162
msgid "Run as policy"
msgstr ""

#: ops/models/job.py:223 ops/models/variable.py:28 ops/serializers/job.py:98
#: terminal/notifications.py:182
msgid "Job"
msgstr ""

#: ops/models/job.py:246
msgid "Material"
msgstr ""

#: ops/models/job.py:248
msgid "Material Type"
msgstr ""

#: ops/models/job.py:560
msgid "Job Execution"
msgstr ""

#: ops/models/playbook.py:33
msgid "CreateMethod"
msgstr ""

#: ops/models/playbook.py:35
msgid "VCS URL"
msgstr ""

#: ops/models/variable.py:11 ops/serializers/variable.py:22
msgid "Variable name"
msgstr ""

#: ops/models/variable.py:12 ops/serializers/variable.py:23
msgid ""
"The variable name used in the script has a fixed prefix 'jms_' followed by "
"the input variable name. For example, if the variable name is 'name,' the "
"final generated environment variable will be 'jms_name'."
msgstr ""

#: ops/models/variable.py:16
msgid "Default Value"
msgstr ""

#: ops/models/variable.py:18
msgid "Variable type"
msgstr ""

#: ops/models/variable.py:21 ops/serializers/variable.py:32
msgid "ExtraVars"
msgstr ""

#: ops/models/variable.py:49 ops/serializers/adhoc.py:16
#: ops/serializers/job.py:22 ops/serializers/playbook.py:21
msgid "Variable"
msgstr ""

#: ops/notifications.py:20
msgid "Server performance"
msgstr ""

#: ops/notifications.py:26
msgid "Component health check warning"
msgstr ""

#: ops/notifications.py:71
#, python-brace-format
msgid "The component is offline: {name}"
msgstr ""

#: ops/notifications.py:76
#, python-brace-format
msgid "Disk used more than {max_threshold}%: => {value}"
msgstr ""

#: ops/notifications.py:81
#, python-brace-format
msgid "Memory used more than {max_threshold}%: => {value}"
msgstr ""

#: ops/notifications.py:86
#, python-brace-format
msgid "CPU load more than {max_threshold}: => {value}"
msgstr ""

#: ops/serializers/celery.py:35
msgid "Next execution time"
msgstr ""

#: ops/serializers/job.py:17
msgid "Execute after saving"
msgstr "Execute after saving"

#: ops/serializers/job.py:58 terminal/serializers/session.py:49
msgid "Duration"
msgstr ""

#: ops/serializers/job.py:78
msgid "Job type"
msgstr ""

#: ops/serializers/job.py:81 terminal/serializers/session.py:58
msgid "Is finished"
msgstr "Finished"

#: ops/serializers/job.py:95
msgid "Task id"
msgstr ""

#: ops/serializers/job.py:104
msgid "You do not have permission for the current job."
msgstr ""

#: ops/serializers/variable.py:29
msgid "Variable Type"
msgstr ""

#: ops/serializers/variable.py:34
msgid ""
"Each item is on a separate line, with each line separated by a colon. The "
"part before the colon is the display content, and the part after the colon "
"is the value."
msgstr ""

#: ops/tasks.py:53
msgid "Run ansible task"
msgstr ""

#: ops/tasks.py:56
msgid ""
"Execute scheduled adhoc and playbooks, periodically invoking the task for "
"execution"
msgstr ""

#: ops/tasks.py:88
msgid "Run ansible task execution"
msgstr ""

#: ops/tasks.py:91
msgid "Execute the task when manually adhoc or playbooks"
msgstr ""

#: ops/tasks.py:107
msgid "Clear celery periodic tasks"
msgstr ""

#: ops/tasks.py:109
msgid "At system startup, clean up celery tasks that no longer exist"
msgstr ""

#: ops/tasks.py:133
msgid "Create or update periodic tasks"
msgstr ""

#: ops/tasks.py:135
msgid ""
"With version iterations, new tasks may be added, or task names and execution "
"times may \n"
"        be modified. Therefore, upon system startup, tasks will be "
"registered or the parameters \n"
"        of scheduled tasks will be updated"
msgstr ""

#: ops/tasks.py:148
msgid "Periodic check service performance"
msgstr ""

#: ops/tasks.py:150
msgid ""
"Check every hour whether each component is offline and whether the CPU, "
"memory, \n"
"        and disk usage exceed the thresholds, and send an alert message to "
"the administrator"
msgstr ""

#: ops/tasks.py:160
msgid "Clean up unexpected jobs"
msgstr ""

#: ops/tasks.py:162
msgid ""
"Due to exceptions caused by executing adhoc and playbooks in the Job "
"Center, \n"
"        which result in the task status not being updated, the system will "
"clean up abnormal jobs \n"
"        that have not been completed for more than 3 hours every hour and "
"mark these tasks as \n"
"        failed"
msgstr ""

#: ops/tasks.py:175
msgid "Clean job_execution db record"
msgstr ""

#: ops/tasks.py:177
msgid ""
"Due to the execution of adhoc and playbooks in the Job Center, execution "
"records will \n"
"        be generated. The system will clean up records that exceed the "
"retention period every day \n"
"        at 2 a.m., based on the configuration of 'System Settings - Tasks - "
"Regular clean-up - \n"
"        Job execution retention days'"
msgstr ""

#: ops/templates/ops/celery_task_log.html:4
msgid "Task log"
msgstr ""

#: ops/variables.py:24
msgid "The current user`s username of JumpServer"
msgstr ""

#: ops/variables.py:25
msgid "The id of the asset in the JumpServer"
msgstr ""

#: ops/variables.py:26
msgid "The type of the asset in the JumpServer"
msgstr ""

#: ops/variables.py:27
msgid "The category of the asset in the JumpServer"
msgstr ""

#: ops/variables.py:28
msgid "The name of the asset in the JumpServer"
msgstr ""

#: ops/variables.py:29
msgid "Address used to connect this asset in JumpServer"
msgstr ""

#: ops/variables.py:30
msgid "Port used to connect this asset in JumpServer"
msgstr ""

#: ops/variables.py:31
msgid "ID of the job"
msgstr ""

#: ops/variables.py:32
msgid "Name of the job"
msgstr ""

#: orgs/api.py:60
msgid "The current organization ({}) cannot be deleted"
msgstr ""

#: orgs/api.py:65
msgid ""
"LDAP synchronization is set to the current organization. Please switch to "
"another organization before deleting"
msgstr ""

#: orgs/api.py:75
msgid "The organization have resource ({}) cannot be deleted"
msgstr ""

#: orgs/apps.py:7
msgid "App Organizations"
msgstr ""

#: orgs/mixins/models.py:48 orgs/mixins/models.py:73
msgid "Please save in a org"
msgstr "請選擇一個組織後再保存"

#: orgs/mixins/models.py:57 orgs/mixins/serializers.py:25 orgs/models.py:91
#: rbac/const.py:7 rbac/models/rolebinding.py:56
#: rbac/serializers/rolebinding.py:44 settings/serializers/auth/base.py:53
#: terminal/templates/terminal/_msg_command_warning.html:21
#: terminal/templates/terminal/_msg_session_sharing.html:14
#: tickets/models/ticket/general.py:303 tickets/serializers/ticket/ticket.py:60
msgid "Organization"
msgstr ""

#: orgs/models.py:14
msgid "GLOBAL"
msgstr ""

#: orgs/models.py:16
msgid "DEFAULT"
msgstr ""

#: orgs/models.py:18
msgid "SYSTEM"
msgstr ""

#: orgs/models.py:83 rbac/models/role.py:36 settings/models.py:186
#: terminal/models/applet/applet.py:42
msgid "Builtin"
msgstr "Builtin"

#: orgs/models.py:93
msgid "Can view root org"
msgstr ""

#: orgs/models.py:94
msgid "Can view all joined org"
msgstr ""

#: orgs/models.py:236
msgid "Can not delete virtual org"
msgstr ""

#: orgs/serializers.py:10 perms/serializers/permission.py:48
#: rbac/serializers/role.py:27 users/serializers/group.py:54
msgid "Users amount"
msgstr ""

#: orgs/serializers.py:11
msgid "User groups amount"
msgstr ""

#: orgs/serializers.py:14 perms/serializers/permission.py:51
msgid "Nodes amount"
msgstr ""

#: orgs/serializers.py:15
msgid "Domains amount"
msgstr "Zones amount"

#: orgs/serializers.py:16
msgid "Gateways amount"
msgstr ""

#: orgs/serializers.py:18
msgid "Asset permissions amount"
msgstr ""

#: orgs/tasks.py:10
msgid "Refresh organization cache"
msgstr ""

#: perms/apps.py:9
msgid "App Permissions"
msgstr "Policies"

#: perms/const.py:12
msgid "Connect (All protocols)"
msgstr ""

#: perms/const.py:13
msgid "Upload (RDP, SFTP)"
msgstr ""

#: perms/const.py:14
msgid "Download (RDP, SFTP)"
msgstr ""

#: perms/const.py:15
msgid "Copy (RDP, VNC)"
msgstr ""

#: perms/const.py:16
msgid "Paste (RDP, VNC)"
msgstr ""

#: perms/const.py:17
msgid "Delete (SFTP)"
msgstr ""

#: perms/const.py:18
msgid "Share (SSH)"
msgstr ""

#: perms/const.py:28
msgid "Transfer"
msgstr ""

#: perms/const.py:29
msgid "Clipboard"
msgstr ""

#: perms/models/asset_permission.py:89
msgid "Asset permission"
msgstr ""

#: perms/models/perm_node.py:74
msgid "Ungrouped"
msgstr ""

#: perms/models/perm_node.py:76
msgid "Favorite"
msgstr ""

#: perms/models/perm_node.py:128
msgid "Permed asset"
msgstr ""

#: perms/models/perm_node.py:130
msgid "Can view my assets"
msgstr ""

#: perms/models/perm_node.py:131
msgid "Can view user assets"
msgstr ""

#: perms/models/perm_node.py:132
msgid "Can view usergroup assets"
msgstr ""

#: perms/models/perm_node.py:143
msgid "Permed account"
msgstr ""

#: perms/notifications.py:12 perms/notifications.py:44
msgid "today"
msgstr ""

#: perms/notifications.py:12 perms/notifications.py:44
#: settings/serializers/feature.py:136
msgid "day"
msgstr ""

#: perms/notifications.py:15
msgid "The asset you authorized is about to expire"
msgstr ""

#: perms/notifications.py:20
msgid "permed assets"
msgstr ""

#: perms/notifications.py:59
msgid "Asset permissions is about to expire"
msgstr ""

#: perms/notifications.py:64
msgid "asset permissions of organization {}"
msgstr ""

#: perms/serializers/permission.py:32
msgid ""
"Accounts, format [\"@virtual\", \"root\", \"%template_id\"], virtual "
"choices: @ALL, @SPEC, @USER, @ANON, @INPUT"
msgstr ""

#: perms/serializers/permission.py:38
msgid "Protocols, format [\"ssh\", \"rdp\", \"vnc\"] or [\"all\"]"
msgstr ""

#: perms/serializers/permission.py:44 users/serializers/user.py:257
msgid "Groups"
msgstr ""

#: perms/serializers/permission.py:49
msgid "Groups amount"
msgstr ""

#: perms/tasks.py:28
msgid "Check asset permission expired"
msgstr ""

#: perms/tasks.py:30
msgid ""
"The cache of organizational collections, which have completed user "
"authorization tree \n"
"        construction, will expire. Therefore, expired collections need to be "
"cleared from the \n"
"        cache, and this task will be executed periodically based on the time "
"interval specified \n"
"        by PERM_EXPIRED_CHECK_PERIODIC in the system configuration file "
"config.txt"
msgstr ""

#: perms/tasks.py:49
msgid "Send asset permission expired notification"
msgstr ""

#: perms/tasks.py:51
msgid ""
"Check every day at 10 a.m. and send a notification message to users "
"associated with \n"
"        assets whose authorization is about to expire, as well as to the "
"organization's \n"
"        administrators, 3 days in advance, to remind them that the asset "
"authorization will \n"
"        expire in a few days"
msgstr ""

#: perms/templates/perms/_msg_item_permissions_expire.html:7
#: perms/templates/perms/_msg_permed_items_expire.html:7
#, python-format
msgid ""
"\n"
"        The following %(item_type)s will expire in %(count)s\n"
"    "
msgstr ""

#: rbac/api/role.py:35
msgid "Internal role, can't be destroy"
msgstr ""

#: rbac/api/role.py:40
msgid "The role has been bound to users, can't be destroy"
msgstr ""

#: rbac/api/role.py:105
msgid "Internal role, can't be update"
msgstr ""

#: rbac/api/rolebinding.py:45
msgid "{} at least one system role"
msgstr ""

#: rbac/apps.py:7
msgid "App RBAC"
msgstr "RBAC"

#: rbac/builtin.py:116
msgid "SystemAdmin"
msgstr "System Admin"

#: rbac/builtin.py:119
msgid "SystemAuditor"
msgstr "System Auditor"

#: rbac/builtin.py:122
msgid "SystemComponent"
msgstr "System Component"

#: rbac/builtin.py:128
msgid "OrgAdmin"
msgstr "Organizational Admin"

#: rbac/builtin.py:131
msgid "OrgAuditor"
msgstr "Organizational Auditor"

#: rbac/builtin.py:134
msgid "OrgUser"
msgstr "Organizational user"

#: rbac/models/menu.py:13
msgid "Menu permission"
msgstr ""

#: rbac/models/menu.py:15
msgid "Can view console view"
msgstr ""

#: rbac/models/menu.py:16
msgid "Can view audit view"
msgstr ""

#: rbac/models/menu.py:17
msgid "Can view workbench view"
msgstr ""

#: rbac/models/menu.py:18
msgid "Can view web terminal"
msgstr ""

#: rbac/models/menu.py:19
msgid "Can view file manager"
msgstr ""

#: rbac/models/menu.py:20
msgid "Can view System Tools"
msgstr ""

#: rbac/models/permission.py:18
msgid "ContentType"
msgstr ""

#: rbac/models/permission.py:79 rbac/models/role.py:34
msgid "Permissions"
msgstr ""

#: rbac/models/role.py:46 rbac/models/rolebinding.py:52
#: users/models/user/__init__.py:73
msgid "Role"
msgstr ""

#: rbac/models/role.py:144
msgid "System role"
msgstr ""

#: rbac/models/role.py:152
msgid "Organization role"
msgstr ""

#: rbac/models/rolebinding.py:62
msgid "Role binding"
msgstr ""

#: rbac/models/rolebinding.py:161
msgid "All organizations"
msgstr ""

#: rbac/models/rolebinding.py:193
msgid ""
"User last role in org, can not be delete, you can remove user from org "
"instead"
msgstr ""

#: rbac/models/rolebinding.py:200
msgid "Organization role binding"
msgstr ""

#: rbac/models/rolebinding.py:215
msgid "System role binding"
msgstr ""

#: rbac/serializers/permission.py:25 users/serializers/profile.py:76
msgid "Perms"
msgstr ""

#: rbac/serializers/rolebinding.py:60
msgid "Has bound this role"
msgstr ""

#: rbac/tree.py:17 rbac/tree.py:18
msgid "All permissions"
msgstr ""

#: rbac/tree.py:24
msgid "Console view"
msgstr "Console"

#: rbac/tree.py:25
msgid "Workbench view"
msgstr "Workbench"

#: rbac/tree.py:26
msgid "Audit view"
msgstr "Audits"

#: rbac/tree.py:27 settings/models.py:162
msgid "System setting"
msgstr ""

#: rbac/tree.py:37
msgid "Session audits"
msgstr "Session"

#: rbac/tree.py:49 xpack/plugins/cloud/manager.py:90
msgid "Cloud import"
msgstr ""

#: rbac/tree.py:50
msgid "Backup account"
msgstr ""

#: rbac/tree.py:51
msgid "Gather account"
msgstr ""

#: rbac/tree.py:53
msgid "Account change secret"
msgstr ""

#: rbac/tree.py:55
msgid "App ops"
msgstr "Ops"

#: rbac/tree.py:57 settings/serializers/feature.py:142
msgid "Feature"
msgstr ""

#: rbac/tree.py:58 settings/serializers/auth/base.py:11
msgid "Authentication"
msgstr ""

#: rbac/tree.py:59
msgid "Storage"
msgstr ""

#: rbac/tree.py:61 terminal/models/applet/applet.py:53
#: terminal/models/applet/applet.py:328 terminal/models/applet/host.py:30
#: terminal/serializers/applet.py:15
msgid "Applet"
msgstr ""

#: rbac/tree.py:63
msgid "Appearance"
msgstr ""

#: rbac/tree.py:65 xpack/plugins/license/meta.py:10
#: xpack/plugins/license/models.py:155
msgid "License"
msgstr ""

#: rbac/tree.py:159
msgid "App organizations"
msgstr "Organizations"

#: rbac/tree.py:160
msgid "Ticket comment"
msgstr ""

#: rbac/tree.py:161 settings/serializers/feature.py:123
#: settings/serializers/feature.py:125 tickets/models/ticket/general.py:308
msgid "Ticket"
msgstr ""

#: rbac/tree.py:162
msgid "Common setting"
msgstr ""

#: rbac/tree.py:163
msgid "View permission tree"
msgstr ""

#: settings/api/chat.py:40
msgid "Chat AI is not enabled"
msgstr ""

#: settings/api/chat.py:79 settings/api/dingtalk.py:31
#: settings/api/feishu.py:39 settings/api/slack.py:34 settings/api/sms.py:160
#: settings/api/vault.py:48 settings/api/wecom.py:37
msgid "Test success"
msgstr ""

#: settings/api/email.py:22
msgid "Test mail sent to {}, please check"
msgstr ""

#: settings/api/email.py:47
msgid "Test smtp setting"
msgstr ""

#: settings/api/ldap.py:92
msgid ""
"Users are not synchronized, please click the user synchronization button"
msgstr ""

#: settings/api/sms.py:142
msgid "Invalid SMS platform"
msgstr ""

#: settings/api/sms.py:148
msgid "test_phone is required"
msgstr ""

#: settings/apps.py:7
msgid "App Settings"
msgstr "Settings"

#: settings/models.py:38 users/models/preference.py:14
msgid "Encrypted"
msgstr ""

#: settings/models.py:164
msgid "Can change email setting"
msgstr ""

#: settings/models.py:165
msgid "Can change auth setting"
msgstr ""

#: settings/models.py:166
msgid "Can change auth ops"
msgstr ""

#: settings/models.py:167
msgid "Can change auth ticket"
msgstr ""

#: settings/models.py:168
msgid "Can change virtual app setting"
msgstr ""

#: settings/models.py:169
msgid "Can change auth announcement"
msgstr ""

#: settings/models.py:170
msgid "Can change vault setting"
msgstr ""

#: settings/models.py:171
msgid "Can change chat ai setting"
msgstr ""

#: settings/models.py:172
msgid "Can change system msg sub setting"
msgstr ""

#: settings/models.py:173
msgid "Can change sms setting"
msgstr ""

#: settings/models.py:174
msgid "Can change security setting"
msgstr ""

#: settings/models.py:175
msgid "Can change clean setting"
msgstr ""

#: settings/models.py:176
msgid "Can change interface setting"
msgstr ""

#: settings/models.py:177
msgid "Can change license setting"
msgstr ""

#: settings/models.py:178
msgid "Can change terminal setting"
msgstr ""

#: settings/models.py:179
msgid "Can change other setting"
msgstr ""

#: settings/models.py:189
msgid "Chat prompt"
msgstr ""

#: settings/notifications.py:23
msgid "Notification of Synchronized LDAP User Task Results"
msgstr ""

#: settings/serializers/auth/base.py:13
msgid "LDAP Auth"
msgstr ""

#: settings/serializers/auth/base.py:14
msgid "LDAP Auth HA"
msgstr ""

#: settings/serializers/auth/base.py:15
msgid "CAS Auth"
msgstr ""

#: settings/serializers/auth/base.py:16
msgid "OPENID Auth"
msgstr ""

#: settings/serializers/auth/base.py:17
msgid "SAML2 Auth"
msgstr ""

#: settings/serializers/auth/base.py:18
msgid "OAuth2 Auth"
msgstr ""

#: settings/serializers/auth/base.py:19
msgid "RADIUS Auth"
msgstr ""

#: settings/serializers/auth/base.py:20
msgid "DingTalk Auth"
msgstr ""

#: settings/serializers/auth/base.py:21
msgid "FeiShu Auth"
msgstr ""

#: settings/serializers/auth/base.py:22
msgid "Lark Auth"
msgstr ""

#: settings/serializers/auth/base.py:23
msgid "Slack Auth"
msgstr ""

#: settings/serializers/auth/base.py:24
msgid "WeCom Auth"
msgstr ""

#: settings/serializers/auth/base.py:25
msgid "SSO Auth"
msgstr ""

#: settings/serializers/auth/base.py:26
msgid "Passkey Auth"
msgstr ""

#: settings/serializers/auth/base.py:28
msgid "Email suffix"
msgstr ""

#: settings/serializers/auth/base.py:30
msgid ""
"After third-party user authentication is successful, if the third-party "
"authentication service platform does not return the user's email "
"information, the system will automatically create the user using this email "
"suffix"
msgstr ""

#: settings/serializers/auth/base.py:37
msgid "Forgot Password URL"
msgstr ""

#: settings/serializers/auth/base.py:38
msgid "The URL for Forgotten Password on the user login page"
msgstr ""

#: settings/serializers/auth/base.py:41
msgid "Login redirection"
msgstr ""

#: settings/serializers/auth/base.py:43
msgid ""
"Should an flash page be displayed before the user is redirected to third-"
"party authentication when the administrator enables third-party redirect "
"authentication"
msgstr ""

#: settings/serializers/auth/base.py:55
msgid ""
"When you create a user, you associate the user to the organization of your "
"choice. Users always belong to the Default organization."
msgstr ""

#: settings/serializers/auth/cas.py:12 settings/serializers/auth/cas.py:14
msgid "CAS"
msgstr ""

#: settings/serializers/auth/cas.py:15 settings/serializers/auth/ldap.py:44
#: settings/serializers/auth/ldap_ha.py:26 settings/serializers/auth/oidc.py:61
msgid "Server"
msgstr ""

#: settings/serializers/auth/cas.py:18
msgid "Proxy Server"
msgstr ""

#: settings/serializers/auth/cas.py:21 settings/serializers/auth/oauth2.py:56
#: settings/serializers/auth/saml2.py:42
msgid "Logout completely"
msgstr ""

#: settings/serializers/auth/cas.py:22
msgid "When the user signs out, they also be logged out from the CAS server"
msgstr ""

#: settings/serializers/auth/cas.py:28
msgid "Username attr"
msgstr ""

#: settings/serializers/auth/cas.py:31
msgid "Enable attributes map"
msgstr ""

#: settings/serializers/auth/cas.py:34 settings/serializers/auth/dingtalk.py:18
#: settings/serializers/auth/feishu.py:18 settings/serializers/auth/lark.py:17
#: settings/serializers/auth/ldap.py:66 settings/serializers/auth/ldap_ha.py:48
#: settings/serializers/auth/oauth2.py:60 settings/serializers/auth/oidc.py:39
#: settings/serializers/auth/saml2.py:35 settings/serializers/auth/slack.py:18
#: settings/serializers/auth/wecom.py:18
msgid "User attribute"
msgstr ""

#: settings/serializers/auth/cas.py:36
msgid ""
"User attribute mapping, where the `key` is the CAS service user attribute "
"name and the `value` is the JumpServer user attribute name"
msgstr ""

#: settings/serializers/auth/cas.py:41
msgid "Create user"
msgstr ""

#: settings/serializers/auth/cas.py:43
msgid ""
"After successful user authentication, if the user does not exist, "
"automatically create the user"
msgstr ""

#: settings/serializers/auth/dingtalk.py:16
msgid "Dingtalk"
msgstr ""

#: settings/serializers/auth/dingtalk.py:20
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the DingTalk service user attribute name"
msgstr ""

#: settings/serializers/auth/feishu.py:20
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the FeiShu service user attribute name"
msgstr ""

#: settings/serializers/auth/lark.py:13 users/models/user/_source.py:22
msgid "Lark"
msgstr ""

#: settings/serializers/auth/lark.py:19
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the Lark service user attribute name"
msgstr ""

#: settings/serializers/auth/ldap.py:41 settings/serializers/auth/ldap.py:103
msgid "LDAP"
msgstr ""

#: settings/serializers/auth/ldap.py:45
msgid "LDAP server URI"
msgstr ""

#: settings/serializers/auth/ldap.py:48 settings/serializers/auth/ldap_ha.py:30
msgid "Bind DN"
msgstr ""

#: settings/serializers/auth/ldap.py:49 settings/serializers/auth/ldap_ha.py:31
msgid "Binding Distinguished Name"
msgstr ""

#: settings/serializers/auth/ldap.py:53 settings/serializers/auth/ldap_ha.py:35
msgid "Binding password"
msgstr ""

#: settings/serializers/auth/ldap.py:56 settings/serializers/auth/ldap_ha.py:38
msgid "Search OU"
msgstr ""

#: settings/serializers/auth/ldap.py:58 settings/serializers/auth/ldap_ha.py:40
msgid ""
"User Search Base, if there are multiple OUs, you can separate them with the "
"`|` symbol"
msgstr ""

#: settings/serializers/auth/ldap.py:62 settings/serializers/auth/ldap_ha.py:44
msgid "Search filter"
msgstr ""

#: settings/serializers/auth/ldap.py:63 settings/serializers/auth/ldap_ha.py:45
#, python-format
msgid "Selection could include (cn|uid|sAMAccountName=%(user)s)"
msgstr ""

#: settings/serializers/auth/ldap.py:68 settings/serializers/auth/ldap_ha.py:50
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the LDAP service user attribute name"
msgstr ""

#: settings/serializers/auth/ldap.py:84 settings/serializers/auth/ldap_ha.py:66
msgid "Connect timeout (s)"
msgstr ""

#: settings/serializers/auth/ldap.py:89 settings/serializers/auth/ldap_ha.py:71
msgid "User DN cache timeout (s)"
msgstr ""

#: settings/serializers/auth/ldap.py:91
msgid ""
"Caching the User DN obtained during user login authentication can "
"effectively improve the speed of user authentication., 0 means no "
"cache<br>If the user OU structure has been adjusted, click Submit to clear "
"the user DN cache"
msgstr ""

#: settings/serializers/auth/ldap.py:97 settings/serializers/auth/ldap_ha.py:79
msgid "Search paged size (piece)"
msgstr ""

#: settings/serializers/auth/ldap_ha.py:23
#: settings/serializers/auth/ldap_ha.py:85
msgid "LDAP HA"
msgstr ""

#: settings/serializers/auth/ldap_ha.py:27
msgid "LDAP HA server URI"
msgstr ""

#: settings/serializers/auth/ldap_ha.py:73
msgid ""
"Caching the User DN obtained during user login authentication can "
"effectivelyimprove the speed of user authentication., 0 means no cache<br>If "
"the user OU structure has been adjusted, click Submit to clear the user DN "
"cache"
msgstr ""

#: settings/serializers/auth/oauth2.py:19
#: settings/serializers/auth/oauth2.py:22
msgid "OAuth2"
msgstr ""

#: settings/serializers/auth/oauth2.py:25
msgid "Logo"
msgstr ""

#: settings/serializers/auth/oauth2.py:28
msgid "Service provider"
msgstr ""

#: settings/serializers/auth/oauth2.py:31 settings/serializers/feature.py:87
#: xpack/plugins/cloud/serializers/account_attrs.py:35
msgid "Client ID"
msgstr ""

#: settings/serializers/auth/oauth2.py:34 settings/serializers/auth/oidc.py:24
#: settings/serializers/feature.py:90
#: xpack/plugins/cloud/serializers/account_attrs.py:38
msgid "Client Secret"
msgstr ""

#: settings/serializers/auth/oauth2.py:40 settings/serializers/auth/oidc.py:77
msgid "Authorization endpoint"
msgstr ""

#: settings/serializers/auth/oauth2.py:43 settings/serializers/auth/oidc.py:80
msgid "Token endpoint"
msgstr ""

#: settings/serializers/auth/oauth2.py:46 settings/serializers/auth/oidc.py:32
#: settings/serializers/auth/sms.py:111
msgid "Request method"
msgstr ""

#: settings/serializers/auth/oauth2.py:50 settings/serializers/auth/oidc.py:86
msgid "Userinfo endpoint"
msgstr ""

#: settings/serializers/auth/oauth2.py:53 settings/serializers/auth/oidc.py:89
msgid "End session endpoint"
msgstr ""

#: settings/serializers/auth/oauth2.py:57
msgid "When the user signs out, they also be logged out from the OAuth2 server"
msgstr ""

#: settings/serializers/auth/oauth2.py:62
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the OAuth2 service user attribute name"
msgstr ""

#: settings/serializers/auth/oauth2.py:67 settings/serializers/auth/oidc.py:113
#: settings/serializers/auth/saml2.py:45
msgid "Always update user"
msgstr ""

#: settings/serializers/auth/oidc.py:13 settings/serializers/auth/oidc.py:71
msgid "OIDC"
msgstr ""

#: settings/serializers/auth/oidc.py:17
msgid "Base site URL"
msgstr ""

#: settings/serializers/auth/oidc.py:18
msgid "The current site's URL is used to construct the callback address"
msgstr ""

#: settings/serializers/auth/oidc.py:21
msgid "Client Id"
msgstr ""

#: settings/serializers/auth/oidc.py:34
msgid "Share session"
msgstr ""

#: settings/serializers/auth/oidc.py:36
msgid "Ignore SSL verification"
msgstr ""

#: settings/serializers/auth/oidc.py:41
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the OIDC service user attribute name"
msgstr ""

#: settings/serializers/auth/oidc.py:45
msgid "Enable PKCE"
msgstr ""

#: settings/serializers/auth/oidc.py:47
msgid "Code challenge method"
msgstr ""

#: settings/serializers/auth/oidc.py:55
msgid "Use Keycloak"
msgstr ""

#: settings/serializers/auth/oidc.py:57
msgid ""
"Use Keycloak as the OpenID Connect server, or use standard OpenID Connect "
"Protocol"
msgstr ""

#: settings/serializers/auth/oidc.py:64
msgid "Realm name"
msgstr ""

#: settings/serializers/auth/oidc.py:71
msgid "OpenID Connect"
msgstr ""

#: settings/serializers/auth/oidc.py:74
msgid "Provider endpoint"
msgstr ""

#: settings/serializers/auth/oidc.py:83
msgid "JWKS endpoint"
msgstr ""

#: settings/serializers/auth/oidc.py:92
msgid "Signature algorithm"
msgstr ""

#: settings/serializers/auth/oidc.py:95
msgid "Signing key"
msgstr ""

#: settings/serializers/auth/oidc.py:98
msgid "Scopes"
msgstr ""

#: settings/serializers/auth/oidc.py:101
msgid "ID Token max age (s)"
msgstr ""

#: settings/serializers/auth/oidc.py:104
msgid "ID Token include claims"
msgstr ""

#: settings/serializers/auth/oidc.py:107
msgid "Use state"
msgstr ""

#: settings/serializers/auth/oidc.py:110
msgid "Use nonce"
msgstr ""

#: settings/serializers/auth/passkey.py:12
msgid "Only SSL domain can use passkey auth"
msgstr ""

#: settings/serializers/auth/passkey.py:15
msgid "FIDO Server ID"
msgstr ""

#: settings/serializers/auth/passkey.py:17
msgid ""
"The hostname can using passkey auth, If not set, will use request host and "
"the request host in DOMAINS, If multiple domains, use comma to separate"
msgstr ""

#: settings/serializers/auth/passkey.py:22
msgid "FIDO Server name"
msgstr ""

#: settings/serializers/auth/radius.py:14
#: settings/serializers/auth/radius.py:16
msgid "Radius"
msgstr ""

#: settings/serializers/auth/radius.py:23
msgid "OTP in RADIUS"
msgstr ""

#: settings/serializers/auth/radius.py:24
msgid "* Using OTP in RADIUS means users can employ RADIUS as a method for MFA"
msgstr ""

#: settings/serializers/auth/saml2.py:12 settings/serializers/auth/saml2.py:15
msgid "SAML2"
msgstr ""

#: settings/serializers/auth/saml2.py:18
msgid "IDP Metadata URL"
msgstr ""

#: settings/serializers/auth/saml2.py:21
msgid "IDP Metadata XML"
msgstr ""

#: settings/serializers/auth/saml2.py:24
msgid "SP advanced settings"
msgstr ""

#: settings/serializers/auth/saml2.py:28
msgid "SP private key"
msgstr ""

#: settings/serializers/auth/saml2.py:32
msgid "SP cert"
msgstr ""

#: settings/serializers/auth/saml2.py:37
msgid ""
"User attribute mapping, where the `key` is the SAML2 service user attribute "
"name and the `value` is the JumpServer user attribute name"
msgstr ""

#: settings/serializers/auth/saml2.py:43
msgid "When the user signs out, they also be logged out from the SAML2 server"
msgstr ""

#: settings/serializers/auth/slack.py:20
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the Slack service user attribute name"
msgstr ""

#: settings/serializers/auth/sms.py:18
msgid "Enable Short Message Service (SMS)"
msgstr ""

#: settings/serializers/auth/sms.py:21 xpack/plugins/cloud/models.py:36
msgid "Provider"
msgstr ""

#: settings/serializers/auth/sms.py:22
msgid "Short Message Service (SMS) provider or protocol"
msgstr ""

#: settings/serializers/auth/sms.py:25
msgid "Code length"
msgstr ""

#: settings/serializers/auth/sms.py:26
msgid "Length of the sent verification code"
msgstr ""

#: settings/serializers/auth/sms.py:31 settings/serializers/auth/sms.py:54
#: settings/serializers/auth/sms.py:62 settings/serializers/auth/sms.py:71
#: settings/serializers/auth/sms.py:82 settings/serializers/msg.py:83
msgid "Signature"
msgstr ""

#: settings/serializers/auth/sms.py:32 settings/serializers/auth/sms.py:55
#: settings/serializers/auth/sms.py:63 settings/serializers/auth/sms.py:72
msgid "Template code"
msgstr ""

#: settings/serializers/auth/sms.py:40 users/models/user/__init__.py:83
#: users/serializers/user.py:155
msgid "Phone"
msgstr ""

#: settings/serializers/auth/sms.py:69
msgid "App Access Address"
msgstr ""

#: settings/serializers/auth/sms.py:70
msgid "Signature channel number"
msgstr ""

#: settings/serializers/auth/sms.py:78
msgid "Enterprise code"
msgstr ""

#: settings/serializers/auth/sms.py:79
msgid "Shared secret"
msgstr ""

#: settings/serializers/auth/sms.py:80
msgid "Original number"
msgstr ""

#: settings/serializers/auth/sms.py:81
msgid "Business type"
msgstr ""

#: settings/serializers/auth/sms.py:85
#, python-brace-format
msgid ""
"Template need contain {code} and Signature + template length does not exceed "
"67 words. For example, your verification code is {code}, which is valid for "
"5 minutes. Please do not disclose it to others."
msgstr ""

#: settings/serializers/auth/sms.py:94
#, python-brace-format
msgid "The template needs to contain {code}"
msgstr ""

#: settings/serializers/auth/sms.py:97
msgid "Signature + Template must not exceed 65 words"
msgstr ""

#: settings/serializers/auth/sms.py:106
msgid "URL"
msgstr ""

#: settings/serializers/auth/sso.py:16
msgid "Enable SSO auth"
msgstr ""

#: settings/serializers/auth/sso.py:17
msgid "Other service can using SSO token login to JumpServer without password"
msgstr ""

#: settings/serializers/auth/sso.py:20
msgid "SSO auth key TTL"
msgstr ""

#: settings/serializers/auth/sso.py:20
#: xpack/plugins/cloud/serializers/account_attrs.py:200
msgid "Unit: second"
msgstr ""

#: settings/serializers/auth/wecom.py:20
msgid ""
"User attribute mapping, where the `key` is the JumpServer user attribute "
"name and the `value` is the WeCom service user attribute name"
msgstr ""

#: settings/serializers/basic.py:11
msgid "Site URL"
msgstr ""

#: settings/serializers/basic.py:13
msgid ""
"Site URL is the externally accessible address of the current product service "
"and is usually used in links in system emails"
msgstr ""

#: settings/serializers/basic.py:18
msgid "User guide url"
msgstr ""

#: settings/serializers/basic.py:19
msgid "User first login update profile done redirect to it"
msgstr ""

#: settings/serializers/basic.py:22
msgid "Global organization"
msgstr ""

#: settings/serializers/basic.py:23
msgid "The name of global organization to display"
msgstr ""

#: settings/serializers/basic.py:26
msgid "Document URL"
msgstr ""

#: settings/serializers/basic.py:27
msgid ""
"Document URL refers to the address in the top navigation bar Help - Document"
msgstr ""

#: settings/serializers/basic.py:30
msgid "Support URL"
msgstr ""

#: settings/serializers/basic.py:31
msgid ""
"Support URL refers to the address in the top navigation bar Help - Support"
msgstr ""

#: settings/serializers/basic.py:44
msgid "Organization name already exists"
msgstr ""

#: settings/serializers/cleaning.py:11
msgid "Period clean"
msgstr ""

#: settings/serializers/cleaning.py:15
msgid "Login log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:19
msgid "Task log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:23
msgid "Operate log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:27
msgid "password change log keep days (day)"
msgstr ""

#: settings/serializers/cleaning.py:31
msgid "FTP log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:35
msgid "Cloud sync task history retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:39
msgid "job execution retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:43
msgid "Activity log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:46
msgid "Session log retention days (day)"
msgstr ""

#: settings/serializers/cleaning.py:48
msgid ""
"Session, record, command will be delete if more than duration, only in "
"database, OSS will not be affected."
msgstr ""

#: settings/serializers/cleaning.py:53
msgid "Change secret and push record retention days (day)"
msgstr ""

#: settings/serializers/feature.py:20 settings/serializers/msg.py:68
msgid "Subject"
msgstr ""

#: settings/serializers/feature.py:24
msgid "More Link"
msgstr ""

#: settings/serializers/feature.py:27
#: settings/templates/ldap/_msg_import_ldap_user.html:6
#: terminal/models/session/session.py:46
msgid "Date end"
msgstr ""

#: settings/serializers/feature.py:40 settings/serializers/feature.py:42
#: settings/serializers/feature.py:43
msgid "Announcement"
msgstr ""

#: settings/serializers/feature.py:47 settings/serializers/feature.py:50
msgid "Vault"
msgstr ""

#: settings/serializers/feature.py:53
msgid "Vault provider"
msgstr ""

#: settings/serializers/feature.py:57
msgid "Record limit"
msgstr ""

#: settings/serializers/feature.py:59
msgid ""
"If the specific value is less than 999 (default), the system will "
"automatically perform a task every night: check and delete historical "
"accounts that exceed the predetermined number. If the value reaches or "
"exceeds 999 (default), no historical account deletion will be performed"
msgstr ""

#: settings/serializers/feature.py:77
msgid "Mount Point"
msgstr ""

#: settings/serializers/feature.py:93
#: xpack/plugins/cloud/serializers/account_attrs.py:41
msgid "Tenant ID"
msgstr ""

#: settings/serializers/feature.py:98 settings/serializers/feature.py:104
msgid "Chat AI"
msgstr ""

#: settings/serializers/feature.py:107
msgid "GPT Base URL"
msgstr ""

#: settings/serializers/feature.py:108
msgid "The base URL of the GPT service. For example: https://api.openai.com/v1"
msgstr ""

#: settings/serializers/feature.py:111 templates/_header_bar.html:96
msgid "API Key"
msgstr ""

#: settings/serializers/feature.py:115
msgid ""
"The proxy server address of the GPT service. For example: http://ip:port"
msgstr ""

#: settings/serializers/feature.py:118
msgid "GPT Model"
msgstr ""

#: settings/serializers/feature.py:127
msgid "Approval without login"
msgstr ""

#: settings/serializers/feature.py:128
msgid "Allow direct approval ticket without login"
msgstr ""

#: settings/serializers/feature.py:132
msgid "Period"
msgstr ""

#: settings/serializers/feature.py:133
msgid ""
"The default authorization time period when applying for assets via a ticket"
msgstr ""

#: settings/serializers/feature.py:136
msgid "hour"
msgstr ""

#: settings/serializers/feature.py:137
msgid "Unit"
msgstr ""

#: settings/serializers/feature.py:137
msgid "The unit of period"
msgstr ""

#: settings/serializers/feature.py:146
msgid ""
"Allow users to execute batch commands in the Workbench - Job Center - Adhoc"
msgstr ""

#: settings/serializers/feature.py:150
msgid "Command blacklist"
msgstr ""

#: settings/serializers/feature.py:151
msgid "Command blacklist in Adhoc"
msgstr ""

#: settings/serializers/feature.py:156
#: terminal/models/virtualapp/provider.py:17
#: terminal/models/virtualapp/virtualapp.py:36
#: terminal/models/virtualapp/virtualapp.py:97
#: terminal/serializers/virtualapp.py:32
msgid "Virtual app"
msgstr ""

#: settings/serializers/feature.py:159
msgid "Virtual App"
msgstr ""

#: settings/serializers/feature.py:161
msgid ""
"Virtual applications, you can use the Linux operating system as an "
"application server in remote applications."
msgstr ""

#: settings/serializers/msg.py:24
msgid "SMTP"
msgstr ""

#: settings/serializers/msg.py:25
msgid "EXCHANGE"
msgstr ""

#: settings/serializers/msg.py:34
msgid "The user to be used for email server authentication"
msgstr ""

#: settings/serializers/msg.py:38
msgid ""
"Password to use for the email server. It is used in conjunction with `User` "
"when authenticating to the email server"
msgstr ""

#: settings/serializers/msg.py:41
msgid "Sender"
msgstr ""

#: settings/serializers/msg.py:42
msgid "Sender email address (default to using the `User`)"
msgstr ""

#: settings/serializers/msg.py:46
msgid "The recipient is used for testing the email server's connectivity"
msgstr ""

#: settings/serializers/msg.py:51
msgid ""
"Whether to use an implicit TLS (secure) connection when talking to the SMTP "
"server. In most email documentation this type of TLS connection is referred "
"to as SSL. It is generally used on port 465"
msgstr ""

#: settings/serializers/msg.py:54
msgid "Use TLS"
msgstr ""

#: settings/serializers/msg.py:56
msgid ""
"Whether to use a TLS (secure) connection when talking to the SMTP server. "
"This is used for explicit TLS connections, generally on port 587"
msgstr ""

#: settings/serializers/msg.py:64
msgid "Subject prefix"
msgstr ""

#: settings/serializers/msg.py:69
msgid ""
"Tips: When creating a user, send the subject of the email (eg:Create account "
"successfully)"
msgstr ""

#: settings/serializers/msg.py:73
msgid "Honorific"
msgstr ""

#: settings/serializers/msg.py:74
msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)"
msgstr ""

#: settings/serializers/msg.py:80
#, python-brace-format
msgid ""
"Tips: When creating a user, send the content of the email, support "
"{username} {name} {email} label"
msgstr ""

#: settings/serializers/msg.py:84
msgid "Tips: Email signature (eg:jumpserver)"
msgstr ""

#: settings/serializers/other.py:8
msgid "More..."
msgstr ""

#: settings/serializers/other.py:11
msgid "Perm ungroup node"
msgstr ""

#: settings/serializers/other.py:12
msgid "Perm single to ungroup node"
msgstr ""

#: settings/serializers/security.py:17
msgid "User password expiration (day)"
msgstr ""

#: settings/serializers/security.py:19
msgid ""
"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 ""

#: settings/serializers/security.py:26
msgid "Recent password count"
msgstr ""

#: settings/serializers/security.py:28
msgid ""
"Tip: When the user resets the password, it cannot be the previous n "
"historical passwords of the user"
msgstr ""

#: settings/serializers/security.py:34
msgid "Minimum length (User)"
msgstr ""

#: settings/serializers/security.py:38
msgid "Minimum length (Admin)"
msgstr ""

#: settings/serializers/security.py:47
msgid "Digits"
msgstr ""

#: settings/serializers/security.py:50
msgid "Special characters"
msgstr ""

#: settings/serializers/security.py:55
msgid ""
"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:63 settings/serializers/security.py:73
msgid "Login failures count"
msgstr ""

#: settings/serializers/security.py:67 settings/serializers/security.py:77
msgid "Login failure period (minute)"
msgstr ""

#: settings/serializers/security.py:81
msgid "Login IP whitelist"
msgstr ""

#: settings/serializers/security.py:86
msgid "Login IP blacklist"
msgstr ""

#: settings/serializers/security.py:91
msgid "Only single device login"
msgstr ""

#: settings/serializers/security.py:92
msgid ""
"After the user logs in on the new device, other logged-in devices will "
"automatically log out"
msgstr ""

#: settings/serializers/security.py:95
msgid "Only exist user login"
msgstr ""

#: settings/serializers/security.py:97
msgid ""
"If enabled, non-existent users will not be allowed to log in; if disabled, "
"users of other authentication methods except local authentication methods "
"are allowed to log in and automatically create users (if the user does not "
"exist)"
msgstr ""

#: settings/serializers/security.py:103
msgid "Only from source login"
msgstr ""

#: settings/serializers/security.py:105
msgid ""
"If it is enabled, the user will only authenticate to the source when logging "
"in; if it is disabled, the user will authenticate all the enabled "
"authentication methods in a certain order when logging in, and as long as "
"one of the authentication methods is successful, they can log in directly"
msgstr ""

#: settings/serializers/security.py:116
#: users/templates/users/mfa_setting.html:160
msgid "Not enabled"
msgstr ""

#: settings/serializers/security.py:117
msgid "All users"
msgstr ""

#: settings/serializers/security.py:118
msgid "Only admin users"
msgstr ""

#: settings/serializers/security.py:120
msgid "Global MFA"
msgstr ""

#: settings/serializers/security.py:124
msgid "Third-party login MFA"
msgstr ""

#: settings/serializers/security.py:125
msgid "The third-party login modes include OIDC, CAS, and SAML2"
msgstr ""

#: settings/serializers/security.py:128
msgid "OTP issuer name"
msgstr ""

#: settings/serializers/security.py:132
msgid "OTP valid window"
msgstr ""

#: settings/serializers/security.py:136
msgid "MFA verify TTL"
msgstr ""

#: settings/serializers/security.py:138
msgid ""
"Unit: second, The verification MFA takes effect only when you view the "
"account password"
msgstr ""

#: settings/serializers/security.py:143
msgid "MFA in login page"
msgstr ""

#: settings/serializers/security.py:144
msgid "Eu security regulations(GDPR) require MFA to be on the login page"
msgstr ""

#: settings/serializers/security.py:148
msgid "Verify code TTL (second)"
msgstr ""

#: settings/serializers/security.py:149
msgid "Reset password and send SMS code expiration time"
msgstr ""

#: settings/serializers/security.py:153
msgid "Login dynamic code"
msgstr ""

#: settings/serializers/security.py:154
msgid ""
"The password and additional code are sent to a third party authentication "
"system for verification"
msgstr ""

#: settings/serializers/security.py:158
msgid "Login captcha"
msgstr ""

#: settings/serializers/security.py:159
msgid "Enable captcha to prevent robot authentication"
msgstr ""

#: settings/serializers/security.py:162
msgid "Suspicious Login Verification"
msgstr ""

#: settings/serializers/security.py:164
msgid ""
"The system determines whether the login IP address belongs to a common login "
"city. If the account is logged in from a common login city, the system sends "
"a remote login reminder"
msgstr ""

#: settings/serializers/security.py:170
msgid "Auto Disable Threshold (day)"
msgstr ""

#: settings/serializers/security.py:171
msgid ""
"Detect infrequent users daily and disable them if they exceed the "
"predetermined time limit"
msgstr ""

#: settings/serializers/security.py:191
msgid "Watermark"
msgstr ""

#: settings/serializers/security.py:192
msgid "Enabled, the web session and replay contains watermark information"
msgstr ""

#: settings/serializers/security.py:196
msgid "Max idle time (minute)"
msgstr ""

#: settings/serializers/security.py:197
msgid "If idle time more than it, disconnect connection."
msgstr ""

#: settings/serializers/security.py:200
msgid "Session expire at browser closed"
msgstr ""

#: settings/serializers/security.py:201
msgid "Whether to expire the session when the user closes their browser."
msgstr ""

#: settings/serializers/security.py:205
msgid "Max online time (hour)"
msgstr ""

#: settings/serializers/security.py:206
msgid "If session connection time more than it, disconnect connection."
msgstr ""

#: settings/serializers/security.py:209
msgid "Remember manual auth"
msgstr ""

#: settings/serializers/security.py:212
#: terminal/templates/terminal/_msg_session_sharing.html:10
msgid "Session share"
msgstr ""

#: settings/serializers/security.py:213
msgid "Enabled, Allows user active session to be shared with other users"
msgstr ""

#: settings/serializers/security.py:219
msgid "Insecure command alert"
msgstr ""

#: settings/serializers/security.py:222
msgid "Email recipient"
msgstr ""

#: settings/serializers/security.py:223
msgid "Multiple user using , split"
msgstr ""

#: settings/serializers/settings.py:62
#, python-format
msgid "[%s] %s"
msgstr ""

#: settings/serializers/terminal.py:15
msgid "Auto"
msgstr ""

#: settings/serializers/terminal.py:22
msgid "Registration"
msgstr ""

#: settings/serializers/terminal.py:24
msgid ""
"Allow component register, after all component setup, you should disable this "
"for security"
msgstr ""

#: settings/serializers/terminal.py:30
msgid ""
"* Allow users to log in to the KoKo component via password authentication"
msgstr ""

#: settings/serializers/terminal.py:36
msgid ""
"* Allow users to log in to the KoKo component via Public key "
"authentication<br/>If third-party authentication services, such as AD/LDAP, "
"are enabled, you should disable this option to prevent users from logging in "
"after being deleted from the AD/LDAP server"
msgstr ""

#: settings/serializers/terminal.py:43
msgid "Asset sorting"
msgstr ""

#: settings/serializers/terminal.py:46
msgid "Asset page size"
msgstr ""

#: settings/serializers/terminal.py:51
msgid ""
"* You can individually configure the service address and port in the service "
"endpoint<br/>If enabled, the Luna page will display the DB client launch "
"method when connecting to assets"
msgstr ""

#: settings/serializers/terminal.py:59
msgid ""
"* You can individually configure the service address and port in the service "
"endpoint<br/>If enabled, the Luna page will display the download rdp file "
"button and RDP Client launch method when connecting to assets"
msgstr ""

#: settings/serializers/terminal.py:66
msgid "Client connection"
msgstr ""

#: settings/serializers/terminal.py:68
msgid ""
"* Allow connecting to the KoKo component via SSH client<br/>If enabled, the "
"Luna page will display the SSH client launch method when connecting to assets"
msgstr ""

#: settings/serializers/tool.py:10
msgid "Tool"
msgstr ""

#: settings/serializers/tool.py:13
msgid "Tools in the Workbench"
msgstr ""

#: settings/serializers/tool.py:15
msgid ""
"*! If enabled, users with RBAC permissions will be able to utilize all tools "
"in the workbench"
msgstr ""

#: settings/tasks/ldap.py:73
msgid "Periodic import ldap user"
msgstr ""

#: settings/tasks/ldap.py:75 settings/tasks/ldap.py:85
msgid ""
"When LDAP auto-sync is configured, this task will be invoked to synchronize "
"users"
msgstr ""

#: settings/tasks/ldap.py:83
msgid "Periodic import ldap ha user"
msgstr ""

#: settings/tasks/ldap.py:117
msgid "Registration periodic import ldap user task"
msgstr ""

#: settings/tasks/ldap.py:119
msgid ""
"When LDAP auto-sync parameters change, such as Crontab parameters, the LDAP "
"sync task \n"
"        will be re-registered or updated, and this task will be invoked"
msgstr ""

#: settings/tasks/ldap.py:133
msgid "Registration periodic import ldap ha user task"
msgstr ""

#: settings/tasks/ldap.py:135
msgid ""
"When LDAP HA auto-sync parameters change, such as Crontab parameters, the "
"LDAP HA sync task \n"
"        will be re-registered or updated, and this task will be invoked"
msgstr ""

#: settings/templates/ldap/_msg_import_ldap_user.html:2
msgid "Sync task finish"
msgstr ""

#: settings/templates/ldap/_msg_import_ldap_user.html:9
msgid "Synced Organization"
msgstr ""

#: settings/templates/ldap/_msg_import_ldap_user.html:15
msgid "Synced User"
msgstr ""

#: settings/templates/ldap/_msg_import_ldap_user.html:22
msgid "No user synchronization required"
msgstr ""

#: settings/utils/ldap.py:509
msgid "ldap:// or ldaps:// protocol is used."
msgstr ""

#: settings/utils/ldap.py:520
msgid "Host or port is disconnected: {}"
msgstr ""

#: settings/utils/ldap.py:522
msgid "The port is not the port of the LDAP service: {}"
msgstr ""

#: settings/utils/ldap.py:524
msgid "Please add certificate: {}"
msgstr ""

#: settings/utils/ldap.py:528 settings/utils/ldap.py:555
#: settings/utils/ldap.py:585 settings/utils/ldap.py:613
msgid "Unknown error: {}"
msgstr ""

#: settings/utils/ldap.py:542
msgid "Bind DN or Password incorrect"
msgstr ""

#: settings/utils/ldap.py:549
msgid "Please enter Bind DN: {}"
msgstr ""

#: settings/utils/ldap.py:551
msgid "Please enter Password: {}"
msgstr ""

#: settings/utils/ldap.py:553
msgid "Please enter correct Bind DN and Password: {}"
msgstr ""

#: settings/utils/ldap.py:571
msgid "Invalid User OU or User search filter: {}"
msgstr ""

#: settings/utils/ldap.py:602
msgid "LDAP User attr map not include: {}"
msgstr ""

#: settings/utils/ldap.py:609
msgid "LDAP User attr map is not dict"
msgstr ""

#: settings/utils/ldap.py:628
msgid "LDAP authentication is not enabled"
msgstr ""

#: settings/utils/ldap.py:646
msgid "Error (Invalid LDAP server): {}"
msgstr ""

#: settings/utils/ldap.py:648
msgid "Error (Invalid Bind DN): {}"
msgstr ""

#: settings/utils/ldap.py:650
msgid "Error (Invalid LDAP User attr map): {}"
msgstr ""

#: settings/utils/ldap.py:652
msgid "Error (Invalid User OU or User search filter): {}"
msgstr ""

#: settings/utils/ldap.py:654
msgid "Error (Not enabled LDAP authentication): {}"
msgstr ""

#: settings/utils/ldap.py:656
msgid "Error (Unknown): {}"
msgstr ""

#: settings/utils/ldap.py:659
msgid "Succeed: Match {} users"
msgstr ""

#: settings/utils/ldap.py:689
msgid "Authentication failed (configuration incorrect): {}"
msgstr ""

#: settings/utils/ldap.py:693
msgid "Authentication failed (username or password incorrect): {}"
msgstr ""

#: settings/utils/ldap.py:695
msgid "Authentication failed (Unknown): {}"
msgstr ""

#: settings/utils/ldap.py:698
msgid "Authentication success: {}"
msgstr ""

#: settings/ws.py:222
msgid "No LDAP user was found"
msgstr ""

#: settings/ws.py:228
msgid "Total {}, success {}, failure {}"
msgstr ""

#: templates/_csv_import_export.html:8
msgid "Export"
msgstr ""

#: templates/_csv_import_export.html:13 templates/_csv_import_modal.html:5
#: xpack/plugins/cloud/const.py:65
msgid "Import"
msgstr ""

#: templates/_csv_import_modal.html:12
msgid "Download the imported template or use the exported CSV file format"
msgstr ""

#: 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 ""

#: 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 ""

#: 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
msgid "Docs"
msgstr ""

#: templates/_header_bar.html:27
msgid "Commercial support"
msgstr ""

#: templates/_header_bar.html:85 users/forms/profile.py:43
msgid "Profile"
msgstr ""

#: templates/_header_bar.html:89
msgid "Admin page"
msgstr ""

#: templates/_header_bar.html:92
msgid "User page"
msgstr ""

#: templates/_header_bar.html:97
msgid "Logout"
msgstr ""

#: templates/_message.html:6
msgid ""
"\n"
"                Your account has expired, please contact the administrator.\n"
"            "
msgstr ""

#: 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 ""

#: 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 ""

#: 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 ""

#: 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 ""

#: templates/_mfa_login_field.html:31
#: users/templates/users/forgot_password.html:101
msgid "Send"
msgstr ""

#: templates/_mfa_login_field.html:110
#: users/templates/users/forgot_password.html:176
msgid "Wait: "
msgstr ""

#: templates/_mfa_login_field.html:120
#: users/templates/users/forgot_password.html:192
msgid "The verification code has been sent"
msgstr ""

#: templates/_without_nav_base.html:26
msgid "Home page"
msgstr "Home"

#: templates/resource_download.html:20 templates/resource_download.html:35
#: users/const.py:65
msgid "Client"
msgstr ""

#: templates/resource_download.html:22
msgid ""
"JumpServer Client, currently used to launch the client, now only support "
"launch RDP SSH client, The Telnet client will next"
msgstr ""

#: templates/resource_download.html:35
msgid "Microsoft"
msgstr ""

#: templates/resource_download.html:35
msgid "Official"
msgstr ""

#: templates/resource_download.html:37
msgid ""
"macOS needs to download the client to connect RDP asset, which comes with "
"Windows"
msgstr ""

#: templates/resource_download.html:45
msgid "Windows Remote application publisher tools"
msgstr ""

#: templates/resource_download.html:46
msgid ""
"OpenSSH is a program used to connect remote applications in the Windows "
"Remote Application Publisher"
msgstr ""

#: templates/resource_download.html:53
msgid "Offline video player"
msgstr ""

#: terminal/api/applet/applet.py:52 terminal/api/applet/applet.py:55
#: terminal/api/virtualapp/virtualapp.py:43
#: terminal/api/virtualapp/virtualapp.py:46
msgid "Invalid zip file"
msgstr ""

#: terminal/api/applet/applet.py:74
msgid "This is enterprise edition applet"
msgstr ""

#: terminal/api/applet/applet.py:91
msgid "Applet not found in path: {}"
msgstr ""

#: terminal/api/component/endpoint.py:32
msgid "Not found protocol query params"
msgstr ""

#: terminal/api/component/storage.py:31
msgid "Deleting the default storage is not allowed"
msgstr ""

#: terminal/api/component/storage.py:36
msgid "Cannot delete storage that is being used: {}"
msgstr ""

#: terminal/api/component/storage.py:77 terminal/api/component/storage.py:78
msgid "Command storages"
msgstr ""

#: terminal/api/component/storage.py:84 xpack/plugins/cloud/manager.py:107
msgid "Invalid"
msgstr ""

#: terminal/api/component/storage.py:132 terminal/tasks.py:208
msgid "Test failure: {}"
msgstr ""

#: terminal/api/component/storage.py:135
msgid "Test successful"
msgstr ""

#: terminal/api/component/storage.py:137
msgid "Test failure: Please check configuration"
msgstr ""

#: terminal/api/component/terminal.py:55
msgid "Have online sessions"
msgstr ""

#: terminal/api/session/session.py:48
#, python-format
msgid "User %s %s session %s replay"
msgstr ""

#: terminal/api/session/session.py:326
msgid "Session does not exist: {}"
msgstr ""

#: terminal/api/session/session.py:329
msgid "Session is finished or the protocol not supported"
msgstr ""

#: terminal/api/session/session.py:342
msgid "User does not have permission"
msgstr ""

#: terminal/api/session/sharing.py:29
msgid "Secure session sharing settings is disabled"
msgstr ""

#: terminal/apps.py:9
msgid "App Terminals"
msgstr "Terminals"

#: terminal/backends/command/models.py:19
msgid "Input"
msgstr ""

#: terminal/backends/command/models.py:20 terminal/serializers/command.py:73
msgid "Output"
msgstr ""

#: terminal/backends/command/models.py:24 terminal/serializers/command.py:22
#: terminal/templates/terminal/_msg_command_warning.html:10
msgid "Risk level"
msgstr ""

#: terminal/connect_methods.py:29
msgid "SSH Client"
msgstr ""

#: terminal/connect_methods.py:30
msgid "SSH Guide"
msgstr ""

#: terminal/connect_methods.py:31
msgid "SFTP Client"
msgstr ""

#: terminal/connect_methods.py:33
msgid "DB Guide"
msgstr ""

#: terminal/connect_methods.py:34
msgid "DB Client"
msgstr ""

#: terminal/connect_methods.py:36
msgid "Remote Desktop"
msgstr ""

#: terminal/connect_methods.py:37
msgid "RDP Guide"
msgstr ""

#: terminal/connect_methods.py:39
msgid "VNC Client"
msgstr ""

#: terminal/connect_methods.py:40
msgid "VNC Guide"
msgstr ""

#: terminal/const.py:10
msgid "Warning"
msgstr ""

#: terminal/const.py:12
msgid "Review & Reject"
msgstr ""

#: terminal/const.py:13
msgid "Review & Accept"
msgstr ""

#: terminal/const.py:14
msgid "Review & Cancel"
msgstr ""

#: terminal/const.py:45
msgid "Critical"
msgstr ""

#: terminal/const.py:46
msgid "High"
msgstr ""

#: terminal/const.py:47 terminal/const.py:86
#: users/templates/users/reset_password.html:54
msgid "Normal"
msgstr ""

#: terminal/const.py:48
msgid "Offline"
msgstr ""

#: terminal/const.py:82
msgid "Mismatch"
msgstr ""

#: terminal/const.py:87
msgid "Tunnel"
msgstr ""

#: terminal/const.py:93
msgid "Read only"
msgstr ""

#: terminal/const.py:94
msgid "Writable"
msgstr ""

#: terminal/const.py:98
msgid "Kill session"
msgstr ""

#: terminal/const.py:99
msgid "Lock session"
msgstr ""

#: terminal/const.py:100
msgid "Unlock session"
msgstr ""

#: terminal/const.py:105
msgid "Replay create failed"
msgstr ""

#: terminal/const.py:106
msgid "Replay upload failed"
msgstr ""

#: terminal/const.py:107
msgid "Replay convert failed"
msgstr ""

#: terminal/const.py:108
msgid "Replay unsupported"
msgstr ""

#: terminal/exceptions.py:8
msgid "Bulk create not support"
msgstr ""

#: terminal/exceptions.py:13
msgid "Storage is invalid"
msgstr ""

#: terminal/models/applet/applet.py:31 xpack/plugins/license/models.py:88
msgid "Community edition"
msgstr ""

#: terminal/models/applet/applet.py:32
msgid "Enterprise"
msgstr ""

#: terminal/models/applet/applet.py:35
#: terminal/models/virtualapp/virtualapp.py:20
msgid "Display name"
msgstr ""

#: terminal/models/applet/applet.py:37
#: terminal/models/virtualapp/virtualapp.py:22
msgid "Author"
msgstr ""

#: terminal/models/applet/applet.py:39 terminal/serializers/applet.py:31
msgid "Edition"
msgstr ""

#: terminal/models/applet/applet.py:44
msgid "Can concurrent"
msgstr ""

#: terminal/models/applet/applet.py:49 terminal/serializers/applet_host.py:179
#: terminal/serializers/storage.py:193
msgid "Hosts"
msgstr ""

#: terminal/models/applet/applet.py:94
#: terminal/models/virtualapp/virtualapp.py:66
msgid "Applet pkg not valid, Missing file {}"
msgstr ""

#: terminal/models/applet/applet.py:113
msgid "Load platform.yml failed: {}"
msgstr ""

#: terminal/models/applet/applet.py:116
msgid "Only support custom platform"
msgstr ""

#: terminal/models/applet/applet.py:121
msgid "Missing type in platform.yml"
msgstr ""

#: terminal/models/applet/applet.py:330 terminal/models/applet/host.py:36
#: terminal/models/applet/host.py:138
msgid "Hosting"
msgstr ""

#: terminal/models/applet/applet.py:336
msgid "Applet Publication"
msgstr ""

#: terminal/models/applet/host.py:18 terminal/serializers/applet_host.py:81
msgid "Deploy options"
msgstr ""

#: terminal/models/applet/host.py:19
msgid "Auto create accounts"
msgstr ""

#: terminal/models/applet/host.py:20
msgid "Accounts create amount"
msgstr ""

#: terminal/models/applet/host.py:21
msgid "Inited"
msgstr ""

#: terminal/models/applet/host.py:22
msgid "Date inited"
msgstr ""

#: terminal/models/applet/host.py:23
msgid "Date synced"
msgstr ""

#: terminal/models/applet/host.py:28
msgid "Using same account"
msgstr ""

#: terminal/models/applet/host.py:139
msgid "Initial"
msgstr ""

#: terminal/models/applet/host.py:148
msgid "Applet host deployment"
msgstr ""

#: terminal/models/component/endpoint.py:16
msgid "HTTPS port"
msgstr ""

#: terminal/models/component/endpoint.py:17
msgid "HTTP port"
msgstr ""

#: terminal/models/component/endpoint.py:18
msgid "SSH port"
msgstr ""

#: terminal/models/component/endpoint.py:19
msgid "RDP port"
msgstr ""

#: terminal/models/component/endpoint.py:20
msgid "MySQL port"
msgstr ""

#: terminal/models/component/endpoint.py:21
msgid "MariaDB port"
msgstr ""

#: terminal/models/component/endpoint.py:22
msgid "PostgreSQL port"
msgstr ""

#: terminal/models/component/endpoint.py:23
msgid "Redis port"
msgstr ""

#: terminal/models/component/endpoint.py:24
msgid "SQLServer port"
msgstr ""

#: terminal/models/component/endpoint.py:25
msgid "VNC port"
msgstr ""

#: terminal/models/component/endpoint.py:33
#: terminal/models/component/endpoint.py:120
#: terminal/serializers/endpoint.py:80 terminal/serializers/storage.py:41
#: terminal/serializers/storage.py:53 terminal/serializers/storage.py:83
#: terminal/serializers/storage.py:93 terminal/serializers/storage.py:101
msgid "Endpoint"
msgstr ""

#: terminal/models/component/endpoint.py:126
msgid "Endpoint rule"
msgstr ""

#: terminal/models/component/status.py:15
msgid "Session Online"
msgstr ""

#: terminal/models/component/status.py:16
msgid "CPU Load"
msgstr ""

#: terminal/models/component/status.py:17
msgid "Memory Used"
msgstr ""

#: terminal/models/component/status.py:18
msgid "Disk Used"
msgstr ""

#: terminal/models/component/status.py:19
msgid "Connections"
msgstr ""

#: terminal/models/component/status.py:20
msgid "Threads"
msgstr ""

#: terminal/models/component/status.py:21
msgid "Boot Time"
msgstr ""

#: terminal/models/component/storage.py:144
#: terminal/models/component/terminal.py:91
msgid "Command storage"
msgstr ""

#: terminal/models/component/storage.py:212
#: terminal/models/component/terminal.py:92
msgid "Replay storage"
msgstr ""

#: terminal/models/component/terminal.py:88
msgid "type"
msgstr ""

#: terminal/models/component/terminal.py:90 terminal/serializers/command.py:76
msgid "Remote Address"
msgstr ""

#: terminal/models/component/terminal.py:93
msgid "Application User"
msgstr ""

#: terminal/models/component/terminal.py:184
msgid "Can view terminal config"
msgstr ""

#: terminal/models/session/command.py:76
msgid "Command record"
msgstr ""

#: terminal/models/session/replay.py:12
msgid "Session replay"
msgstr ""

#: terminal/models/session/replay.py:14
msgid "Can upload session replay"
msgstr ""

#: terminal/models/session/replay.py:15
msgid "Can download session replay"
msgstr ""

#: terminal/models/session/session.py:35
msgid "Account ID"
msgstr ""

#: terminal/models/session/session.py:37 terminal/models/session/sharing.py:118
msgid "Login from"
msgstr ""

#: terminal/models/session/session.py:42
msgid "Replay"
msgstr ""

#: terminal/models/session/session.py:48 terminal/serializers/session.py:112
msgid "Command amount"
msgstr ""

#: terminal/models/session/session.py:49 terminal/serializers/session.py:32
msgid "Error reason"
msgstr ""

#: terminal/models/session/session.py:308
msgid "Session record"
msgstr ""

#: terminal/models/session/session.py:310
msgid "Can monitor session"
msgstr ""

#: terminal/models/session/session.py:311
msgid "Can share session"
msgstr ""

#: terminal/models/session/session.py:312
msgid "Can terminate session"
msgstr ""

#: terminal/models/session/session.py:313
msgid "Can validate session action perm"
msgstr ""

#: terminal/models/session/sharing.py:32
msgid "Expired time (min)"
msgstr ""

#: terminal/models/session/sharing.py:36 terminal/serializers/sharing.py:20
#: terminal/serializers/sharing.py:52
msgid "Action permission"
msgstr ""

#: terminal/models/session/sharing.py:38
msgid "Origin"
msgstr ""

#: terminal/models/session/sharing.py:42 terminal/models/session/sharing.py:100
#: terminal/notifications.py:279
msgid "Session sharing"
msgstr ""

#: terminal/models/session/sharing.py:44
msgid "Can add super session sharing"
msgstr ""

#: terminal/models/session/sharing.py:83
msgid "Link not active"
msgstr ""

#: terminal/models/session/sharing.py:85
msgid "Link expired"
msgstr ""

#: terminal/models/session/sharing.py:87
msgid "User not allowed to join"
msgstr ""

#: terminal/models/session/sharing.py:104 terminal/serializers/sharing.py:71
msgid "Joiner"
msgstr ""

#: terminal/models/session/sharing.py:107
msgid "Date joined"
msgstr ""

#: terminal/models/session/sharing.py:110
msgid "Date left"
msgstr ""

#: terminal/models/session/sharing.py:133
msgid "Session join record"
msgstr ""

#: terminal/models/session/sharing.py:149
msgid "Invalid verification code"
msgstr ""

#: terminal/models/session/sharing.py:156
msgid "You have already joined this session"
msgstr ""

#: terminal/models/virtualapp/provider.py:11
msgid "Hostname"
msgstr ""

#: terminal/models/virtualapp/provider.py:23
#: terminal/models/virtualapp/virtualapp.py:94
#: terminal/serializers/virtualapp.py:34
msgid "App Provider"
msgstr ""

#: terminal/models/virtualapp/virtualapp.py:32
msgid "Providers"
msgstr ""

#: terminal/models/virtualapp/virtualapp.py:102
msgid "Virtual app publication"
msgstr ""

#: terminal/notifications.py:26
msgid "Sessions"
msgstr ""

#: terminal/notifications.py:73
msgid "Command warning"
msgstr ""

#: terminal/notifications.py:128 terminal/notifications.py:183
msgid "Command reject"
msgstr ""

#: terminal/notifications.py:158 terminal/notifications.py:218
msgid "Level"
msgstr ""

#: terminal/notifications.py:242
msgid "Command and replay storage"
msgstr "Storage"

#: terminal/notifications.py:258 terminal/tasks.py:212
#: xpack/plugins/cloud/api.py:160
#: xpack/plugins/cloud/serializers/account.py:121
#: xpack/plugins/cloud/serializers/account.py:123
msgid "Test failure: Account invalid"
msgstr ""

#: terminal/notifications.py:268
#: terminal/templates/terminal/_msg_check_command_replay_storage_connectivity.html:4
msgid "Invalid storage"
msgstr ""

#: terminal/serializers/applet.py:28 terminal/serializers/virtualapp.py:15
msgid "Icon"
msgstr ""

#: terminal/serializers/applet_host.py:24
msgid "Per Device (Device number limit)"
msgstr ""

#: terminal/serializers/applet_host.py:25
msgid "Per User (User number limit)"
msgstr ""

#: terminal/serializers/applet_host.py:37
msgid "Core API"
msgstr ""

#: terminal/serializers/applet_host.py:38
msgid ""
" \n"
"        Tips: The application release machine communicates with the Core "
"service. \n"
"        If the release machine and the Core service are on the same network "
"segment, \n"
"        it is recommended to fill in the intranet address, otherwise fill in "
"the current site URL \n"
"        <br> \n"
"        eg: https://172.16.10.110 or https://dev.jumpserver.com\n"
"        "
msgstr ""

#: terminal/serializers/applet_host.py:46 terminal/serializers/storage.py:207
msgid "Ignore Certificate Verification"
msgstr ""

#: terminal/serializers/applet_host.py:48
msgid "Existing RDS license"
msgstr ""

#: terminal/serializers/applet_host.py:50
msgid ""
"If not exist, the RDS will be in trial mode, and the trial period is 120 "
"days. <a href=\"https://learn.microsoft.com/en-us/windows-server/remote/"
"remote-desktop-services/rds-client-access-license\">Detail</a>"
msgstr ""

#: terminal/serializers/applet_host.py:55
msgid "RDS License Server"
msgstr ""

#: terminal/serializers/applet_host.py:57
msgid "RDS Licensing Mode"
msgstr ""

#: terminal/serializers/applet_host.py:60
msgid "RDS Single Session Per User"
msgstr ""

#: terminal/serializers/applet_host.py:61
msgid ""
"Tips: A RDS user can have only one session at a time. If set, when next "
"login connected, previous session will be disconnected."
msgstr ""

#: terminal/serializers/applet_host.py:65
msgid "RDS Max Disconnection Time (ms)"
msgstr ""

#: terminal/serializers/applet_host.py:67
msgid ""
"Tips: Set the maximum duration for keeping a disconnected session active on "
"the server (log off the session after 60000 milliseconds)."
msgstr ""

#: terminal/serializers/applet_host.py:72
msgid "RDS Remote App Logoff Time Limit (ms)"
msgstr ""

#: terminal/serializers/applet_host.py:74
msgid ""
"Tips: Set the logoff time for RemoteApp sessions after closing all RemoteApp "
"programs (0 milliseconds, log off the session immediately)."
msgstr ""

#: terminal/serializers/applet_host.py:83 terminal/serializers/terminal.py:47
#: terminal/serializers/virtualapp_provider.py:13
msgid "Load status"
msgstr ""

#: terminal/serializers/applet_host.py:97
msgid ""
"These accounts are used to connect to the published application, the account "
"is now divided into two types, one is dedicated to each account, each user "
"has a private account, the other is public, when the application does not "
"support multiple open and the special has been used, the public account will "
"be used to connect"
msgstr ""

#: terminal/serializers/applet_host.py:104
msgid "The number of public accounts created automatically"
msgstr ""

#: terminal/serializers/applet_host.py:107
msgid ""
"Connect to the host using the same account first. For security reasons, "
"please set the configuration item CACHE_LOGIN_PASSWORD_ENABLED=true and "
"restart the service to enable it."
msgstr ""

#: terminal/serializers/applet_host.py:149
msgid "Install applets"
msgstr ""

#: terminal/serializers/applet_host.py:179
msgid "Host ID"
msgstr ""

#: terminal/serializers/applet_host.py:180
msgid "Applet ID"
msgstr ""

#: terminal/serializers/command.py:41
msgid "Command Filter ACL"
msgstr ""

#: terminal/serializers/command.py:44
msgid "Command Group"
msgstr ""

#: terminal/serializers/command.py:55
msgid "Invalid command filter ACL id"
msgstr ""

#: terminal/serializers/command.py:59
msgid "Invalid command group id"
msgstr ""

#: terminal/serializers/command.py:63
msgid "Invalid session id"
msgstr ""

#: terminal/serializers/command.py:74
msgid "Timestamp"
msgstr ""

#: terminal/serializers/endpoint.py:15
msgid "Oracle port"
msgstr ""

#: terminal/serializers/endpoint.py:18
msgid "Oracle port range"
msgstr ""

#: terminal/serializers/endpoint.py:20
msgid ""
"Oracle proxy server listen port is dynamic, Each additional Oracle database "
"instance adds a port listener"
msgstr ""

#: terminal/serializers/endpoint.py:38
msgid ""
"The host address accessed when connecting to assets, if it is empty, the "
"access address of the current browser will be used (the default endpoint "
"does not allow modification of the host)"
msgstr ""

#: terminal/serializers/endpoint.py:71
msgid ""
"The assets within this IP range, the following endpoint will be used for the "
"connection"
msgstr ""

#: terminal/serializers/endpoint.py:72
msgid ""
"If asset IP addresses under different endpoints conflict, use asset labels"
msgstr ""

#: terminal/serializers/endpoint.py:76
msgid "Asset IP"
msgstr ""

#: terminal/serializers/session.py:27 terminal/serializers/session.py:55
msgid "Can replay"
msgstr ""

#: terminal/serializers/session.py:28 terminal/serializers/session.py:56
msgid "Can join"
msgstr ""

#: terminal/serializers/session.py:29 terminal/serializers/session.py:59
msgid "Can terminate"
msgstr ""

#: terminal/serializers/session.py:51
msgid "User ID"
msgstr ""

#: terminal/serializers/session.py:52
msgid "Asset ID"
msgstr ""

#: terminal/serializers/session.py:53
msgid "Login from display"
msgstr ""

#: terminal/serializers/session.py:60
msgid "Terminal display"
msgstr ""

#: terminal/serializers/session.py:103
msgid "No asset or invalid asset"
msgstr ""

#: terminal/serializers/storage.py:23
msgid "Endpoint invalid: remove path `{}`"
msgstr ""

#: terminal/serializers/storage.py:29
msgid "Bucket"
msgstr ""

#: terminal/serializers/storage.py:33
msgid "Access key ID"
msgstr ""

#: terminal/serializers/storage.py:37
#: xpack/plugins/cloud/serializers/account_attrs.py:20
msgid "Access key secret"
msgstr ""

#: terminal/serializers/storage.py:68 xpack/plugins/cloud/manager.py:107
#: xpack/plugins/cloud/manager.py:112 xpack/plugins/cloud/models.py:287
msgid "Region"
msgstr ""

#: terminal/serializers/storage.py:112
msgid "Container name"
msgstr ""

#: terminal/serializers/storage.py:115
msgid "Account key"
msgstr ""

#: terminal/serializers/storage.py:118
msgid "Endpoint suffix"
msgstr ""

#: terminal/serializers/storage.py:129
msgid "HOST"
msgstr ""

#: terminal/serializers/storage.py:152
msgid "SFTP Root"
msgstr ""

#: terminal/serializers/storage.py:173
msgid "The address cannot contain the special character `#`"
msgstr ""

#: terminal/serializers/storage.py:175
msgid "The address format is incorrect"
msgstr ""

#: terminal/serializers/storage.py:182
msgid "Host invalid"
msgstr ""

#: terminal/serializers/storage.py:185
msgid "Port invalid"
msgstr ""

#: terminal/serializers/storage.py:194
msgid ""
"If there are multiple hosts, use a comma (,) to separate them. <br>(For "
"example: http://www.jumpserver.a.com:9100, http://www.jumpserver.b.com:9100)"
msgstr ""

#: terminal/serializers/storage.py:199
msgid "Index by date"
msgstr ""

#: terminal/serializers/storage.py:200
msgid "Whether to create an index by date"
msgstr ""

#: terminal/serializers/storage.py:203
msgid "Index"
msgstr ""

#: terminal/serializers/storage.py:205
msgid "Doc type"
msgstr ""

#: terminal/serializers/storage.py:257
msgid "Store locally"
msgstr ""

#: terminal/serializers/storage.py:258
msgid "Do not save"
msgstr ""

#: terminal/serializers/storage.py:273
msgid ""
"set as the default storage, will make new Component use the current storage "
"by default, without affecting existing Component"
msgstr ""

#: terminal/serializers/task.py:9
msgid "Session id"
msgstr ""

#: terminal/serializers/terminal.py:42
msgid "Online sessions"
msgstr ""

#: terminal/serializers/terminal.py:43
msgid "Is alive"
msgstr "Is alive"

#: terminal/serializers/terminal.py:49
msgid "Stat"
msgstr ""

#: terminal/serializers/terminal.py:83 terminal/serializers/terminal.py:91
msgid "Not found"
msgstr ""

#: terminal/serializers/virtualapp_provider.py:26
msgid "Container ID"
msgstr ""

#: terminal/serializers/virtualapp_provider.py:27
msgid "Container Image"
msgstr ""

#: terminal/serializers/virtualapp_provider.py:28
msgid "Container Name"
msgstr ""

#: terminal/serializers/virtualapp_provider.py:29
msgid "Container Status"
msgstr ""

#: terminal/serializers/virtualapp_provider.py:30
msgid "Container Ports"
msgstr ""

#: terminal/session_lifecycle.py:30
#, python-format
msgid "Connect to asset %s success"
msgstr ""

#: terminal/session_lifecycle.py:38
#, python-format
msgid "Connect to asset %s finished: %s"
msgstr ""

#: terminal/session_lifecycle.py:48
#, python-format
msgid "User %s create share link"
msgstr ""

#: terminal/session_lifecycle.py:57
#, python-format
msgid "User %s join session"
msgstr ""

#: terminal/session_lifecycle.py:69
#, python-format
msgid "User %s leave session"
msgstr ""

#: terminal/session_lifecycle.py:81
#, python-format
msgid "User %s join to monitor session"
msgstr ""

#: terminal/session_lifecycle.py:93
#, python-format
msgid "User %s exit to monitor session"
msgstr ""

#: terminal/session_lifecycle.py:105
msgid "Replay start to convert"
msgstr ""

#: terminal/session_lifecycle.py:113
msgid "Replay successfully converted to MP4 format"
msgstr ""

#: terminal/session_lifecycle.py:121
#, python-format
msgid "Replay failed to convert to MP4 format: %s"
msgstr ""

#: terminal/session_lifecycle.py:129
msgid "Replay start to upload"
msgstr ""

#: terminal/session_lifecycle.py:137
msgid "Replay successfully uploaded"
msgstr ""

#: terminal/session_lifecycle.py:145
#, python-format
msgid "Replay failed to upload: %s"
msgstr ""

#: terminal/session_lifecycle.py:152
msgid "connect failed"
msgstr ""

#: terminal/session_lifecycle.py:153
msgid "connection disconnect"
msgstr ""

#: terminal/session_lifecycle.py:154
msgid "user closed"
msgstr ""

#: terminal/session_lifecycle.py:155
msgid "idle disconnect"
msgstr ""

#: terminal/session_lifecycle.py:156
msgid "admin terminated"
msgstr ""

#: terminal/session_lifecycle.py:157
msgid "maximum session time has been reached"
msgstr ""

#: terminal/session_lifecycle.py:158
msgid "permission has expired"
msgstr ""

#: terminal/session_lifecycle.py:159
msgid "storage is null"
msgstr ""

#: terminal/tasks.py:32
msgid "Periodic delete terminal status"
msgstr ""

#: terminal/tasks.py:43
msgid "Clean orphan session"
msgstr ""

#: terminal/tasks.py:45
msgid ""
"Check every 10 minutes for asset connection sessions that have been inactive "
"for 3 \n"
"        minutes and mark these sessions as completed"
msgstr ""

#: terminal/tasks.py:68
msgid "Upload session replay to external storage"
msgstr ""

#: terminal/tasks.py:70 terminal/tasks.py:104
msgid ""
"If SERVER_REPLAY_STORAGE is configured in the config.txt, session commands "
"and \n"
"        recordings will be uploaded to external storage"
msgstr ""

#: terminal/tasks.py:102
msgid "Upload session replay part file to external storage"
msgstr ""

#: terminal/tasks.py:123
msgid "Run applet host deployment"
msgstr ""

#: terminal/tasks.py:126
msgid ""
"When deploying from the remote application publisher details page, and the "
"'Deploy' \n"
"        button is clicked, this task will be executed"
msgstr ""

#: terminal/tasks.py:137
msgid "Install applet"
msgstr ""

#: terminal/tasks.py:140
msgid ""
"When the 'Deploy' button is clicked in the 'Remote Application' section of "
"the remote \n"
"        application publisher details page, this task will be executed"
msgstr ""

#: terminal/tasks.py:152
msgid "Uninstall applet"
msgstr ""

#: terminal/tasks.py:155
msgid ""
"When the 'Uninstall' button is clicked in the 'Remote Application' section "
"of the \n"
"        remote application publisher details page, this task will be executed"
msgstr ""

#: terminal/tasks.py:167
msgid "Generate applet host accounts"
msgstr ""

#: terminal/tasks.py:170
msgid ""
"When a remote publishing server is created and an account needs to be "
"created \n"
"        automatically, this task will be executed"
msgstr ""

#: terminal/tasks.py:184
msgid "Check command replay storage connectivity"
msgstr ""

#: terminal/tasks.py:186
msgid ""
"Check every day at midnight whether the external storage for commands and "
"recordings \n"
"        is accessible. If it is not accessible, send a notification to the "
"recipients specified \n"
"        in 'System Settings - Notifications - Subscription - Storage - "
"Connectivity'"
msgstr ""

#: terminal/templates/terminal/_msg_command_alert.html:10
msgid "view"
msgstr ""

#: terminal/utils/db_port_mapper.py:88
msgid ""
"No available port is matched. The number of databases may have exceeded the "
"number of ports open to the database agent service, Contact the "
"administrator to open more ports."
msgstr ""

#: terminal/utils/db_port_mapper.py:116
msgid ""
"No ports can be used, check and modify the limit on the number of ports that "
"Magnus listens on in the configuration file."
msgstr ""

#: terminal/utils/db_port_mapper.py:118
msgid "All available port count: {}, Already use port count: {}"
msgstr ""

#: tickets/api/ticket.py:88 tickets/models/ticket/general.py:289
msgid "Applicant"
msgstr ""

#: tickets/apps.py:7
msgid "App Tickets"
msgstr "Tickets"

#: tickets/const.py:10
msgid "Apply for asset"
msgstr ""

#: tickets/const.py:17 tickets/const.py:24 tickets/const.py:42
msgid "Open"
msgstr ""

#: tickets/const.py:19 tickets/const.py:31
msgid "Approved"
msgstr ""

#: tickets/const.py:20 tickets/const.py:32
msgid "Rejected"
msgstr ""

#: tickets/const.py:30 tickets/const.py:37
msgid "Closed"
msgstr ""

#: tickets/const.py:49
msgid "One level"
msgstr ""

#: tickets/const.py:50
msgid "Two level"
msgstr ""

#: tickets/const.py:54
msgid "All assets"
msgstr ""

#: tickets/const.py:55
msgid "Permed assets"
msgstr ""

#: tickets/const.py:56
msgid "Permed valid assets"
msgstr ""

#: tickets/errors.py:9
msgid "Ticket already closed"
msgstr ""

#: tickets/handlers/apply_asset.py:39
msgid ""
"Created by the ticket ticket title: {} ticket applicant: {} ticket "
"processor: {} ticket ID: {}"
msgstr ""

#: tickets/handlers/base.py:84
msgid "Change field"
msgstr ""

#: tickets/handlers/base.py:84
msgid "Before change"
msgstr ""

#: tickets/handlers/base.py:84
msgid "After change"
msgstr ""

#: tickets/handlers/base.py:96
msgid "{} {} the ticket"
msgstr ""

#: tickets/models/comment.py:14
msgid "common"
msgstr ""

#: tickets/models/comment.py:23
msgid "User display name"
msgstr ""

#: tickets/models/comment.py:24
msgid "Body"
msgstr ""

#: tickets/models/flow.py:21 tickets/models/flow.py:47
#: tickets/models/ticket/general.py:45
msgid "Approve level"
msgstr ""

#: tickets/models/flow.py:26
msgid "Ticket flow approval rule"
msgstr ""

#: tickets/models/flow.py:52
msgid "Ticket flow"
msgstr ""

#: tickets/models/relation.py:12
msgid "Ticket session relation"
msgstr ""

#: tickets/models/ticket/apply_application.py:10
#: tickets/models/ticket/apply_asset.py:13
msgid "Permission name"
msgstr ""

#: tickets/models/ticket/apply_application.py:19
msgid "Apply applications"
msgstr ""

#: tickets/models/ticket/apply_application.py:22
msgid "Apply system users"
msgstr ""

#: tickets/models/ticket/apply_asset.py:9
#: tickets/serializers/ticket/apply_asset.py:14
msgid "Select at least one asset or node"
msgstr ""

#: tickets/models/ticket/apply_asset.py:17
msgid "Apply accounts"
msgstr ""

#: tickets/models/ticket/apply_asset.py:26
msgid "Apply Asset Ticket"
msgstr ""

#: tickets/models/ticket/command_confirm.py:9
msgid "Run user"
msgstr ""

#: tickets/models/ticket/command_confirm.py:11
msgid "Run asset"
msgstr ""

#: tickets/models/ticket/command_confirm.py:12
msgid "Run command"
msgstr ""

#: tickets/models/ticket/command_confirm.py:19
msgid "Command filter acl"
msgstr ""

#: tickets/models/ticket/command_confirm.py:23
msgid "Apply Command Ticket"
msgstr ""

#: tickets/models/ticket/general.py:80
msgid "Ticket step"
msgstr ""

#: tickets/models/ticket/general.py:98
msgid "Ticket assignee"
msgstr ""

#: tickets/models/ticket/general.py:273
msgid "Title"
msgstr ""

#: tickets/models/ticket/general.py:293
msgid "TicketFlow"
msgstr ""

#: tickets/models/ticket/general.py:296
msgid "Approval step"
msgstr ""

#: tickets/models/ticket/general.py:299
msgid "Relation snapshot"
msgstr ""

#: tickets/models/ticket/general.py:405
msgid "Please try again"
msgstr ""

#: tickets/models/ticket/general.py:483
msgid "Super ticket"
msgstr ""

#: tickets/models/ticket/login_asset_confirm.py:11
msgid "Login user"
msgstr ""

#: tickets/models/ticket/login_asset_confirm.py:14
msgid "Login asset"
msgstr ""

#: tickets/models/ticket/login_asset_confirm.py:17
msgid "Login account"
msgstr ""

#: tickets/models/ticket/login_asset_confirm.py:27
msgid "Apply Login Asset Ticket"
msgstr ""

#: tickets/models/ticket/login_confirm.py:15
msgid "Apply Login Ticket"
msgstr ""

#: tickets/notifications.py:74
msgid "Ticket basic info"
msgstr ""

#: tickets/notifications.py:75
msgid "Ticket applied info"
msgstr ""

#: tickets/notifications.py:116
msgid "Your has a new ticket, applicant - {}"
msgstr ""

#: tickets/notifications.py:120
msgid "{}: New Ticket - {} ({})"
msgstr ""

#: tickets/notifications.py:160
msgid "Your ticket has been processed, processor - {}"
msgstr ""

#: tickets/notifications.py:164
msgid "Ticket has processed - {} ({})"
msgstr ""

#: tickets/serializers/flow.py:45
msgid "The current organization type already exists"
msgstr ""

#: tickets/serializers/super_ticket.py:15
msgid "Processor"
msgstr ""

#: tickets/serializers/ticket/apply_asset.py:16
msgid "Support fuzzy search, and display up to 10 items"
msgstr ""

#: tickets/serializers/ticket/apply_asset.py:22
msgid "Apply assets"
msgstr ""

#: tickets/serializers/ticket/apply_asset.py:26
msgid "Apply nodes"
msgstr ""

#: tickets/serializers/ticket/apply_asset.py:28
msgid "Apply actions"
msgstr ""

#: tickets/serializers/ticket/common.py:15
#: tickets/serializers/ticket/common.py:75
msgid "Created by ticket ({}-{})"
msgstr ""

#: tickets/serializers/ticket/common.py:67
msgid "The expiration date should be greater than the start date"
msgstr ""

#: tickets/serializers/ticket/common.py:82
msgid "Permission named `{}` already exists"
msgstr ""

#: tickets/serializers/ticket/ticket.py:89
msgid "The ticket flow `{}` does not exist"
msgstr ""

#: tickets/templates/tickets/_msg_ticket.html:21
msgid "View details"
msgstr ""

#: tickets/templates/tickets/_msg_ticket.html:26
msgid "Direct approval"
msgstr ""

#: tickets/templates/tickets/approve_check_password.html:11
msgid "Ticket information"
msgstr ""

#: tickets/templates/tickets/approve_check_password.html:28
#: tickets/views/approve.py:43 tickets/views/approve.py:80
msgid "Ticket approval"
msgstr ""

#: tickets/templates/tickets/approve_check_password.html:43
msgid "Approval"
msgstr ""

#: tickets/views/approve.py:44
msgid ""
"This ticket does not exist, the process has ended, or this link has expired"
msgstr ""

#: tickets/views/approve.py:72
msgid "Click the button below to approve or reject"
msgstr ""

#: tickets/views/approve.py:81
msgid "After successful authentication, this ticket can be approved directly"
msgstr ""

#: tickets/views/approve.py:105
msgid "Illegal approval action"
msgstr ""

#: tickets/views/approve.py:119
msgid "This user is not authorized to approve this ticket"
msgstr ""

#: users/api/user.py:63
msgid "Cannot delete the admin user. Please disable it instead."
msgstr ""

#: users/api/user.py:161
msgid "Can not invite self"
msgstr ""

#: users/api/user.py:214
msgid "Could not reset self otp, use profile reset instead"
msgstr ""

#: users/apps.py:9
msgid "App Users"
msgstr "Users"

#: users/const.py:10
msgid "System administrator"
msgstr ""

#: users/const.py:11
msgid "System auditor"
msgstr ""

#: users/const.py:12
msgid "Organization administrator"
msgstr ""

#: users/const.py:13
msgid "Organization 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/const.py:23
msgid "AUTO"
msgstr ""

#: users/const.py:31
msgid "Full screen"
msgstr ""

#: users/const.py:32
msgid "Multi screen"
msgstr ""

#: users/const.py:33
msgid "Drives redirect"
msgstr ""

#: users/const.py:37
msgid "Current window"
msgstr ""

#: users/const.py:38
msgid "New window"
msgstr ""

#: users/const.py:47
msgid "High（32 bit）"
msgstr ""

#: users/const.py:48
msgid "Medium（16 bit）"
msgstr ""

#: users/const.py:69
msgid "Replace"
msgstr ""

#: users/const.py:70
msgid "Suffix"
msgstr ""

#: users/exceptions.py:9
msgid "MFA not enabled"
msgstr ""

#: users/exceptions.py:19
msgid "Unable to delete all users"
msgstr ""

#: users/exceptions.py:24
msgid "Create failed. The number of SSH keys has reached the limit"
msgstr ""

#: users/forms/profile.py:48
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:59
msgid "* Enable MFA to make the account more secure."
msgstr ""

#: users/forms/profile.py:68
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:82 users/serializers/preference/lina.py:21
msgid "New password"
msgstr ""

#: users/forms/profile.py:87 users/serializers/preference/lina.py:26
msgid "Confirm password"
msgstr ""

#: users/forms/profile.py:95
msgid "Password does not match"
msgstr ""

#: users/forms/profile.py:104
msgid "The phone number must contain an area code, for example, +86"
msgstr ""

#: users/forms/profile.py:120
msgid "Old password"
msgstr ""

#: users/forms/profile.py:130
msgid "Old password error"
msgstr ""

#: users/forms/profile.py:140
msgid "Automatically configure and download the SSH key"
msgstr ""

#: users/forms/profile.py:142
msgid "ssh public key"
msgstr ""

#: users/forms/profile.py:143
msgid "ssh-rsa AAAA..."
msgstr ""

#: users/forms/profile.py:144
msgid "Paste your id_rsa.pub here."
msgstr ""

#: users/forms/profile.py:157
msgid "Public key should not be the same as your old one."
msgstr ""

#: users/models/preference.py:38 users/serializers/preference/preference.py:19
msgid "Preference"
msgstr ""

#: users/models/user/__init__.py:76 users/serializers/user.py:271
msgid "Is service account"
msgstr "Is service account"

#: users/models/user/__init__.py:78
msgid "Avatar"
msgstr ""

#: users/models/user/__init__.py:80
msgid "Wechat"
msgstr ""

#: users/models/user/__init__.py:89
msgid "OTP secret key"
msgstr ""

#: users/models/user/__init__.py:99 users/serializers/profile.py:97
#: users/serializers/user.py:268
msgid "Is first login"
msgstr "First login"

#: users/models/user/__init__.py:117
msgid "Date password last updated"
msgstr "Password updated"

#: users/models/user/__init__.py:120
msgid "Need update password"
msgstr ""

#: users/models/user/__init__.py:144
msgid "Face Vector"
msgstr ""

#: users/models/user/__init__.py:147
msgid "Date api key used"
msgstr ""

#: users/models/user/__init__.py:286
msgid "Can not delete admin user"
msgstr ""

#: users/models/user/__init__.py:300
msgid "Can invite user"
msgstr ""

#: users/models/user/__init__.py:301
msgid "Can remove user"
msgstr ""

#: users/models/user/__init__.py:302
msgid "Can match user"
msgstr ""

#: users/models/user/__init__.py:331
msgid "User password history"
msgstr ""

#: users/models/user/_auth.py:34
msgid "Force enabled"
msgstr ""

#: users/notifications.py:55
#: users/templates/users/_msg_password_expire_reminder.html:16
#: users/templates/users/reset_password.html:5
#: users/templates/users/reset_password.html:6
msgid "Reset password"
msgstr ""

#: users/notifications.py:85 users/views/profile/reset.py:233
msgid "Reset password success"
msgstr ""

#: users/notifications.py:117
msgid "Reset public key success"
msgstr ""

#: users/notifications.py:143
msgid "Password is about expire"
msgstr ""

#: users/notifications.py:171
msgid "Account is about expire"
msgstr ""

#: users/notifications.py:193
msgid "Reset SSH Key"
msgstr ""

#: users/notifications.py:214
msgid "Reset MFA"
msgstr ""

#: users/serializers/preference/koko.py:10
#: users/serializers/preference/luna.py:63
msgid "File name conflict resolution"
msgstr ""

#: users/serializers/preference/koko.py:14
#: users/serializers/preference/luna.py:80
msgid "Terminal theme name"
msgstr ""

#: users/serializers/preference/lina.py:12
msgid ""
"*! The password for file encryption, used for decryption when the system "
"sends emails containing file attachments. <br>Such as: account backup files, "
"account password change results files"
msgstr ""

#: users/serializers/preference/lina.py:39 users/serializers/profile.py:48
msgid "The newly set password is inconsistent"
msgstr ""

#: users/serializers/preference/lina.py:47
msgid "Language"
msgstr ""

#: users/serializers/preference/lina.py:52
msgid "File Encryption"
msgstr ""

#: users/serializers/preference/luna.py:26
msgid "Async loading of asset tree"
msgstr ""

#: users/serializers/preference/luna.py:30
msgid "Connect default open method"
msgstr ""

#: users/serializers/preference/luna.py:37
msgid "RDP resolution"
msgstr ""

#: users/serializers/preference/luna.py:41
msgid "Keyboard layout"
msgstr ""

#: users/serializers/preference/luna.py:45
msgid "RDP client option"
msgstr ""

#: users/serializers/preference/luna.py:49
msgid "RDP color quality"
msgstr ""

#: users/serializers/preference/luna.py:53
msgid "RDP smart size"
msgstr ""

#: users/serializers/preference/luna.py:54
msgid ""
"Determines whether the client computer should scale the content on the "
"remote computer to fit the window size of the client computer when the "
"window is resized."
msgstr ""

#: users/serializers/preference/luna.py:59
msgid "Remote app connect method"
msgstr ""

#: users/serializers/preference/luna.py:70
msgid "Terminal font size"
msgstr ""

#: users/serializers/preference/luna.py:73
msgid "Backspace as Ctrl+H"
msgstr ""

#: users/serializers/preference/luna.py:76
msgid "Right click quickly paste"
msgstr ""

#: users/serializers/preference/luna.py:86
msgid "Graphics"
msgstr ""

#: users/serializers/preference/luna.py:87
msgid "Command line"
msgstr ""

#: users/serializers/profile.py:29
msgid "The old password is incorrect"
msgstr ""

#: users/serializers/profile.py:36 users/serializers/profile.py:147
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/user.py:51
msgid "System roles"
msgstr ""

#: users/serializers/user.py:55
msgid ""
"System roles are roles at the system level, and they will take effect across "
"all organizations"
msgstr ""

#: users/serializers/user.py:61
msgid "Org roles"
msgstr ""

#: users/serializers/user.py:66
msgid ""
"Org roles are roles at the organization level, and they will only take "
"effect within current organization"
msgstr ""

#: users/serializers/user.py:70
msgid "Organizations and roles"
msgstr ""

#: users/serializers/user.py:120
msgid "Password setting"
msgstr ""

#: users/serializers/user.py:122
msgid "MFA enabled"
msgstr ""

#: users/serializers/user.py:124
msgid "MFA force enabled"
msgstr ""

#: users/serializers/user.py:126
msgid "Login blocked"
msgstr ""

#: users/serializers/user.py:130 users/serializers/user.py:277
msgid "Is OTP bound"
msgstr "OTP bound"

#: users/serializers/user.py:133
msgid "Super Administrator"
msgstr ""

#: users/serializers/user.py:136
msgid "Organization Administrator"
msgstr ""

#: users/serializers/user.py:140
msgid "Can public key authentication"
msgstr "Can public key authentication"

#: users/serializers/user.py:242
msgid "Full name"
msgstr ""

#: users/serializers/user.py:245
msgid "Login username"
msgstr ""

#: users/serializers/user.py:248
msgid "Email address"
msgstr ""

#: users/serializers/user.py:258
msgid "User groups to join"
msgstr ""

#: users/serializers/user.py:262
msgid ""
"User source identifies where the user was created, which could be AD or "
"other sources.There are security settings that can restrict users to log in "
"to the system only from the sources."
msgstr ""

#: users/serializers/user.py:266
msgid "Superuser"
msgstr ""

#: users/serializers/user.py:272
msgid "Is org admin"
msgstr "Org admin"

#: users/serializers/user.py:274
msgid "Avatar url"
msgstr ""

#: users/serializers/user.py:279
msgid "MFA level"
msgstr "MFA"

#: users/serializers/user.py:280
msgid "Multi-Factor Authentication"
msgstr ""

#: users/serializers/user.py:426
msgid ""
"* For security, only a partial of users is displayed. You can search for more"
msgstr ""

#: users/serializers/user.py:461
msgid "name not unique"
msgstr ""

#: users/signal_handlers.py:41
msgid ""
"The administrator has enabled \"Only allow existing users to log in\", \n"
"            and the current user is not in the user list. Please contact the "
"administrator."
msgstr ""

#: users/signal_handlers.py:197
msgid "Clean up expired user sessions"
msgstr ""

#: users/signal_handlers.py:199
msgid ""
"After logging in via the web, a user session record is created. At 2 a.m. "
"every day, \n"
"        the system cleans up inactive user devices"
msgstr ""

#: users/tasks.py:26
msgid "Check password expired"
msgstr ""

#: users/tasks.py:28
msgid ""
"Check every day at 10 AM whether the passwords of users in the system are "
"expired, \n"
"        and send a notification 5 days in advance"
msgstr ""

#: users/tasks.py:46
msgid "Periodic check password expired"
msgstr ""

#: users/tasks.py:48
msgid ""
"With version iterations, new tasks may be added, or task names and execution "
"times may \n"
"        be modified. Therefore, upon system startup, it is necessary to "
"register or update the \n"
"        parameters of the task that checks if passwords have expired"
msgstr ""

#: users/tasks.py:67
msgid "Check user expired"
msgstr ""

#: users/tasks.py:69
msgid ""
"Check every day at 2 p.m whether the users in the system are expired, and "
"send a \n"
"        notification 5 days in advance"
msgstr ""

#: users/tasks.py:90
msgid "Periodic check user expired"
msgstr ""

#: users/tasks.py:92
msgid ""
"With version iterations, new tasks may be added, or task names and execution "
"times may \n"
"        be modified. Therefore, upon system startup, it is necessary to "
"register or update the \n"
"        parameters of the task that checks if users have expired"
msgstr ""

#: users/tasks.py:111
msgid "Check unused users"
msgstr ""

#: users/tasks.py:113
msgid ""
"At 2 p.m. every day, according to the configuration in \"System Settings - "
"Security - \n"
"        Auth security - Auto disable threshold\" users who have not logged "
"in or whose API keys \n"
"        have not been used for a long time will be disabled"
msgstr ""

#: users/tasks.py:157
msgid "The user has not logged in recently and has been disabled."
msgstr ""

#: users/templates/users/_msg_account_expire_reminder.html:7
msgid "Your account will expire in"
msgstr ""

#: users/templates/users/_msg_account_expire_reminder.html:8
msgid ""
"In order not to affect your normal work, please contact the administrator "
"for confirmation."
msgstr ""

#: users/templates/users/_msg_password_expire_reminder.html:7
msgid "Your password will expire in"
msgstr ""

#: users/templates/users/_msg_password_expire_reminder.html:8
msgid ""
"For your account security, please click on the link below to update your "
"password in time"
msgstr ""

#: users/templates/users/_msg_password_expire_reminder.html:11
msgid "Click here update password"
msgstr ""

#: users/templates/users/_msg_password_expire_reminder.html:15
msgid "If your password has expired, please click the link below to"
msgstr ""

#: users/templates/users/_msg_reset_mfa.html:7
msgid "Your MFA has been reset by site administrator"
msgstr ""

#: users/templates/users/_msg_reset_mfa.html:8
#: users/templates/users/_msg_reset_ssh_key.html:8
msgid "Please click the link below to set"
msgstr ""

#: users/templates/users/_msg_reset_mfa.html:11
#: users/templates/users/_msg_reset_ssh_key.html:11
msgid "Click here set"
msgstr ""

#: users/templates/users/_msg_reset_ssh_key.html:7
msgid "Your ssh public key has been reset by site administrator"
msgstr ""

#: users/templates/users/_msg_user_created.html:15
msgid "click here to set your password"
msgstr ""

#: users/templates/users/forgot_password.html:46
msgid "Input your email account, that will send a email to your"
msgstr ""

#: users/templates/users/forgot_password.html:49
msgid ""
"Enter your mobile number and a verification code will be sent to your phone"
msgstr ""

#: users/templates/users/forgot_password.html:71
msgid "Email account"
msgstr ""

#: users/templates/users/forgot_password.html:93
msgid "Mobile number"
msgstr ""

#: users/templates/users/forgot_password.html:105
#: users/templates/users/forgot_password_previewing.html:30
msgid "Submit"
msgstr ""

#: users/templates/users/forgot_password_previewing.html:21
msgid "Please enter the username for which you want to retrieve the password"
msgstr ""

#: users/templates/users/mfa_setting.html:124
msgid "MFA force enable, cannot disable"
msgstr ""

#: users/templates/users/mfa_setting.html:143
msgid "MFA setting"
msgstr ""

#: users/templates/users/mfa_setting.html:171
msgid "Reset"
msgstr ""

#: users/templates/users/reset_password.html:23
msgid "Your password must satisfy"
msgstr ""

#: users/templates/users/reset_password.html:24
msgid "Password strength"
msgstr ""

#: users/templates/users/reset_password.html:52
msgid "Very weak"
msgstr ""

#: users/templates/users/reset_password.html:53
msgid "Weak"
msgstr ""

#: users/templates/users/reset_password.html:55
msgid "Medium"
msgstr ""

#: users/templates/users/reset_password.html:56
msgid "Strong"
msgstr ""

#: users/templates/users/reset_password.html:57
msgid "Very strong"
msgstr ""

#: users/templates/users/user_otp_check_password.html:6
msgid "Enable OTP"
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 ""

#: users/templates/users/user_otp_enable_bind.html:22
#: users/templates/users/user_verify_mfa.html:27
msgid "Six figures"
msgstr ""

#: 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 ""

#: users/templates/users/user_otp_enable_install_app.html:18
msgid "Android downloads"
msgstr ""

#: users/templates/users/user_otp_enable_install_app.html:23
msgid "iPhone downloads"
msgstr ""

#: users/templates/users/user_otp_enable_install_app.html:27
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_verify.html:8
#: users/templates/users/user_password_verify.html:9
msgid "Verify password"
msgstr ""

#: users/templates/users/user_verify_mfa.html:9
msgid "Authenticate"
msgstr ""

#: users/templates/users/user_verify_mfa.html:15
msgid ""
"The account protection has been opened, please complete the following "
"operations according to the prompts"
msgstr ""

#: users/templates/users/user_verify_mfa.html:17
msgid "Open MFA Authenticator and enter the 6-bit dynamic code"
msgstr ""

#: users/utils.py:60
msgid "Auth success"
msgstr ""

#: users/utils.py:61
msgid "Redirecting to JumpServer Client"
msgstr ""

#: users/views/profile/face.py:54
msgid "Face recognition enable success"
msgstr ""

#: users/views/profile/face.py:55
msgid "Face recognition enable success, return login page"
msgstr ""

#: users/views/profile/face.py:79
msgid "Face recognition disable success"
msgstr ""

#: users/views/profile/face.py:80
msgid "Face recognition disable success, return login page"
msgstr ""

#: users/views/profile/otp.py:106
msgid "Already bound"
msgstr ""

#: users/views/profile/otp.py:107
msgid "MFA already bound, disable first, then bound"
msgstr ""

#: users/views/profile/otp.py:134
msgid "OTP enable success"
msgstr ""

#: users/views/profile/otp.py:135
msgid "OTP enable success, return login page"
msgstr ""

#: users/views/profile/otp.py:177
msgid "Disable OTP"
msgstr ""

#: users/views/profile/otp.py:183
msgid "OTP disable success"
msgstr ""

#: users/views/profile/otp.py:184
msgid "OTP disable success, return login page"
msgstr ""

#: users/views/profile/password.py:33 users/views/profile/password.py:38
msgid "Password invalid"
msgstr ""

#: users/views/profile/reset.py:66
msgid ""
"Non-local users can log in only from third-party platforms and cannot change "
"their passwords: {}"
msgstr ""

#: users/views/profile/reset.py:188 users/views/profile/reset.py:199
msgid "Token invalid or expired"
msgstr ""

#: users/views/profile/reset.py:204
msgid "User auth from {}, go there change password"
msgstr ""

#: users/views/profile/reset.py:211
msgid "* Your password does not meet the requirements"
msgstr ""

#: users/views/profile/reset.py:217
msgid "* The new password cannot be the last {} passwords"
msgstr ""

#: users/views/profile/reset.py:234
msgid "Reset password success, return to login page"
msgstr ""

#: xpack/apps.py:8
msgid "XPACK"
msgstr ""

#: xpack/exceptions.py:8
msgid ""
"Based on the current task configuration, assets that do not match the "
"strategy will skipped."
msgstr ""

#: xpack/plugins/cloud/api.py:72
msgid "Test connection successful"
msgstr ""

#: xpack/plugins/cloud/api.py:74
msgid "Test connection failed: {}"
msgstr ""

#: xpack/plugins/cloud/api.py:171
msgid "User {} deleted the current resource and released the assets"
msgstr ""

#: xpack/plugins/cloud/const.py:8
msgid "Alibaba Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:9
msgid "AWS (International)"
msgstr ""

#: xpack/plugins/cloud/const.py:10
msgid "AWS (China)"
msgstr ""

#: xpack/plugins/cloud/const.py:11
msgid "Azure (China)"
msgstr ""

#: xpack/plugins/cloud/const.py:12
msgid "Azure (International)"
msgstr ""

#: xpack/plugins/cloud/const.py:14
msgid "Baidu Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:15
msgid "JD Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:16
msgid "KingSoft Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:17
msgid "Tencent Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:18
msgid "Tencent Cloud (Lighthouse)"
msgstr ""

#: xpack/plugins/cloud/const.py:19
msgid "Google Cloud Platform"
msgstr ""

#: xpack/plugins/cloud/const.py:20
msgid "UCloud"
msgstr ""

#: xpack/plugins/cloud/const.py:21
msgid "Volcengine"
msgstr ""

#: xpack/plugins/cloud/const.py:23
msgid "VMware"
msgstr ""

#: xpack/plugins/cloud/const.py:24 xpack/plugins/cloud/providers/nutanix.py:15
msgid "Nutanix"
msgstr ""

#: xpack/plugins/cloud/const.py:25
msgid "Huawei Private Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:26
msgid "Qingyun Private Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:27
msgid "CTYun Private Cloud"
msgstr ""

#: xpack/plugins/cloud/const.py:28
msgid "OpenStack"
msgstr ""

#: xpack/plugins/cloud/const.py:29 xpack/plugins/cloud/providers/zstack.py:21
msgid "ZStack"
msgstr ""

#: xpack/plugins/cloud/const.py:30
msgid "Fusion Compute"
msgstr ""

#: xpack/plugins/cloud/const.py:31
msgid "SCP"
msgstr ""

#: xpack/plugins/cloud/const.py:32
msgid "Apsara Stack"
msgstr ""

#: xpack/plugins/cloud/const.py:37
msgid "Private IP"
msgstr ""

#: xpack/plugins/cloud/const.py:38
msgid "Public IP"
msgstr ""

#: xpack/plugins/cloud/const.py:42 xpack/plugins/cloud/models.py:361
msgid "Instance name"
msgstr ""

#: xpack/plugins/cloud/const.py:43
msgid "Instance name and Partial IP"
msgstr ""

#: xpack/plugins/cloud/const.py:48
msgid "Succeed"
msgstr ""

#: xpack/plugins/cloud/const.py:52 xpack/plugins/cloud/manager.py:95
msgid "Unsync"
msgstr ""

#: xpack/plugins/cloud/const.py:53 xpack/plugins/cloud/manager.py:94
msgid "New Sync"
msgstr ""

#: xpack/plugins/cloud/const.py:54 xpack/plugins/cloud/manager.py:94
msgid "Synced"
msgstr ""

#: xpack/plugins/cloud/const.py:55 xpack/plugins/cloud/manager.py:96
msgid "Released"
msgstr ""

#: xpack/plugins/cloud/const.py:59
msgid "And"
msgstr ""

#: xpack/plugins/cloud/const.py:60
msgid "Or"
msgstr ""

#: xpack/plugins/cloud/const.py:64
msgid "Sync region"
msgstr ""

#: xpack/plugins/cloud/const.py:66
msgid "Imported"
msgstr ""

#: xpack/plugins/cloud/manager.py:48
#, python-format
msgid "Task \"%s\" starts executing"
msgstr ""

#: xpack/plugins/cloud/manager.py:87
msgid "View the task details path: "
msgstr ""

#: xpack/plugins/cloud/manager.py:90
msgid "Account Details"
msgstr ""

#: xpack/plugins/cloud/manager.py:91
msgid "Synchronization History List"
msgstr ""

#: xpack/plugins/cloud/manager.py:91
msgid "Synchronization Instance List"
msgstr ""

#: xpack/plugins/cloud/manager.py:95
msgid "To be released"
msgstr ""

#: xpack/plugins/cloud/manager.py:99
msgid "Task execution completed"
msgstr ""

#: xpack/plugins/cloud/manager.py:104
msgid "Synchronization regions"
msgstr ""

#: xpack/plugins/cloud/manager.py:129
#, python-format
msgid "Get instances of region \"%s\" error, error: %s"
msgstr ""

#: xpack/plugins/cloud/manager.py:175
#, python-format
msgid "Failed to synchronize the instance \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:354
#, python-format
msgid ""
"The updated platform of asset \"%s\" is inconsistent with the original "
"platform type. Skip platform and protocol updates"
msgstr ""

#: xpack/plugins/cloud/manager.py:410
#, python-format
msgid "The asset \"%s\" already exists"
msgstr ""

#: xpack/plugins/cloud/manager.py:412
#, python-format
msgid "Update asset \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:415
#, python-format
msgid "Asset \"%s\" has been updated"
msgstr ""

#: xpack/plugins/cloud/manager.py:425
#, python-format
msgid "Prepare to create asset \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:446
#, python-format
msgid "Set nodes \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:472
#, python-format
msgid "Set accounts \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:488
#, python-format
msgid "Set protocols \"%s\""
msgstr ""

#: xpack/plugins/cloud/manager.py:502 xpack/plugins/cloud/tasks.py:31
msgid "Run sync instance task"
msgstr ""

#: xpack/plugins/cloud/meta.py:9
msgid "Cloud center"
msgstr ""

#: xpack/plugins/cloud/models.py:39
#: xpack/plugins/cloud/serializers/account.py:94
msgid "Attrs"
msgstr ""

#: xpack/plugins/cloud/models.py:40
msgid "Validity"
msgstr ""

#: xpack/plugins/cloud/models.py:45
msgid "Cloud account"
msgstr ""

#: xpack/plugins/cloud/models.py:47
msgid "Test cloud account"
msgstr ""

#: xpack/plugins/cloud/models.py:104
#: xpack/plugins/cloud/serializers/account.py:76
#: xpack/plugins/cloud/serializers/task.py:157
#: xpack/plugins/cloud/serializers/task.py:158
msgid "Regions"
msgstr ""

#: xpack/plugins/cloud/models.py:107
msgid "Hostname strategy"
msgstr ""

#: xpack/plugins/cloud/models.py:112
msgid "IP network segment group"
msgstr ""

#: xpack/plugins/cloud/models.py:116
#: xpack/plugins/cloud/serializers/task.py:161
msgid "Preferred IP type"
msgstr ""

#: xpack/plugins/cloud/models.py:119
msgid "Always update"
msgstr ""

#: xpack/plugins/cloud/models.py:121
msgid "Fully synchronous"
msgstr ""

#: xpack/plugins/cloud/models.py:122
msgid "Release assets"
msgstr ""

#: xpack/plugins/cloud/models.py:127
msgid "Date last sync"
msgstr ""

#: xpack/plugins/cloud/models.py:130 xpack/plugins/cloud/models.py:379
#: xpack/plugins/cloud/models.py:405
msgid "Strategy"
msgstr ""

#: xpack/plugins/cloud/models.py:135 xpack/plugins/cloud/models.py:223
msgid "Sync instance task"
msgstr ""

#: xpack/plugins/cloud/models.py:234 xpack/plugins/cloud/models.py:297
msgid "Date sync"
msgstr ""

#: xpack/plugins/cloud/models.py:238
msgid "Sync instance snapshot"
msgstr ""

#: xpack/plugins/cloud/models.py:246
msgid "Sync instance task execution"
msgstr ""

#: xpack/plugins/cloud/models.py:277
msgid "Sync task"
msgstr ""

#: xpack/plugins/cloud/models.py:281
msgid "Sync instance task history"
msgstr ""

#: xpack/plugins/cloud/models.py:284
msgid "Instance"
msgstr ""

#: xpack/plugins/cloud/models.py:301
msgid "Sync instance detail"
msgstr ""

#: xpack/plugins/cloud/models.py:313 xpack/plugins/cloud/serializers/task.py:77
msgid "Rule relation"
msgstr ""

#: xpack/plugins/cloud/models.py:323
msgid "Task strategy"
msgstr ""

#: xpack/plugins/cloud/models.py:350
msgid "Equal"
msgstr ""

#: xpack/plugins/cloud/models.py:351
msgid "Not Equal"
msgstr ""

#: xpack/plugins/cloud/models.py:352
msgid "In"
msgstr ""

#: xpack/plugins/cloud/models.py:353
msgid "Contains"
msgstr ""

#: xpack/plugins/cloud/models.py:354
msgid "Exclude"
msgstr ""

#: xpack/plugins/cloud/models.py:355
msgid "Startswith"
msgstr ""

#: xpack/plugins/cloud/models.py:356
msgid "Endswith"
msgstr ""

#: xpack/plugins/cloud/models.py:362
msgid "Instance platform"
msgstr ""

#: xpack/plugins/cloud/models.py:363
msgid "Instance address"
msgstr ""

#: xpack/plugins/cloud/models.py:370
msgid "Rule attr"
msgstr ""

#: xpack/plugins/cloud/models.py:374
msgid "Rule match"
msgstr ""

#: xpack/plugins/cloud/models.py:376
msgid "Rule value"
msgstr ""

#: xpack/plugins/cloud/models.py:383 xpack/plugins/cloud/serializers/task.py:80
msgid "Strategy rule"
msgstr ""

#: xpack/plugins/cloud/models.py:393
msgid "Name strategy"
msgstr ""

#: xpack/plugins/cloud/models.py:400
msgid "Action attr"
msgstr ""

#: xpack/plugins/cloud/models.py:402
msgid "Action value"
msgstr ""

#: xpack/plugins/cloud/models.py:409 xpack/plugins/cloud/serializers/task.py:83
msgid "Strategy action"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:18
msgid "China (Beijing)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:19
msgid "China (Ningxia)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:22
msgid "US East (Ohio)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:23
msgid "US East (N. Virginia)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:24
msgid "US West (N. California)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:25
msgid "US West (Oregon)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:26
msgid "Africa (Cape Town)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:27
msgid "Asia Pacific (Hong Kong)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:28
msgid "Asia Pacific (Mumbai)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:29
msgid "Asia Pacific (Osaka-Local)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:30
msgid "Asia Pacific (Seoul)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:31
msgid "Asia Pacific (Singapore)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:32
msgid "Asia Pacific (Sydney)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:33
msgid "Asia Pacific (Tokyo)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:34
msgid "Canada (Central)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:35
msgid "Europe (Frankfurt)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:36
msgid "Europe (Ireland)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:37
msgid "Europe (London)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:38
msgid "Europe (Milan)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:39
msgid "Europe (Paris)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:40
msgid "Europe (Stockholm)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:41
msgid "Middle East (Bahrain)"
msgstr ""

#: xpack/plugins/cloud/providers/aws_international.py:42
msgid "South America (São Paulo)"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:56
#: xpack/plugins/cloud/providers/jdcloud.py:125
msgid "CN North-Beijing"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:57
msgid "CN North-Baoding"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:58
msgid "CN East-Suzhou"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:59
#: xpack/plugins/cloud/providers/huaweicloud.py:47
#: xpack/plugins/cloud/providers/jdcloud.py:128
msgid "CN South-Guangzhou"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:60
msgid "CN Southwest-Chengdu"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:61
#: xpack/plugins/cloud/providers/huaweicloud.py:54
msgid "CN-Hong Kong"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:62
msgid "CN Center-Wuhan"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:63
#: xpack/plugins/cloud/providers/jdcloud.py:127
msgid "CN East-Shanghai"
msgstr ""

#: xpack/plugins/cloud/providers/baiducloud.py:64
#: xpack/plugins/cloud/providers/huaweicloud.py:56
msgid "AP-Singapore"
msgstr ""

#: xpack/plugins/cloud/providers/gcp.py:64
#: xpack/plugins/cloud/providers/huaweicloud.py:34
msgid "Account unavailable"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:44
msgid "CN North-Beijing1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:45
msgid "CN North-Beijing4"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:46
msgid "CN North-Ulanqab1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:48
msgid "CN South-Shenzhen"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:49
msgid "CN South-Guangzhou-InvitationOnly"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:50
msgid "CN East-Shanghai2"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:51
msgid "CN East-Shanghai1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:53
msgid "CN Southwest-Guiyang1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:55
msgid "AP-Bangkok"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:58
msgid "AF-Johannesburg"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:59
msgid "LA-Mexico City1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:60
msgid "LA-Santiago"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:61
msgid "LA-Sao Paulo1"
msgstr ""

#: xpack/plugins/cloud/providers/huaweicloud.py:63
msgid "TR-Istanbul"
msgstr ""

#: xpack/plugins/cloud/providers/jdcloud.py:126
msgid "CN East-Suqian"
msgstr ""

#: xpack/plugins/cloud/providers/lan.py:79
#, python-format
msgid "Port \"%(port)s\" of instance IP \"%(ip)s\" is not reachable"
msgstr ""

#: xpack/plugins/cloud/serializers/account.py:95
msgid "Validity display"
msgstr ""

#: xpack/plugins/cloud/serializers/account.py:96
msgid "Provider display"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:17
msgid "Access key id"
msgstr "Access key id"

#: xpack/plugins/cloud/serializers/account_attrs.py:44
msgid "Subscription ID"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:98
#: xpack/plugins/cloud/serializers/account_attrs.py:102
#: xpack/plugins/cloud/serializers/account_attrs.py:126
#: xpack/plugins/cloud/serializers/account_attrs.py:156
#: xpack/plugins/cloud/serializers/account_attrs.py:206
msgid "API Endpoint"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:108
msgid "Auth url"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:109
msgid "eg: http://openstack.example.com:5000/v3"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:112
msgid "User domain"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:127
msgid "Cert File"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:128
msgid "Key File"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:144
msgid "Service account key"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:145
msgid "The file is in JSON format"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:163
msgid "IP address invalid `{}`, {}"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:179
msgid "Such as: 192.168.1.0/24, 10.0.0.0-10.0.0.255"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:182
msgid ""
"The port is used to detect the validity of the IP address. When the "
"synchronization task is executed, only the valid IP address will be "
"synchronized. <br>If the port is 0, all IP addresses are valid."
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:190
msgid "Hostname prefix"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:193
msgid "IP segment"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:197
msgid "Test port"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:200
msgid "Test timeout"
msgstr ""

#: xpack/plugins/cloud/serializers/account_attrs.py:216
msgid "Project"
msgstr ""

#: xpack/plugins/cloud/serializers/task.py:155
msgid "History count"
msgstr ""

#: xpack/plugins/cloud/serializers/task.py:156
msgid "Instance count"
msgstr ""

#: xpack/plugins/cloud/tasks.py:33
msgid ""
"\n"
"        Execute this task when manually or scheduled cloud synchronization "
"tasks are performed\n"
"        "
msgstr ""

#: xpack/plugins/cloud/tasks.py:52
msgid "Period clean sync instance task execution"
msgstr ""

#: xpack/plugins/cloud/tasks.py:54
msgid ""
"\n"
"        Every day, according to the configuration in \"System Settings - "
"Tasks - Regular \n"
"        clean-up - Cloud sync task history retention days\" the system will "
"clean up the execution \n"
"        records generated by cloud synchronization\n"
"        "
msgstr ""

#: xpack/plugins/interface/api.py:52
msgid "Restore default successfully."
msgstr ""

#: xpack/plugins/interface/meta.py:9 xpack/plugins/interface/models.py:45
#: xpack/plugins/interface/models.py:86
msgid "Interface settings"
msgstr ""

#: xpack/plugins/interface/models.py:23
msgid "Login title"
msgstr ""

#: xpack/plugins/interface/models.py:27
msgid "Login image"
msgstr ""

#: xpack/plugins/interface/models.py:31
msgid "Website icon"
msgstr ""

#: xpack/plugins/interface/models.py:35
msgid "Index logo"
msgstr ""

#: xpack/plugins/interface/models.py:39
msgid "Logout logo"
msgstr ""

#: xpack/plugins/interface/models.py:41
#: xpack/plugins/interface/serializers/interface.py:26
msgid "Theme"
msgstr ""

#: xpack/plugins/interface/models.py:42
msgid "Footer content"
msgstr ""

#: xpack/plugins/interface/serializers/interface.py:37
msgid "Wide logo on top"
msgstr ""

#: xpack/plugins/interface/serializers/interface.py:38
msgid "Small logo without text"
msgstr ""

#: xpack/plugins/license/api.py:52
msgid "License import successfully"
msgstr ""

#: xpack/plugins/license/api.py:53
msgid "Invalid license"
msgstr ""

#: xpack/plugins/license/models.py:80
msgid "Basic edition"
msgstr ""

#: xpack/plugins/license/models.py:82
msgid "Standard edition"
msgstr ""

#: xpack/plugins/license/models.py:84
msgid "Professional edition"
msgstr ""

#: xpack/plugins/license/models.py:86
msgid "Ultimate edition"
msgstr ""

#: xpack/plugins/license/models.py:101
msgid "FIT2CLOUD"
msgstr ""

#~ msgid "Clean change secret and push record period description"
#~ msgstr ""
#~ "The system will periodically clean up unnecessary change secret records "
#~ "and push records, including those associated with change tasks, execution "
#~ "records, assets, and accounts. When any of these associated items are "
#~ "deleted, the corresponding change secret and push records become invalid. "
#~ "Therefore, to maintain a tidy and efficient database, the system "
#~ "automatically cleans up these invalid records every 180 days by default. "
#~ "This regular cleanup process helps free up storage space and improves the "
#~ "security and overall performance of data management."
