diff --git a/apps/locale/en/LC_MESSAGES/django.mo b/apps/locale/en/LC_MESSAGES/django.mo new file mode 100644 index 000000000..75cad9b3f --- /dev/null +++ b/apps/locale/en/LC_MESSAGES/django.mo @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:845b68b6d2cdd03b1c1a939d8f1238446731988ab052c66f7c7f6946af7ae406 +size 431 diff --git a/apps/locale/en/LC_MESSAGES/django.po b/apps/locale/en/LC_MESSAGES/django.po new file mode 100644 index 000000000..8968020cf --- /dev/null +++ b/apps/locale/en/LC_MESSAGES/django.po @@ -0,0 +1,9114 @@ +# 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 , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-07-10 18:14+0800\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \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/change_secret/manager.py:225 +#, python-format +msgid "Success: %s, Failed: %s, Total: %s" +msgstr "" + +#: accounts/const/account.py:6 +#: accounts/serializers/automations/change_secret.py:34 +#: assets/models/_user.py:24 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:330 +#: settings/serializers/auth/ldap.py:25 settings/serializers/auth/ldap.py:47 +#: settings/serializers/msg.py:35 terminal/serializers/storage.py:123 +#: terminal/serializers/storage.py:142 users/forms/profile.py:21 +#: users/serializers/user.py:111 +#: 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 +#: 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 assets/models/_user.py:48 +#: authentication/backends/passkey/models.py:16 +#: authentication/models/sso_token.py:14 settings/serializers/feature.py:52 +msgid "Token" +msgstr "" + +#: accounts/const/account.py:10 +msgid "API key" +msgstr "" + +#: accounts/const/account.py:14 common/db/fields.py:235 +#: settings/serializers/terminal.py:14 +msgid "All" +msgstr "" + +#: accounts/const/account.py:15 accounts/models/virtual.py:26 +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.py:753 +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:79 +msgid "Template" +msgstr "" + +#: accounts/const/account.py:32 ops/const.py:46 +msgid "Skip" +msgstr "" + +#: accounts/const/account.py:33 audits/const.py:24 rbac/tree.py:239 +#: templates/_csv_import_export.html:18 templates/_csv_update_modal.html:6 +msgid "Update" +msgstr "" + +#: accounts/const/account.py:34 accounts/const/automation.py:109 +#: accounts/serializers/automations/change_secret.py:164 audits/const.py:65 +#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 +#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 +msgid "Failed" +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:24 +#: accounts/tasks/remove_account.py:33 +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:16 +#: authentication/serializers/password_mfa.py:24 +#: notifications/backends/__init__.py:10 settings/serializers/msg.py:22 +#: settings/serializers/msg.py:64 users/forms/profile.py:100 +#: users/forms/profile.py:108 users/models/user.py:817 +#: users/templates/users/forgot_password.html:162 +#: users/views/profile/reset.py:94 +msgid "Email" +msgstr "" + +#: accounts/const/automation.py:105 terminal/const.py:87 +msgid "SFTP" +msgstr "" + +#: accounts/const/automation.py:110 +#: accounts/serializers/automations/change_secret.py:163 audits/const.py:64 +#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 +#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:46 +#: terminal/const.py:78 terminal/models/session/sharing.py:121 +#: tickets/views/approve.py:128 +msgid "Success" +msgstr "" + +#: accounts/const/automation.py:111 common/const/choices.py:16 +#: terminal/const.py:77 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:9 assets/models/asset/database.py:24 +msgid "Database" +msgstr "" + +#: accounts/const/vault.py:9 settings/serializers/feature.py:43 +msgid "HCP 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:216 +#: accounts/serializers/account/account.py:261 +#: accounts/serializers/account/gathered_account.py:10 +#: accounts/serializers/automations/change_secret.py:108 +#: accounts/serializers/automations/change_secret.py:140 +#: 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:95 +#: assets/models/asset/common.py:350 assets/models/cmd_filter.py:36 +#: audits/models.py:58 authentication/models/connection_token.py:36 +#: perms/models/asset_permission.py:69 perms/serializers/permission.py:36 +#: terminal/backends/command/models.py:17 terminal/models/session/session.py:32 +#: terminal/notifications.py:155 terminal/serializers/command.py:17 +#: terminal/serializers/session.py:28 +#: 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:261 +msgid "Asset" +msgstr "" + +#: accounts/models/account.py:53 accounts/models/template.py:16 +#: accounts/serializers/account/account.py:223 +#: accounts/serializers/account/account.py:271 +#: accounts/serializers/account/template.py:27 +#: authentication/serializers/connect_token_secret.py:50 +msgid "Su from" +msgstr "" + +#: accounts/models/account.py:55 assets/const/protocol.py:178 +#: settings/serializers/auth/cas.py:20 terminal/models/applet/applet.py:35 +#: terminal/models/virtualapp/virtualapp.py:21 +msgid "Version" +msgstr "" + +#: accounts/models/account.py:57 accounts/serializers/account/account.py:218 +#: users/models/user.py:860 +msgid "Source" +msgstr "" + +#: accounts/models/account.py:58 +msgid "Source ID" +msgstr "" + +#: accounts/models/account.py:61 +#: accounts/serializers/automations/change_secret.py:110 +#: accounts/serializers/automations/change_secret.py:141 +#: accounts/templates/accounts/change_secret_failed_info.html:12 +#: acls/serializers/base.py:124 acls/templates/acls/asset_login_reminder.html:7 +#: assets/serializers/asset/common.py:128 assets/serializers/gateway.py:28 +#: audits/models.py:59 authentication/api/connection_token.py:411 +#: ops/models/base.py:18 perms/models/asset_permission.py:75 +#: perms/serializers/permission.py:41 settings/serializers/msg.py:33 +#: terminal/backends/command/models.py:18 terminal/models/session/session.py:34 +#: 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:86 +msgid "Account" +msgstr "" + +#: accounts/models/account.py:67 +msgid "Can view asset account secret" +msgstr "" + +#: accounts/models/account.py:68 +msgid "Can view asset history account" +msgstr "" + +#: accounts/models/account.py:69 +msgid "Can view asset history account secret" +msgstr "" + +#: accounts/models/account.py:70 +msgid "Can verify account" +msgstr "" + +#: accounts/models/account.py:71 +msgid "Can push account" +msgstr "" + +#: accounts/models/account.py:72 +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 "Is 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 +#: accounts/serializers/account/backup.py:20 +msgid "Zip Encrypt Password" +msgstr "" + +#: accounts/models/automations/backup_account.py:55 +#: accounts/models/automations/backup_account.py:138 +msgid "Account backup plan" +msgstr "" + +#: accounts/models/automations/backup_account.py:119 +#: assets/models/automations/base.py:115 audits/models.py:65 +#: ops/models/base.py:55 ops/models/celery.py:88 ops/models/job.py:242 +#: ops/templates/ops/celery_task_log.html:75 +#: perms/models/asset_permission.py:78 +#: 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:122 +#: authentication/templates/authentication/_msg_oauth_bind.html:11 +#: notifications/notifications.py:186 +#: settings/templates/ldap/_msg_import_ldap_user.html:3 +msgid "Time" +msgstr "" + +#: accounts/models/automations/backup_account.py:126 +msgid "Account backup snapshot" +msgstr "" + +#: accounts/models/automations/backup_account.py:130 +#: accounts/serializers/account/backup.py:49 +#: accounts/serializers/automations/base.py:56 +#: assets/models/automations/base.py:122 +#: assets/serializers/automations/base.py:40 +msgid "Trigger mode" +msgstr "" + +#: accounts/models/automations/backup_account.py:133 audits/models.py:203 +#: terminal/models/session/sharing.py:125 xpack/plugins/cloud/models.py:213 +msgid "Reason" +msgstr "" + +#: accounts/models/automations/backup_account.py:135 +#: accounts/serializers/automations/change_secret.py:107 +#: accounts/serializers/automations/change_secret.py:142 +#: ops/serializers/job.py:71 terminal/serializers/session.py:52 +msgid "Is success" +msgstr "" + +#: accounts/models/automations/backup_account.py:143 +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:41 +#: accounts/serializers/automations/change_secret.py:58 +#: settings/serializers/auth/ldap.py:91 +msgid "Recipient" +msgstr "" + +#: 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:89 ops/models/job.py:243 +#: terminal/models/applet/host.py:142 +msgid "Date finished" +msgstr "" + +#: accounts/models/automations/change_secret.py:44 +#: assets/models/automations/base.py:113 audits/models.py:208 +#: audits/serializers.py:54 ops/models/base.py:49 ops/models/job.py:234 +#: terminal/models/applet/applet.py:320 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:136 +#: terminal/serializers/virtualapp.py:35 tickets/models/ticket/general.py:281 +#: tickets/serializers/super_ticket.py:13 +#: tickets/serializers/ticket/ticket.py:20 xpack/plugins/cloud/models.py:209 +#: xpack/plugins/cloud/models.py:265 +msgid "Status" +msgstr "" + +#: accounts/models/automations/change_secret.py:47 +#: accounts/serializers/account/account.py:263 +#: 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:20 +#: settings/templates/ldap/_msg_import_ldap_user.html:26 +msgid "Error" +msgstr "" + +#: accounts/models/automations/change_secret.py:51 +msgid "Change secret record" +msgstr "" + +#: accounts/models/automations/gather_account.py:14 +msgid "Present" +msgstr "" + +#: accounts/models/automations/gather_account.py:15 +msgid "Date last 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 assets/models/_user.py:23 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.py:813 +#: 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 last login" +msgstr "" + +#: accounts/models/automations/gather_account.py:44 +msgid "Gather account automation" +msgstr "" + +#: accounts/models/automations/gather_account.py:56 +msgid "Is sync account" +msgstr "" + +#: accounts/models/automations/gather_account.py:75 +#: accounts/tasks/gather_accounts.py:29 +msgid "Gather asset accounts" +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:84 +#: authentication/serializers/connect_token_secret.py:119 +#: authentication/templates/authentication/_access_key_modal.html:34 +#: tickets/serializers/ticket/ticket.py:21 +msgid "Action" +msgstr "" + +#: accounts/models/automations/push_account.py:57 +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:446 +#: 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:19 +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:24 +#: 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 applications/models.py:9 +#: assets/models/_user.py:22 assets/models/asset/common.py:93 +#: assets/models/asset/common.py:159 assets/models/cmd_filter.py:21 +#: assets/models/domain.py:19 assets/models/group.py:17 +#: assets/models/label.py:18 assets/models/platform.py:15 +#: assets/models/platform.py:94 assets/serializers/asset/common.py:149 +#: assets/serializers/platform.py:118 assets/serializers/platform.py:228 +#: authentication/backends/passkey/models.py:10 +#: authentication/serializers/connect_token_secret.py:113 +#: authentication/serializers/connect_token_secret.py:169 labels/models.py:11 +#: ops/mixin.py:21 ops/models/adhoc.py:20 ops/models/celery.py:15 +#: ops/models/celery.py:80 ops/models/job.py:142 ops/models/playbook.py:28 +#: ops/serializers/job.py:18 orgs/models.py:82 +#: perms/models/asset_permission.py:61 rbac/models/role.py:29 +#: settings/models.py:33 settings/models.py:181 settings/serializers/msg.py:89 +#: terminal/models/applet/applet.py:33 terminal/models/component/endpoint.py:12 +#: terminal/models/component/endpoint.py:109 +#: 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.py:815 +#: xpack/plugins/cloud/models.py:33 xpack/plugins/cloud/models.py:281 +#: xpack/plugins/cloud/serializers/task.py:70 +msgid "Name" +msgstr "" + +#: accounts/models/base.py:69 +msgid "Privileged" +msgstr "" + +#: accounts/models/base.py:70 assets/models/asset/common.py:166 +#: 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:40 +#: terminal/models/component/endpoint.py:120 +#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:175 +msgid "Is active" +msgstr "" + +#: accounts/models/template.py:18 assets/models/_user.py:53 +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:338 +msgid "Account template" +msgstr "" + +#: accounts/models/template.py:31 +msgid "Can view asset account template secret" +msgstr "" + +#: accounts/models/template.py:32 +msgid "Can change 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:27 +msgid "Same with user" +msgstr "" + +#: accounts/models/virtual.py:36 +msgid "Non-asset account, Input username/password on connect" +msgstr "" + +#: accounts/models/virtual.py:37 +msgid "The account username name same with user on connect" +msgstr "" + +#: accounts/models/virtual.py:38 +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 +#: accounts/templates/accounts/asset_account_change_info.html:3 +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:38 +msgid "Exist policy" +msgstr "" + +#: accounts/serializers/account/account.py:196 applications/models.py:11 +#: assets/models/label.py:21 assets/models/platform.py:95 +#: assets/serializers/asset/common.py:125 assets/serializers/cagegory.py:12 +#: assets/serializers/platform.py:140 assets/serializers/platform.py:229 +#: perms/serializers/user_permission.py:26 settings/models.py:35 +#: tickets/models/ticket/apply_application.py:13 users/models/preference.py:12 +msgid "Category" +msgstr "" + +#: accounts/serializers/account/account.py:197 +#: accounts/serializers/automations/base.py:55 acls/models/command_acl.py:24 +#: acls/serializers/command_acl.py:19 applications/models.py:14 +#: assets/models/_user.py:50 assets/models/automations/base.py:20 +#: assets/models/cmd_filter.py:74 assets/models/platform.py:96 +#: assets/serializers/asset/common.py:126 assets/serializers/platform.py:120 +#: assets/serializers/platform.py:139 audits/serializers.py:53 +#: audits/serializers.py:170 +#: authentication/serializers/connect_token_secret.py:126 ops/models/job.py:150 +#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:39 +#: terminal/models/component/storage.py:57 +#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29 +#: terminal/serializers/session.py:23 terminal/serializers/storage.py:264 +#: terminal/serializers/storage.py:276 tickets/models/comment.py:26 +#: tickets/models/flow.py:56 tickets/models/ticket/apply_application.py:16 +#: tickets/models/ticket/general.py:273 tickets/serializers/flow.py:53 +#: tickets/serializers/ticket/ticket.py:19 +msgid "Type" +msgstr "" + +#: accounts/serializers/account/account.py:212 +msgid "Asset not found" +msgstr "" + +#: accounts/serializers/account/account.py:252 +msgid "Has secret" +msgstr "" + +#: accounts/serializers/account/account.py:262 ops/models/celery.py:83 +#: tickets/models/comment.py:13 tickets/models/ticket/general.py:46 +#: tickets/models/ticket/general.py:277 tickets/serializers/super_ticket.py:14 +msgid "State" +msgstr "" + +#: accounts/serializers/account/account.py:264 +msgid "Changed" +msgstr "" + +#: accounts/serializers/account/account.py:274 +#: accounts/serializers/automations/base.py:22 acls/models/base.py:97 +#: acls/templates/acls/asset_login_reminder.html:6 +#: assets/models/automations/base.py:19 +#: assets/serializers/automations/base.py:20 +#: authentication/api/connection_token.py:410 ops/models/base.py:17 +#: ops/models/job.py:152 ops/serializers/job.py:19 +#: terminal/templates/terminal/_msg_command_execute_alert.html:16 +msgid "Assets" +msgstr "" + +#: accounts/serializers/account/account.py:329 +msgid "Account already exists" +msgstr "" + +#: accounts/serializers/account/account.py:379 +#, python-format +msgid "Asset does not support this secret type: %s" +msgstr "" + +#: accounts/serializers/account/account.py:411 +msgid "Account has exist" +msgstr "" + +#: accounts/serializers/account/account.py:441 +#: accounts/serializers/account/template.py:72 +#: assets/serializers/asset/common.py:387 +msgid "Spec info" +msgstr "" + +#: accounts/serializers/account/account.py:447 +#: 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:457 acls/serializers/base.py:116 +#: acls/templates/acls/asset_login_reminder.html:5 +#: acls/templates/acls/user_login_reminder.html:5 +#: 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:171 authentication/models/connection_token.py:32 +#: authentication/models/sso_token.py:16 +#: notifications/models/notification.py:12 +#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:63 +#: perms/serializers/permission.py:32 rbac/builtin.py:124 +#: 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:156 +#: terminal/notifications.py:205 terminal/serializers/command.py:16 +#: terminal/templates/terminal/_msg_command_warning.html:6 +#: terminal/templates/terminal/_msg_session_sharing.html:6 +#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1020 +#: users/models/user.py:1058 users/serializers/group.py:21 +msgid "User" +msgstr "" + +#: accounts/serializers/account/account.py:458 +#: authentication/templates/authentication/_access_key_modal.html:33 +#: terminal/notifications.py:158 terminal/notifications.py:207 +msgid "Date" +msgstr "" + +#: accounts/serializers/account/backup.py:38 +#: accounts/serializers/automations/base.py:24 +#: accounts/serializers/automations/base.py:37 +#: assets/serializers/automations/base.py:34 ops/mixin.py:23 ops/mixin.py:104 +#: settings/serializers/auth/ldap.py:66 +msgid "Periodic perform" +msgstr "" + +#: accounts/serializers/account/backup.py:39 +#: accounts/serializers/automations/base.py:38 +msgid "Executed amount" +msgstr "" + +#: accounts/serializers/account/backup.py:42 +#: accounts/serializers/automations/change_secret.py:59 +msgid "Currently only mail sending is supported" +msgstr "" + +#: accounts/serializers/account/backup.py:44 +msgid "Asset type" +msgstr "" + +#: accounts/serializers/account/base.py:25 terminal/serializers/storage.py:149 +msgid "Key password" +msgstr "" + +#: accounts/serializers/account/base.py:79 +msgid "" +"Tip: If no username is required for authentication, fill in `null`, If AD " +"account, like `username@domain`" +msgstr "" + +#: accounts/serializers/account/template.py:13 +msgid "Password length" +msgstr "" + +#: accounts/serializers/account/template.py:14 +msgid "Lowercase" +msgstr "" + +#: accounts/serializers/account/template.py:15 +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:39 +msgid "Secret generation strategy for account creation" +msgstr "" + +#: accounts/serializers/account/template.py:40 +msgid "Whether to automatically push the account to the asset" +msgstr "" + +#: accounts/serializers/account/template.py:43 +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/_user.py:27 +#: assets/models/cmd_filter.py:40 assets/models/cmd_filter.py:88 +#: assets/models/group.py:20 common/db/models.py:36 ops/models/adhoc.py:26 +#: ops/models/job.py:158 ops/models/playbook.py:31 rbac/models/role.py:37 +#: settings/models.py:38 terminal/models/applet/applet.py:45 +#: terminal/models/applet/applet.py:321 terminal/models/applet/host.py:143 +#: terminal/models/component/endpoint.py:25 +#: terminal/models/component/endpoint.py:119 +#: terminal/models/session/session.py:47 +#: terminal/models/virtualapp/virtualapp.py:28 tickets/models/comment.py:32 +#: tickets/models/ticket/general.py:295 users/models/user.py:851 +#: xpack/plugins/cloud/models.py:40 xpack/plugins/cloud/models.py:108 +msgid "Comment" +msgstr "" + +#: 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.
For security, please set " +"config CACHE_LOGIN_PASSWORD_ENABLED to true" +msgstr "" + +#: accounts/serializers/automations/base.py:23 +#: assets/serializers/automations/base.py:21 +msgid "Nodes" +msgstr "" + +#: 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:39 +msgid "Automation snapshot" +msgstr "" + +#: accounts/serializers/automations/change_secret.py:44 +msgid "SSH Key strategy" +msgstr "" + +#: accounts/serializers/automations/change_secret.py:81 +msgid "* Please enter the correct password length" +msgstr "" + +#: accounts/serializers/automations/change_secret.py:85 +msgid "* Password length range 6-30 bits" +msgstr "" + +#: accounts/serializers/automations/change_secret.py:114 +#: assets/models/automations/base.py:127 +msgid "Automation task execution" +msgstr "" + +#: accounts/signal_handlers.py:47 +#, python-format +msgid "Push related accounts to assets: %s, by system" +msgstr "" + +#: accounts/signal_handlers.py:56 +#, python-format +msgid "Add account: %s" +msgstr "" + +#: accounts/signal_handlers.py:58 +#, python-format +msgid "Delete account: %s" +msgstr "" + +#: accounts/tasks/automation.py:25 +msgid "Account execute automation" +msgstr "" + +#: accounts/tasks/automation.py:51 accounts/tasks/automation.py:56 +msgid "Execute automation record" +msgstr "" + +#: accounts/tasks/backup_account.py:25 +msgid "Execute account backup plan" +msgstr "" + +#: accounts/tasks/gather_accounts.py:34 +msgid "Gather assets accounts" +msgstr "" + +#: accounts/tasks/push_account.py:15 accounts/tasks/push_account.py:23 +msgid "Push accounts to assets" +msgstr "" + +#: accounts/tasks/remove_account.py:44 +msgid "Clean historical accounts" +msgstr "" + +#: accounts/tasks/remove_account.py:76 +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/vault.py:31 +msgid "Sync secret to vault" +msgstr "" + +#: accounts/tasks/verify_account.py:49 +msgid "Verify asset account availability" +msgstr "" + +#: accounts/tasks/verify_account.py:55 +msgid "Verify accounts connectivity" +msgstr "" + +#: accounts/templates/accounts/asset_account_change_info.html:8 +msgid "Added account" +msgstr "" + +#: accounts/templates/accounts/asset_account_change_info.html:9 +msgid "Deleted account" +msgstr "" + +#: accounts/templates/accounts/change_secret_failed_info.html:3 +#: ops/templates/ops/celery_task_log.html:71 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 +#: acls/templates/acls/asset_login_reminder.html:3 +#: acls/templates/acls/user_login_reminder.html:3 +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 "Acls" +msgstr "" + +#: 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 terminal/const.py:10 +msgid "Warning" +msgstr "" + +#: acls/const.py:10 audits/const.py:35 notifications/apps.py:7 +msgid "Notifications" +msgstr "" + +#: acls/models/base.py:37 assets/models/_user.py:51 +#: assets/models/cmd_filter.py:76 terminal/models/component/endpoint.py:112 +#: xpack/plugins/cloud/models.py:287 +msgid "Priority" +msgstr "" + +#: acls/models/base.py:38 assets/models/_user.py:51 +#: assets/models/cmd_filter.py:76 terminal/models/component/endpoint.py:113 +#: xpack/plugins/cloud/models.py:288 +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 authentication/models/access_key.py:25 +#: authentication/models/connection_token.py:53 +#: authentication/templates/authentication/_access_key_modal.html:32 +#: perms/models/asset_permission.py:82 terminal/models/session/sharing.py:29 +#: tickets/const.py:36 +msgid "Active" +msgstr "" + +#: acls/models/base.py:81 users/apps.py:9 users/models/preference.py:16 +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:386 +#: 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 +#: ops/serializers/job.py:70 terminal/const.py:86 +#: 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:304 +msgid "Regex" +msgstr "" + +#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79 +#: settings/models.py:182 settings/serializers/feature.py:19 +#: xpack/plugins/license/models.py:30 +msgid "Content" +msgstr "" + +#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79 +msgid "One line one command" +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 "Asset login reminder" +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:145 +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 +#: settings/serializers/terminal.py:10 +msgid "IP" +msgstr "" + +#: acls/serializers/rules/rules.py:35 +msgid "Time Period" +msgstr "" + +#: acls/templates/acls/asset_login_reminder.html:10 +msgid "" +"The user has just logged in to the asset. Please ensure that this is an " +"authorized operation. If you suspect that this is an unauthorized access, " +"please take appropriate measures immediately." +msgstr "" + +#: acls/templates/acls/asset_login_reminder.html:12 +#: acls/templates/acls/user_login_reminder.html:13 +msgid "Thank you" +msgstr "" + +#: acls/templates/acls/user_login_reminder.html:7 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:8 audits/models.py:197 +#: audits/models.py:266 audits/serializers.py:68 +msgid "User agent" +msgstr "" + +#: acls/templates/acls/user_login_reminder.html:11 +msgid "" +"The user has just successfully logged into the system. Please ensure that " +"this is an authorized operation. If you suspect that this is an unauthorized " +"access, please take appropriate measures immediately." +msgstr "" + +#: applications/apps.py:9 +msgid "Applications" +msgstr "" + +#: applications/models.py:16 xpack/plugins/cloud/models.py:38 +#: xpack/plugins/cloud/serializers/account.py:68 +msgid "Attrs" +msgstr "" + +#: applications/models.py:19 +msgid "Application" +msgstr "" + +#: applications/models.py:23 +msgid "Can match application" +msgstr "" + +#: assets/api/asset/asset.py:180 +msgid "Cannot create asset directly, you should create a host or other" +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/automations/base/manager.py:191 +msgid "{} disabled" +msgstr "" + +#: assets/automations/base/manager.py:254 +msgid " - Platform {} ansible disabled" +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:93 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:102 +msgid "Connect failed" +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 +msgid "Disabled" +msgstr "" + +#: assets/const/base.py:33 settings/serializers/basic.py:8 +#: users/serializers/preference/koko.py:19 +#: users/serializers/preference/lina.py:39 +#: users/serializers/preference/luna.py:77 +msgid "Basic" +msgstr "" + +#: assets/const/base.py:34 assets/const/protocol.py:281 +#: assets/models/asset/web.py:13 +msgid "Script" +msgstr "" + +#: assets/const/category.py:10 assets/models/asset/host.py:8 +#: settings/serializers/auth/radius.py:16 settings/serializers/auth/sms.py:71 +#: settings/serializers/feature.py:49 settings/serializers/msg.py:31 +#: terminal/models/component/endpoint.py:13 terminal/serializers/applet.py:17 +#: 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 "" + +#: 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:27 users/const.py:64 +msgid "Web" +msgstr "" + +#: assets/const/category.py:16 common/sdk/sms/endpoint.py:20 +msgid "Custom type" +msgstr "" + +#: 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:26 +#: 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 +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:58 +msgid "SFTP root" +msgstr "" + +#: assets/const/protocol.py:60 +#, python-brace-format +msgid "" +"SFTP root directory, Support variable:
- ${ACCOUNT} The connected " +"account username
- ${HOME} The home directory of the connected account " +"
- ${USER} The username of the user" +msgstr "" + +#: assets/const/protocol.py:75 +msgid "Console" +msgstr "" + +#: assets/const/protocol.py:76 +msgid "Connect to console session" +msgstr "" + +#: assets/const/protocol.py:80 +msgid "Any" +msgstr "" + +#: assets/const/protocol.py:82 settings/serializers/security.py:232 +msgid "Security" +msgstr "" + +#: assets/const/protocol.py:83 +msgid "Security layer to use for the connection" +msgstr "" + +#: assets/const/protocol.py:89 +msgid "AD domain" +msgstr "" + +#: assets/const/protocol.py:104 +msgid "Username prompt" +msgstr "" + +#: assets/const/protocol.py:105 +msgid "We will send username when we see this prompt" +msgstr "" + +#: assets/const/protocol.py:110 +msgid "Password prompt" +msgstr "" + +#: assets/const/protocol.py:111 +msgid "We will send password when we see this prompt" +msgstr "" + +#: assets/const/protocol.py:116 +msgid "Success prompt" +msgstr "" + +#: assets/const/protocol.py:117 +msgid "We will consider login success when we see this prompt" +msgstr "" + +#: assets/const/protocol.py:128 assets/models/asset/database.py:10 +#: settings/serializers/msg.py:47 +msgid "Use SSL" +msgstr "" + +#: assets/const/protocol.py:163 +msgid "SYSDBA" +msgstr "" + +#: assets/const/protocol.py:164 +msgid "Connect as SYSDBA" +msgstr "" + +#: assets/const/protocol.py:179 +msgid "" +"SQL Server version, Different versions have different connection drivers" +msgstr "" + +#: assets/const/protocol.py:209 +msgid "Auth source" +msgstr "" + +#: assets/const/protocol.py:210 +msgid "The database to authenticate against" +msgstr "" + +#: assets/const/protocol.py:215 +msgid "Connection options" +msgstr "Options" + +#: assets/const/protocol.py:216 +msgid "The connection specific options eg. retryWrites=false&retryReads=false" +msgstr "" + +#: assets/const/protocol.py:228 +msgid "Auth username" +msgstr "" + +#: assets/const/protocol.py:251 +msgid "Safe mode" +msgstr "" + +#: assets/const/protocol.py:253 +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:258 assets/models/asset/web.py:9 +#: assets/serializers/asset/info/spec.py:16 +msgid "Autofill" +msgstr "" + +#: assets/const/protocol.py:266 assets/models/asset/web.py:10 +msgid "Username selector" +msgstr "" + +#: assets/const/protocol.py:271 assets/models/asset/web.py:11 +msgid "Password selector" +msgstr "" + +#: assets/const/protocol.py:276 assets/models/asset/web.py:12 +msgid "Submit selector" +msgstr "" + +#: assets/const/protocol.py:299 +msgid "API mode" +msgstr "" + +#: assets/const/types.py:248 +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/_user.py:25 +msgid "SSH private key" +msgstr "" + +#: assets/models/_user.py:26 +msgid "SSH public key" +msgstr "" + +#: assets/models/_user.py:28 assets/models/automations/base.py:114 +#: assets/models/cmd_filter.py:41 assets/models/group.py:19 +#: audits/models.py:269 common/db/models.py:34 ops/models/base.py:54 +#: ops/models/job.py:241 users/models/user.py:1059 +msgid "Date created" +msgstr "" + +#: assets/models/_user.py:29 assets/models/cmd_filter.py:42 +#: common/db/models.py:35 users/models/user.py:869 +msgid "Date updated" +msgstr "" + +#: assets/models/_user.py:30 assets/models/cmd_filter.py:44 +#: assets/models/cmd_filter.py:91 assets/models/group.py:18 +#: common/db/models.py:32 users/models/user.py:858 +#: users/serializers/group.py:32 +msgid "Created by" +msgstr "" + +#: assets/models/_user.py:40 +msgid "Automatic managed" +msgstr "" + +#: assets/models/_user.py:41 +msgid "Manually input" +msgstr "" + +#: assets/models/_user.py:45 +msgid "Common user" +msgstr "" + +#: assets/models/_user.py:46 assets/models/_user.py:95 +msgid "Admin user" +msgstr "" + +#: assets/models/_user.py:49 +msgid "Username same with user" +msgstr "" + +#: assets/models/_user.py:52 authentication/models/connection_token.py:41 +#: authentication/serializers/connect_token_secret.py:114 +#: settings/serializers/msg.py:29 terminal/models/applet/applet.py:42 +#: terminal/models/virtualapp/virtualapp.py:24 +#: terminal/serializers/session.py:21 terminal/serializers/session.py:48 +#: terminal/serializers/storage.py:71 +msgid "Protocol" +msgstr "" + +#: assets/models/_user.py:54 +msgid "Sudo" +msgstr "" + +#: assets/models/_user.py:55 ops/const.py:50 ops/const.py:61 +msgid "Shell" +msgstr "" + +#: assets/models/_user.py:56 +msgid "Login mode" +msgstr "" + +#: assets/models/_user.py:57 terminal/serializers/storage.py:152 +msgid "SFTP Root" +msgstr "" + +#: assets/models/_user.py:58 +msgid "Home" +msgstr "" + +#: assets/models/_user.py:59 +msgid "System groups" +msgstr "" + +#: assets/models/_user.py:62 +msgid "User switch" +msgstr "" + +#: assets/models/_user.py:63 +msgid "Switch from" +msgstr "" + +#: assets/models/_user.py:69 +msgid "System user" +msgstr "" + +#: assets/models/_user.py:71 +msgid "Can match system user" +msgstr "" + +#: assets/models/asset/cloud.py:11 +msgid "Cloud" +msgstr "" + +#: assets/models/asset/common.py:94 assets/models/platform.py:16 +#: settings/serializers/auth/radius.py:17 settings/serializers/auth/sms.py:72 +#: settings/serializers/msg.py:32 terminal/serializers/storage.py:133 +#: xpack/plugins/cloud/serializers/account_attrs.py:73 +msgid "Port" +msgstr "" + +#: assets/models/asset/common.py:160 assets/serializers/asset/common.py:150 +msgid "Address" +msgstr "" + +#: assets/models/asset/common.py:161 assets/models/platform.py:134 +#: authentication/backends/passkey/models.py:12 +#: authentication/serializers/connect_token_secret.py:118 +#: perms/serializers/user_permission.py:25 xpack/plugins/cloud/models.py:334 +msgid "Platform" +msgstr "" + +#: assets/models/asset/common.py:163 assets/models/domain.py:22 +#: authentication/serializers/connect_token_secret.py:136 +#: perms/serializers/user_permission.py:28 xpack/plugins/cloud/models.py:336 +msgid "Domain" +msgstr "" + +#: assets/models/asset/common.py:165 assets/models/automations/base.py:18 +#: assets/models/cmd_filter.py:32 assets/models/node.py:553 +#: perms/models/asset_permission.py:72 perms/serializers/permission.py:37 +#: tickets/models/ticket/apply_asset.py:14 xpack/plugins/cloud/models.py:335 +msgid "Node" +msgstr "" + +#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:388 +#: assets/serializers/asset/host.py:11 +msgid "Gathered info" +msgstr "" + +#: assets/models/asset/common.py:168 assets/serializers/asset/custom.py:14 +msgid "Custom info" +msgstr "" + +#: assets/models/asset/common.py:353 +msgid "Can refresh asset hardware info" +msgstr "" + +#: assets/models/asset/common.py:354 +msgid "Can test asset connectivity" +msgstr "" + +#: assets/models/asset/common.py:355 +msgid "Can match asset" +msgstr "" + +#: assets/models/asset/common.py:356 +msgid "Can change asset nodes" +msgstr "" + +#: assets/models/asset/custom.py:8 +msgid "Custom asset" +msgstr "" + +#: assets/models/asset/database.py:11 +msgid "CA cert" +msgstr "" + +#: assets/models/asset/database.py:12 +msgid "Client cert" +msgstr "" + +#: assets/models/asset/database.py:13 +msgid "Client key" +msgstr "" + +#: assets/models/asset/database.py:14 +msgid "Allow invalid cert" +msgstr "" + +#: assets/models/asset/gpt.py:8 settings/serializers/feature.py:84 +msgid "Proxy" +msgstr "" + +#: assets/models/automations/base.py:22 ops/models/job.py:237 +#: settings/serializers/auth/sms.py:103 +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/gather_facts.py:15 +msgid "Gather asset facts" +msgstr "" + +#: assets/models/automations/ping.py:15 +msgid "Ping asset" +msgstr "" + +#: assets/models/base.py:19 +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 +#: perms/serializers/permission.py:34 users/models/group.py:25 +#: users/models/user.py:821 +msgid "User group" +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/group.py:27 +msgid "Asset group" +msgstr "" + +#: assets/models/group.py:31 assets/models/platform.py:19 +#: assets/serializers/platform.py:121 +#: xpack/plugins/cloud/providers/nutanix.py:30 +msgid "Default" +msgstr "" + +#: assets/models/group.py:31 +msgid "Default asset group" +msgstr "" + +#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1044 +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:34 +#: 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:119 +#: authentication/serializers/connect_token_secret.py:124 +#: common/serializers/common.py:85 labels/models.py:17 labels/models.py:33 +#: labels/serializers.py:45 settings/serializers/msg.py:90 +msgid "Label" +msgstr "" + +#: assets/models/node.py:169 +msgid "New node" +msgstr "" + +#: assets/models/node.py:467 audits/backends/db.py:65 audits/backends/db.py:66 +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 +msgid "Required" +msgstr "" + +#: assets/models/platform.py:20 +msgid "Public" +msgstr "" + +#: assets/models/platform.py:21 assets/serializers/platform.py:49 +#: 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:37 +#: terminal/serializers/applet_host.py:33 +msgid "Enabled" +msgstr "" + +#: assets/models/platform.py:39 +msgid "Ansible config" +msgstr "" + +#: assets/models/platform.py:41 assets/serializers/platform.py:33 +msgid "Ping enabled" +msgstr "" + +#: assets/models/platform.py:42 assets/serializers/platform.py:34 +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:35 +msgid "Gather facts enabled" +msgstr "" + +#: assets/models/platform.py:47 assets/models/platform.py:71 +#: assets/serializers/platform.py:36 +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:39 +msgid "Change secret enabled" +msgstr "" + +#: assets/models/platform.py:53 assets/serializers/platform.py:40 +msgid "Change secret method" +msgstr "" + +#: assets/models/platform.py:55 +msgid "Change secret params" +msgstr "" + +#: assets/models/platform.py:57 assets/serializers/platform.py:41 +msgid "Push account enabled" +msgstr "" + +#: assets/models/platform.py:59 assets/serializers/platform.py:42 +msgid "Push account method" +msgstr "" + +#: assets/models/platform.py:61 +msgid "Push account params" +msgstr "" + +#: assets/models/platform.py:63 assets/serializers/platform.py:37 +msgid "Verify account enabled" +msgstr "" + +#: assets/models/platform.py:65 assets/serializers/platform.py:38 +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 +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:298 +msgid "Meta" +msgstr "" + +#: assets/models/platform.py:98 labels/models.py:13 +msgid "Internal" +msgstr "" + +#: assets/models/platform.py:102 assets/serializers/platform.py:138 +msgid "Charset" +msgstr "" + +#: assets/models/platform.py:104 assets/serializers/platform.py:167 +msgid "Domain enabled" +msgstr "" + +#: assets/models/platform.py:106 assets/serializers/platform.py:166 +msgid "Su enabled" +msgstr "" + +#: assets/models/platform.py:107 assets/serializers/platform.py:144 +msgid "Su method" +msgstr "" + +#: assets/models/platform.py:108 assets/serializers/platform.py:147 +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:127 assets/serializers/platform.py:141 +#: authentication/serializers/connect_token_secret.py:30 +#: authentication/serializers/connect_token_secret.py:75 +#: perms/models/asset_permission.py:76 perms/serializers/permission.py:42 +#: perms/serializers/user_permission.py:74 xpack/plugins/cloud/models.py:337 +#: xpack/plugins/cloud/serializers/task.py:33 +msgid "Protocols" +msgstr "" + +#: assets/serializers/asset/common.py:129 +#: assets/serializers/asset/common.py:151 +msgid "Node path" +msgstr "" + +#: assets/serializers/asset/common.py:148 +#: assets/serializers/asset/common.py:389 +msgid "Auto info" +msgstr "" + +#: assets/serializers/asset/common.py:245 +msgid "Platform not exist" +msgstr "" + +#: assets/serializers/asset/common.py:281 +msgid "port out of range (0-65535)" +msgstr "" + +#: assets/serializers/asset/common.py:288 +msgid "Protocol is required: {}" +msgstr "" + +#: assets/serializers/asset/common.py:316 +msgid "Invalid data" +msgstr "" + +#: assets/serializers/asset/database.py:13 +msgid "Default database" +msgstr "" + +#: 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:297 +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:62 perms/serializers/permission.py:188 +msgid "Assets amount" +msgstr "" + +#: assets/serializers/gateway.py:23 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:43 +msgid "Gather accounts enabled" +msgstr "" + +#: assets/serializers/platform.py:44 +msgid "Gather accounts method" +msgstr "" + +#: assets/serializers/platform.py:50 +msgid "Port from addr" +msgstr "" + +#: assets/serializers/platform.py:62 +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:67 +msgid "This protocol is required, and it must be set when adding assets." +msgstr "" + +#: assets/serializers/platform.py:70 +msgid "" +"This protocol is default, when adding assets, it will be displayed by " +"default." +msgstr "" + +#: assets/serializers/platform.py:73 +msgid "This protocol is public, asset will show this protocol to user" +msgstr "" + +#: assets/serializers/platform.py:122 +msgid "Help text" +msgstr "" + +#: assets/serializers/platform.py:123 +msgid "Choices" +msgstr "" + +#: assets/serializers/platform.py:142 +msgid "Automation" +msgstr "" + +#: assets/serializers/platform.py:168 +msgid "Default Domain" +msgstr "" + +#: assets/serializers/platform.py:189 +msgid "type is required" +msgstr "" + +#: assets/serializers/platform.py:204 +msgid "Protocols is required" +msgstr "" + +#: assets/signal_handlers/asset.py:26 assets/tasks/ping.py:35 +msgid "Test assets connectivity " +msgstr "" + +#: assets/signal_handlers/asset.py:36 +msgid "Gather asset hardware info" +msgstr "" + +#: assets/tasks/automation.py:24 +msgid "Asset execute automation" +msgstr "" + +#: assets/tasks/gather_facts.py:21 assets/tasks/gather_facts.py:27 +msgid "Gather assets facts" +msgstr "" + +#: assets/tasks/gather_facts.py:39 +msgid "Update assets hardware info: " +msgstr "" + +#: assets/tasks/gather_facts.py:47 +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:28 +msgid "" +"The task of self-checking is already running and cannot be started repeatedly" +msgstr "" + +#: assets/tasks/nodes_amount.py:33 +msgid "Periodic check the amount of assets under the node" +msgstr "" + +#: assets/tasks/ping.py:20 assets/tasks/ping.py:26 +msgid "Test assets connectivity" +msgstr "" + +#: assets/tasks/ping.py:42 +msgid "Test if the assets under the node are connectable " +msgstr "" + +#: assets/tasks/ping_gateway.py:19 assets/tasks/ping_gateway.py:25 +#: assets/tasks/ping_gateway.py:34 +msgid "Test gateways connectivity" +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 "Audits" +msgstr "" + +#: audits/backends/db.py:16 +msgid "The text content is too long. Use Elasticsearch to store operation logs" +msgstr "" + +#: audits/backends/db.py:91 +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:240 +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 terminal/api/session/session.py:149 +msgid "Download" +msgstr "" + +#: audits/const.py:19 +msgid "Rename dir" +msgstr "" + +#: audits/const.py:23 rbac/tree.py:238 terminal/api/session/session.py:277 +#: terminal/templates/terminal/_msg_command_warning.html:18 +#: terminal/templates/terminal/_msg_session_sharing.html:10 +msgid "View" +msgstr "" + +#: audits/const.py:26 +#: authentication/templates/authentication/_access_key_modal.html:22 +#: rbac/tree.py:237 +msgid "Create" +msgstr "" + +#: audits/const.py:29 +msgid "Connect" +msgstr "" + +#: audits/const.py:30 authentication/templates/authentication/login.html:296 +#: authentication/templates/authentication/login.html:369 +#: templates/_header_bar.html:101 +msgid "Login" +msgstr "" + +#: audits/const.py:31 ops/const.py:9 +msgid "Change password" +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:84 +#: terminal/models/session/sharing.py:128 tickets/const.py:25 +msgid "Finished" +msgstr "" + +#: audits/const.py:46 settings/serializers/terminal.py:6 +#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:175 +#: terminal/models/virtualapp/provider.py:14 terminal/serializers/session.py:55 +#: terminal/serializers/session.py:69 +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 terminal/models/applet/host.py:144 +#: terminal/models/component/task.py:22 +msgid "Task" +msgstr "" + +#: audits/const.py:60 +msgid "-" +msgstr "" + +#: audits/handler.py:116 +msgid "Yes" +msgstr "" + +#: audits/handler.py:116 +msgid "No" +msgstr "" + +#: audits/models.py:47 +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:38 +msgid "Operate" +msgstr "" + +#: audits/models.py:63 +msgid "Filename" +msgstr "" + +#: audits/models.py:66 common/serializers/common.py:98 +msgid "File" +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/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:86 +msgid "Resource Type" +msgstr "" + +#: audits/models.py:95 audits/models.py:98 audits/models.py:144 +#: audits/serializers.py:85 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:52 +#: authentication/templates/authentication/_mfa_confirm_modal.html:14 +#: users/forms/profile.py:63 users/models/user.py:838 +#: users/serializers/profile.py:102 +msgid "MFA" +msgstr "" + +#: audits/models.py:210 +msgid "Date login" +msgstr "" + +#: audits/models.py:212 audits/models.py:268 audits/serializers.py:70 +#: audits/serializers.py:184 +msgid "Authentication backend" +msgstr "" + +#: audits/models.py:256 +msgid "User login log" +msgstr "" + +#: audits/models.py:264 +msgid "Session key" +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:25 ops/models/base.py:16 +#: ops/models/base.py:53 ops/models/celery.py:86 ops/models/job.py:151 +#: ops/models/job.py:240 ops/models/playbook.py:30 +#: terminal/models/session/sharing.py:25 +msgid "Creator" +msgstr "" + +#: audits/serializers.py:69 +msgid "Reason display" +msgstr "" + +#: audits/serializers.py:134 +#, python-format +msgid "User %s %s this resource" +msgstr "" + +#: audits/serializers.py:172 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.py:856 +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:77 notifications/backends/__init__.py:11 +#: settings/serializers/auth/wecom.py:10 users/models/user.py:760 +#: users/models/user.py:870 +msgid "WeCom" +msgstr "" + +#: audits/signal_handlers/login_log.py:38 authentication/views/feishu.py:105 +#: authentication/views/login.py:89 notifications/backends/__init__.py:14 +#: settings/serializers/auth/feishu.py:10 users/models/user.py:762 +#: users/models/user.py:872 +msgid "FeiShu" +msgstr "" + +#: audits/signal_handlers/login_log.py:40 authentication/views/login.py:101 +#: authentication/views/slack.py:87 notifications/backends/__init__.py:16 +#: settings/serializers/auth/slack.py:10 users/models/user.py:764 +#: users/models/user.py:874 +msgid "Slack" +msgstr "" + +#: audits/signal_handlers/login_log.py:41 authentication/views/dingtalk.py:161 +#: authentication/views/login.py:83 notifications/backends/__init__.py:12 +#: settings/serializers/auth/dingtalk.py:10 users/models/user.py:761 +#: users/models/user.py:871 +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:107 +#: settings/serializers/auth/passkey.py:8 +msgid "Passkey" +msgstr "" + +#: audits/tasks.py:119 +msgid "Clean audits session task log" +msgstr "" + +#: audits/tasks.py:133 +msgid "Upload FTP file 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:117 +#, 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:62 +msgid "Current user not support mfa type: {}" +msgstr "" + +#: authentication/api/password.py:33 terminal/api/session/session.py:325 +#: 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:361 +#: 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 settings/serializers/auth/base.py:10 +msgid "Authentication" +msgstr "" + +#: 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/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:148 +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 +msgid "Date last used" +msgstr "" + +#: authentication/backends/passkey/models.py:15 +msgid "Credential ID" +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 IP and Time period is not allowed" +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:15 +msgid "Phone not set" +msgstr "" + +#: authentication/errors/mfa.py:8 +msgid "SSO auth closed" +msgstr "" + +#: authentication/errors/mfa.py:18 authentication/views/wecom.py:59 +msgid "WeCom is already bound" +msgstr "" + +#: authentication/errors/mfa.py:23 authentication/views/wecom.py:159 +#: authentication/views/wecom.py:201 +msgid "WeCom is not bound" +msgstr "" + +#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:213 +#: authentication/views/dingtalk.py:255 +msgid "DingTalk is not bound" +msgstr "" + +#: authentication/errors/mfa.py:33 authentication/views/feishu.py:138 +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:127 +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:323 +msgid "Your password is too simple, please change it for security" +msgstr "" + +#: authentication/errors/redirect.py:93 authentication/mixins.py:330 +msgid "You should to change your password before login" +msgstr "" + +#: authentication/errors/redirect.py:101 authentication/mixins.py:337 +msgid "Your password has expired, please reset before logging in" +msgstr "" + +#: authentication/forms.py:39 +msgid "Auto login" +msgstr "" + +#: 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/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:16 +#: authentication/serializers/password_mfa.py:24 +#: settings/serializers/auth/sms.py:32 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:94 settings/utils/ldap.py:679 +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:273 +msgid "The MFA type ({}) is not enabled" +msgstr "" + +#: authentication/mixins.py:313 +msgid "Please change your password" +msgstr "" + +#: authentication/models/access_key.py:22 +#: terminal/models/component/endpoint.py:110 +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:42 +msgid "Connect method" +msgstr "" + +#: authentication/models/connection_token.py:43 +msgid "Connect options" +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 +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/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 "" + +#: authentication/serializers/connect_token_secret.py:120 +msgid "Options" +msgstr "" + +#: authentication/serializers/connect_token_secret.py:127 +msgid "Component" +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 perms/serializers/permission.py:38 +#: perms/serializers/permission.py:59 +#: 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:40 perms/serializers/permission.py:60 +#: users/serializers/user.py:102 users/serializers/user.py:179 +msgid "Is expired" +msgstr "" + +#: authentication/serializers/password_mfa.py:29 +#: users/templates/users/forgot_password.html:153 +msgid "The {} cannot be empty" +msgstr "" + +#: authentication/serializers/token.py:22 +msgid "Access IP" +msgstr "" + +#: authentication/serializers/token.py:92 perms/serializers/permission.py:39 +#: perms/serializers/permission.py:61 users/serializers/user.py:103 +#: users/serializers/user.py:176 +msgid "Is valid" +msgstr "" + +#: authentication/tasks.py:11 +msgid "Clean expired session" +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/models/user.py:655 users/serializers/profile.py:92 +#: users/templates/users/user_verify_mfa.html:36 +msgid "Disable" +msgstr "" + +#: authentication/templates/authentication/_access_key_modal.html:67 +#: users/const.py:43 users/models/user.py:656 users/serializers/profile.py:93 +#: users/templates/users/mfa_setting.html:26 +#: users/templates/users/mfa_setting.html:68 +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 +#: authentication/templates/authentication/_msg_rest_password_success.html:2 +#: authentication/templates/authentication/_msg_rest_public_key_success.html:2 +#: jumpserver/conf.py:465 +#: perms/templates/perms/_msg_item_permissions_expire.html:3 +#: perms/templates/perms/_msg_permed_items_expire.html:3 +#: tickets/templates/tickets/approve_check_password.html:32 +#: users/templates/users/_msg_account_expire_reminder.html:4 +#: users/templates/users/_msg_password_expire_reminder.html:4 +#: users/templates/users/_msg_reset_mfa.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:10 +msgid "Login time" +msgstr "" + +#: authentication/templates/authentication/_msg_different_city.html:16 +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:16 +#: users/templates/users/_msg_user_created.html:22 +msgid "This link is valid for 1 hour. After it expires" +msgstr "" + +#: authentication/templates/authentication/_msg_reset_password.html:17 +#: users/templates/users/_msg_user_created.html:23 +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:13 +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:14 +#: authentication/templates/authentication/_msg_rest_public_key_success.html:14 +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:13 +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/login.html:276 +msgid "" +"Configuration file has problems and cannot be logged in. Please contact the " +"administrator or view latest docs" +msgstr "" + +#: authentication/templates/authentication/login.html:277 +msgid "If you are administrator, you can update the config resolve it, set" +msgstr "" + +#: authentication/templates/authentication/login.html:376 +msgid "More login options" +msgstr "" + +#: 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:73 +#: perms/templates/perms/_msg_permed_items_expire.html:21 +msgid "If you have any question, please contact the administrator" +msgstr "" + +#: authentication/views/base.py:146 +#, python-format +msgid "%s query user failed" +msgstr "" + +#: authentication/views/base.py:155 +#, python-format +msgid "The %s is already bound to another user" +msgstr "" + +#: authentication/views/base.py:162 +#, 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:212 +msgid "DingTalk Error" +msgstr "" + +#: authentication/views/dingtalk.py:57 authentication/views/feishu.py:68 +#: authentication/views/slack.py:47 authentication/views/wecom.py:55 +msgid "" +"The system configuration is incorrect. Please contact your administrator" +msgstr "" + +#: authentication/views/dingtalk.py:61 +msgid "DingTalk is already bound" +msgstr "" + +#: authentication/views/dingtalk.py:130 +msgid "Invalid user_id" +msgstr "" + +#: authentication/views/dingtalk.py:146 +msgid "DingTalk query user failed" +msgstr "" + +#: authentication/views/dingtalk.py:155 +msgid "The DingTalk is already bound to another user" +msgstr "" + +#: authentication/views/dingtalk.py:162 +msgid "Binding DingTalk successfully" +msgstr "" + +#: authentication/views/dingtalk.py:214 authentication/views/dingtalk.py:249 +msgid "Failed to get user from DingTalk" +msgstr "" + +#: authentication/views/dingtalk.py:256 +msgid "Please login with a password and then bind the DingTalk" +msgstr "" + +#: authentication/views/feishu.py:43 authentication/views/feishu.py:137 +msgid "FeiShu Error" +msgstr "" + +#: authentication/views/feishu.py:44 +msgid "FeiShu is already bound" +msgstr "" + +#: authentication/views/feishu.py:139 +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:227 +msgid "Redirecting" +msgstr "" + +#: authentication/views/login.py:228 +msgid "Redirecting to {} authentication" +msgstr "" + +#: authentication/views/login.py:251 +msgid "Login timeout, please try again." +msgstr "" + +#: authentication/views/login.py:296 +msgid "User email already exists ({})" +msgstr "" + +#: authentication/views/login.py:374 +msgid "" +"Wait for {} confirm, You also can copy link to her/him
\n" +" Don't close this page" +msgstr "" + +#: authentication/views/login.py:379 +msgid "No ticket found" +msgstr "" + +#: authentication/views/login.py:415 +msgid "Logout success" +msgstr "" + +#: authentication/views/login.py:416 +msgid "Logout success, return login page" +msgstr "" + +#: authentication/views/slack.py:35 authentication/views/slack.py:126 +msgid "Slack Error" +msgstr "" + +#: authentication/views/slack.py:63 +msgid "Slack is already bound" +msgstr "" + +#: authentication/views/slack.py:128 +msgid "Failed to get user from Slack" +msgstr "" + +#: authentication/views/wecom.py:40 +msgid "WeCom Error, Please contact your system administrator" +msgstr "" + +#: authentication/views/wecom.py:43 authentication/views/wecom.py:158 +msgid "WeCom Error" +msgstr "" + +#: authentication/views/wecom.py:118 +msgid "Wecom" +msgstr "" + +#: authentication/views/wecom.py:160 authentication/views/wecom.py:195 +msgid "Failed to get user from WeCom" +msgstr "" + +#: authentication/views/wecom.py:202 +msgid "Please login with a password and then bind the WeCom" +msgstr "" + +#: common/api/action.py:51 +msgid "Request file format may be wrong" +msgstr "" + +#: common/const/choices.py:10 +msgid "Manual trigger" +msgstr "" + +#: common/const/choices.py:11 +msgid "Timing trigger" +msgstr "" + +#: common/const/choices.py:15 +msgid "Ready" +msgstr "" + +#: common/const/choices.py:17 ops/const.py:73 +msgid "Running" +msgstr "" + +#: common/const/choices.py:21 +msgid "Canceled" +msgstr "" + +#: common/const/common.py:5 +#, 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:106 +msgid "Marshal dict data to char field" +msgstr "" + +#: common/db/fields.py:110 +msgid "Marshal dict data to text field" +msgstr "" + +#: common/db/fields.py:122 +msgid "Marshal list data to char field" +msgstr "" + +#: common/db/fields.py:126 +msgid "Marshal list data to text field" +msgstr "" + +#: common/db/fields.py:130 +msgid "Marshal data to char field" +msgstr "" + +#: common/db/fields.py:134 +msgid "Marshal data to text field" +msgstr "" + +#: common/db/fields.py:167 +msgid "Encrypt field using Secret Key" +msgstr "" + +#: common/db/fields.py:582 +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:589 +msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\"" +msgstr "" + +#: common/db/fields.py:592 +msgid "Invalid ids for ids, should be a list" +msgstr "" + +#: common/db/fields.py:594 common/db/fields.py:599 +#: common/serializers/fields.py:133 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:597 common/db/fields.py:602 +msgid "Invalid attrs, should be a list of dict" +msgstr "" + +#: common/db/fields.py:604 +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.py:859 +msgid "Updated by" +msgstr "" + +#: common/db/validators.py:9 +msgid "Invalid port range, should be like and within {}-{}" +msgstr "" + +#: common/drf/exc_handlers.py:26 +msgid "Object" +msgstr "" + +#: common/drf/metadata.py:127 +msgid "Organization ID" +msgstr "" + +#: common/drf/parsers/base.py:21 +msgid "The file content overflowed (The maximum length `{}` bytes)" +msgstr "" + +#: common/drf/parsers/base.py:199 +msgid "Parse file error: {}" +msgstr "" + +#: common/drf/parsers/excel.py:14 +msgid "Invalid excel file" +msgstr "" + +#: common/drf/renders/base.py:208 +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 +#, 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:77 +msgid "Unknown error occur" +msgstr "" + +#: common/sdk/im/wecom/__init__.py:16 +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 "" + +#: 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/fields.py:134 +#, python-brace-format +msgid "Invalid pk \"{pk_value}\" - object does not exist." +msgstr "" + +#: common/serializers/fields.py:135 +#, python-brace-format +msgid "Incorrect type. Expected pk value, received {data_type}." +msgstr "" + +#: common/serializers/fields.py:209 +msgid "Invalid data type, should be list" +msgstr "" + +#: common/serializers/fields.py:224 +msgid "Invalid choice: {}" +msgstr "" + +#: common/serializers/mixin.py:417 labels/apps.py:8 +msgid "Labels" +msgstr "" + +#: common/tasks.py:31 common/utils/verify_code.py:16 +msgid "Send email" +msgstr "" + +#: common/tasks.py:58 +msgid "Send email attachment" +msgstr "" + +#: common/tasks.py:80 terminal/tasks.py:58 +msgid "Upload session replay to external storage" +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:45 +#, python-format +msgid "Hello %s" +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:459 +#, python-brace-format +msgid "The verification code is: {code}" +msgstr "" + +#: jumpserver/conf.py:464 +msgid "Create account successfully" +msgstr "" + +#: jumpserver/conf.py:466 +msgid "Your account has been created successfully" +msgstr "" + +#: jumpserver/context_processor.py:14 +msgid "JumpServer Open Source Bastion Host" +msgstr "" + +#: jumpserver/views/celery_flower.py:22 +msgid "

Flower service unavailable, check it

" +msgstr "" + +#: jumpserver/views/other.py:26 +msgid "" +"
Luna is a separately deployed program, you need to deploy Luna, koko, " +"configure nginx for url distribution,
If you see this page, " +"prove that you are not accessing the nginx listening port. Good luck." +msgstr "" + +#: jumpserver/views/other.py:70 +msgid "Websocket server run on port: {}, you should proxy it on nginx" +msgstr "" + +#: jumpserver/views/other.py:84 +msgid "" +"
Koko is a separately deployed program, you need to deploy Koko, " +"configure nginx for url distribution,
If you see this page, " +"prove that you are not accessing the nginx listening port. Good luck." +msgstr "" + +#: labels/models.py:36 +msgid "Resource ID" +msgstr "" + +#: labels/models.py:41 +msgid "Labeled resource" +msgstr "" + +#: labels/serializers.py:22 +msgid "Resource count" +msgstr "" + +#: labels/serializers.py:28 +msgid "Cannot contain \":,\"" +msgstr "" + +#: labels/serializers.py:43 +msgid "Resource type" +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 "" + +#: ops/ansible/inventory.py:106 ops/models/job.py:65 +msgid "No account available" +msgstr "" + +#: ops/ansible/inventory.py:285 +msgid "Ansible disabled" +msgstr "" + +#: ops/ansible/inventory.py:301 +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:81 +#, 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:82 +#, python-brace-format +msgid "Asset ({asset}) authorization is missing SSH, SFTP, or WinRM protocol" +msgstr "" + +#: ops/api/job.py:83 +#, python-brace-format +msgid "Asset ({asset}) authorization lacks upload permissions" +msgstr "" + +#: ops/api/job.py:168 +msgid "Duplicate file exists" +msgstr "" + +#: ops/api/job.py:173 +#, python-brace-format +msgid "" +"File size exceeds maximum limit. Please select a file smaller than {limit}MB" +msgstr "" + +#: ops/api/job.py:237 +msgid "" +"The task is being created and cannot be interrupted. Please try again later." +msgstr "" + +#: ops/api/playbook.py:39 +msgid "Currently playbook is being used in a job" +msgstr "" + +#: ops/api/playbook.py:96 +msgid "Unsupported file content" +msgstr "" + +#: ops/api/playbook.py:98 ops/api/playbook.py:144 ops/api/playbook.py:192 +msgid "Invalid file path" +msgstr "" + +#: ops/api/playbook.py:170 +msgid "This file can not be rename" +msgstr "" + +#: ops/api/playbook.py:189 +msgid "File already exists" +msgstr "" + +#: ops/api/playbook.py:207 +msgid "File key is required" +msgstr "" + +#: ops/api/playbook.py:210 +msgid "This file can not be delete" +msgstr "" + +#: ops/apps.py:9 ops/notifications.py:18 rbac/tree.py:57 +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 +msgid "Adhoc" +msgstr "" + +#: ops/const.py:39 ops/models/job.py:149 +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: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/exception.py:6 +msgid "no valid program entry found." +msgstr "" + +#: ops/mixin.py:26 ops/mixin.py:90 settings/serializers/auth/ldap.py:73 +msgid "Cycle perform" +msgstr "" + +#: ops/mixin.py:30 ops/mixin.py:88 ops/mixin.py:107 +#: settings/serializers/auth/ldap.py:70 +msgid "Regularly perform" +msgstr "" + +#: ops/mixin.py:110 +msgid "Interval" +msgstr "" + +#: ops/mixin.py:120 +msgid "* Please enter a valid crontab expression" +msgstr "" + +#: ops/mixin.py:127 +msgid "Range {} to {}" +msgstr "" + +#: ops/mixin.py:138 +msgid "Require periodic or regularly perform setting" +msgstr "" + +#: ops/models/adhoc.py:21 +msgid "Pattern" +msgstr "" + +#: ops/models/adhoc.py:23 ops/models/job.py:146 +msgid "Module" +msgstr "" + +#: ops/models/adhoc.py:24 ops/models/celery.py:81 ops/models/job.py:144 +#: terminal/models/component/task.py:14 +msgid "Args" +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:17 +msgid "Date last run" +msgstr "" + +#: ops/models/base.py:51 ops/models/job.py:238 +#: xpack/plugins/cloud/models.py:207 +msgid "Result" +msgstr "" + +#: ops/models/base.py:52 ops/models/job.py:239 +msgid "Summary" +msgstr "" + +#: ops/models/celery.py:16 +msgid "Date last publish" +msgstr "" + +#: ops/models/celery.py:70 +msgid "Celery Task" +msgstr "" + +#: ops/models/celery.py:73 +msgid "Can view task monitor" +msgstr "" + +#: ops/models/celery.py:82 terminal/models/component/task.py:15 +msgid "Kwargs" +msgstr "" + +#: ops/models/celery.py:87 +msgid "Date published" +msgstr "" + +#: ops/models/celery.py:112 +msgid "Celery Task Execution" +msgstr "" + +#: ops/models/job.py:147 +msgid "Chdir" +msgstr "" + +#: ops/models/job.py:148 +msgid "Timeout (Seconds)" +msgstr "" + +#: ops/models/job.py:153 +msgid "Use Parameter Define" +msgstr "" + +#: ops/models/job.py:154 +msgid "Parameters define" +msgstr "" + +#: ops/models/job.py:155 +msgid "Runas" +msgstr "" + +#: ops/models/job.py:157 +msgid "Runas policy" +msgstr "" + +#: ops/models/job.py:222 +msgid "Job" +msgstr "" + +#: ops/models/job.py:245 +msgid "Material" +msgstr "" + +#: ops/models/job.py:247 +msgid "Material Type" +msgstr "" + +#: ops/models/job.py:545 +msgid "Job Execution" +msgstr "" + +#: ops/models/playbook.py:33 +msgid "CreateMethod" +msgstr "" + +#: ops/models/playbook.py:34 +msgid "VCS URL" +msgstr "" + +#: ops/notifications.py:19 +msgid "Server performance" +msgstr "" + +#: ops/notifications.py:25 +msgid "Terminal health check warning" +msgstr "" + +#: ops/notifications.py:70 +#, python-brace-format +msgid "The terminal is offline: {name}" +msgstr "" + +#: ops/notifications.py:75 +#, python-brace-format +msgid "Disk used more than {max_threshold}%: => {value}" +msgstr "" + +#: ops/notifications.py:80 +#, python-brace-format +msgid "Memory used more than {max_threshold}%: => {value}" +msgstr "" + +#: ops/notifications.py:85 +#, python-brace-format +msgid "CPU load more than {max_threshold}: => {value}" +msgstr "" + +#: ops/serializers/job.py:15 +msgid "Run after save" +msgstr "" + +#: ops/serializers/job.py:69 +msgid "Job type" +msgstr "" + +#: ops/serializers/job.py:72 terminal/serializers/session.py:56 +msgid "Is finished" +msgstr "" + +#: ops/serializers/job.py:73 +#: settings/templates/ldap/_msg_import_ldap_user.html:7 +msgid "Time cost" +msgstr "" + +#: ops/serializers/job.py:87 +msgid "You do not have permission for the current job." +msgstr "" + +#: ops/tasks.py:38 +msgid "Run ansible task" +msgstr "" + +#: ops/tasks.py:72 +msgid "Run ansible task execution" +msgstr "" + +#: ops/tasks.py:94 +msgid "Clear celery periodic tasks" +msgstr "" + +#: ops/tasks.py:115 +msgid "Create or update periodic tasks" +msgstr "" + +#: ops/tasks.py:123 +msgid "Periodic check service performance" +msgstr "" + +#: ops/tasks.py:129 +msgid "Clean up unexpected jobs" +msgstr "" + +#: ops/tasks.py:136 +msgid "Clean job_execution db record" +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:61 +msgid "The current organization ({}) cannot be deleted" +msgstr "" + +#: orgs/api.py:66 +msgid "" +"LDAP synchronization is set to the current organization. Please switch to " +"another organization before deleting" +msgstr "" + +#: orgs/api.py:76 +msgid "The organization have resource ({}) cannot be deleted" +msgstr "" + +#: orgs/apps.py:7 rbac/tree.py:128 +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/ldap.py:63 +#: terminal/templates/terminal/_msg_command_warning.html:21 +#: terminal/templates/terminal/_msg_session_sharing.html:14 +#: tickets/models/ticket/general.py:300 tickets/serializers/ticket/ticket.py:60 +msgid "Organization" +msgstr "" + +#: orgs/mixins/serializers.py:26 rbac/serializers/rolebinding.py:27 +msgid "Org name" +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:183 +#: terminal/models/applet/applet.py:41 +msgid "Builtin" +msgstr "" + +#: 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/tasks.py:9 +msgid "Refresh organization cache" +msgstr "" + +#: perms/apps.py:9 +msgid "App permissions" +msgstr "" + +#: 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:68 +msgid "Ungrouped" +msgstr "" + +#: perms/models/perm_node.py:70 +msgid "Favorite" +msgstr "" + +#: perms/models/perm_node.py:121 +msgid "Permed asset" +msgstr "" + +#: perms/models/perm_node.py:123 +msgid "Can view my assets" +msgstr "" + +#: perms/models/perm_node.py:124 +msgid "Can view user assets" +msgstr "" + +#: perms/models/perm_node.py:125 +msgid "Can view usergroup assets" +msgstr "" + +#: perms/models/perm_node.py:136 +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:118 +msgid "day" +msgstr "" + +#: perms/notifications.py:15 +msgid "You permed assets 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:186 rbac/serializers/role.py:27 +#: users/serializers/group.py:54 users/serializers/group.py:60 +msgid "Users amount" +msgstr "" + +#: perms/serializers/permission.py:187 +msgid "User groups amount" +msgstr "" + +#: perms/serializers/permission.py:189 +msgid "Nodes amount" +msgstr "" + +#: perms/tasks.py:27 +msgid "Check asset permission expired" +msgstr "" + +#: perms/tasks.py:40 +msgid "Send asset permission expired notification" +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 "RBAC" +msgstr "" + +#: rbac/builtin.py:115 +msgid "SystemAdmin" +msgstr "" + +#: rbac/builtin.py:118 +msgid "SystemAuditor" +msgstr "" + +#: rbac/builtin.py:121 +msgid "SystemComponent" +msgstr "" + +#: rbac/builtin.py:127 +msgid "OrgAdmin" +msgstr "" + +#: rbac/builtin.py:130 +msgid "OrgAuditor" +msgstr "" + +#: rbac/builtin.py:133 +msgid "OrgUser" +msgstr "" + +#: 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:78 rbac/models/role.py:34 +msgid "Permissions" +msgstr "" + +#: rbac/models/role.py:31 rbac/models/rolebinding.py:46 +#: rbac/serializers/role.py:12 settings/serializers/auth/oauth2.py:36 +msgid "Scope" +msgstr "" + +#: rbac/models/role.py:46 rbac/models/rolebinding.py:52 +#: users/models/user.py:825 +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:108 +msgid "Perms" +msgstr "" + +#: rbac/serializers/role.py:28 terminal/models/applet/applet.py:34 +#: terminal/models/virtualapp/virtualapp.py:20 +msgid "Display name" +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 "" + +#: rbac/tree.py:25 +msgid "Workbench view" +msgstr "" + +#: rbac/tree.py:26 +msgid "Audit view" +msgstr "" + +#: rbac/tree.py:27 settings/models.py:159 +msgid "System setting" +msgstr "" + +#: rbac/tree.py:37 +msgid "Session audits" +msgstr "" + +#: rbac/tree.py:49 +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 "Asset change auth" +msgstr "" + +#: rbac/tree.py:54 +msgid "Terminal setting" +msgstr "" + +#: rbac/tree.py:55 +msgid "Task Center" +msgstr "" + +#: rbac/tree.py:56 +msgid "My assets" +msgstr "" + +#: rbac/tree.py:58 terminal/models/applet/applet.py:52 +#: terminal/models/applet/applet.py:317 terminal/models/applet/host.py:30 +#: terminal/serializers/applet.py:15 +msgid "Applet" +msgstr "" + +#: rbac/tree.py:129 +msgid "Ticket comment" +msgstr "" + +#: rbac/tree.py:130 settings/serializers/feature.py:109 +#: tickets/models/ticket/general.py:305 +msgid "Ticket" +msgstr "" + +#: rbac/tree.py:131 +msgid "Common setting" +msgstr "" + +#: rbac/tree.py:132 +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:36 settings/api/slack.py:34 settings/api/sms.py:160 +#: settings/api/vault.py:40 settings/api/wecom.py:37 +msgid "Test success" +msgstr "" + +#: settings/api/email.py:22 +msgid "Test mail sent to {}, please check" +msgstr "" + +#: settings/api/ldap.py:89 +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 "Settings" +msgstr "" + +#: settings/models.py:36 users/models/preference.py:14 +msgid "Encrypted" +msgstr "" + +#: settings/models.py:161 +msgid "Can change email setting" +msgstr "" + +#: settings/models.py:162 +msgid "Can change auth setting" +msgstr "" + +#: settings/models.py:163 +msgid "Can change auth ops" +msgstr "" + +#: settings/models.py:164 +msgid "Can change auth ticket" +msgstr "" + +#: settings/models.py:165 +msgid "Can change virtual app setting" +msgstr "" + +#: settings/models.py:166 +msgid "Can change auth announcement" +msgstr "" + +#: settings/models.py:167 +msgid "Can change vault setting" +msgstr "" + +#: settings/models.py:168 +msgid "Can change chat ai setting" +msgstr "" + +#: settings/models.py:169 +msgid "Can change system msg sub setting" +msgstr "" + +#: settings/models.py:170 +msgid "Can change sms setting" +msgstr "" + +#: settings/models.py:171 +msgid "Can change security setting" +msgstr "" + +#: settings/models.py:172 +msgid "Can change clean setting" +msgstr "" + +#: settings/models.py:173 +msgid "Can change interface setting" +msgstr "" + +#: settings/models.py:174 +msgid "Can change license setting" +msgstr "" + +#: settings/models.py:175 +msgid "Can change terminal setting" +msgstr "" + +#: settings/models.py:176 +msgid "Can change other setting" +msgstr "" + +#: settings/models.py:186 +msgid "Chat prompt" +msgstr "" + +#: settings/notifications.py:23 +msgid "Notification of Synchronized LDAP User Task Results" +msgstr "" + +#: settings/serializers/auth/base.py:12 +msgid "LDAP Auth" +msgstr "" + +#: settings/serializers/auth/base.py:13 +msgid "CAS Auth" +msgstr "" + +#: settings/serializers/auth/base.py:14 +msgid "OPENID Auth" +msgstr "" + +#: settings/serializers/auth/base.py:15 +msgid "SAML2 Auth" +msgstr "" + +#: settings/serializers/auth/base.py:16 +msgid "OAuth2 Auth" +msgstr "" + +#: settings/serializers/auth/base.py:17 +msgid "RADIUS Auth" +msgstr "" + +#: settings/serializers/auth/base.py:18 +msgid "DingTalk Auth" +msgstr "" + +#: settings/serializers/auth/base.py:19 +msgid "FeiShu Auth" +msgstr "" + +#: settings/serializers/auth/base.py:20 +msgid "Lark Auth" +msgstr "" + +#: settings/serializers/auth/base.py:21 +msgid "Slack Auth" +msgstr "" + +#: settings/serializers/auth/base.py:22 +msgid "WeCom Auth" +msgstr "" + +#: settings/serializers/auth/base.py:23 +msgid "SSO Auth" +msgstr "" + +#: settings/serializers/auth/base.py:24 +msgid "Passkey Auth" +msgstr "" + +#: settings/serializers/auth/base.py:27 +msgid "Forgot password url" +msgstr "" + +#: settings/serializers/auth/base.py:30 +msgid "Enable login redirect msg" +msgstr "" + +#: settings/serializers/auth/cas.py:10 +msgid "CAS" +msgstr "" + +#: settings/serializers/auth/cas.py:12 +msgid "Enable CAS Auth" +msgstr "" + +#: settings/serializers/auth/cas.py:13 settings/serializers/auth/oidc.py:54 +msgid "Server url" +msgstr "" + +#: settings/serializers/auth/cas.py:16 +msgid "Proxy server url" +msgstr "" + +#: settings/serializers/auth/cas.py:18 settings/serializers/auth/oauth2.py:54 +#: settings/serializers/auth/saml2.py:33 +msgid "Logout completely" +msgstr "" + +#: settings/serializers/auth/cas.py:23 +msgid "Username attr" +msgstr "" + +#: settings/serializers/auth/cas.py:26 +msgid "Enable attributes map" +msgstr "" + +#: settings/serializers/auth/cas.py:28 settings/serializers/auth/saml2.py:32 +msgid "Rename attr" +msgstr "" + +#: settings/serializers/auth/cas.py:29 +msgid "Create user if not" +msgstr "" + +#: settings/serializers/auth/dingtalk.py:15 +msgid "Enable DingTalk Auth" +msgstr "" + +#: settings/serializers/auth/feishu.py:12 +msgid "Enable FeiShu Auth" +msgstr "" + +#: settings/serializers/auth/lark.py:12 +msgid "Enable Lark Auth" +msgstr "" + +#: settings/serializers/auth/ldap.py:39 +msgid "LDAP" +msgstr "" + +#: settings/serializers/auth/ldap.py:42 +msgid "LDAP server" +msgstr "" + +#: settings/serializers/auth/ldap.py:43 +msgid "eg: ldap://localhost:389" +msgstr "" + +#: settings/serializers/auth/ldap.py:45 +msgid "Bind DN" +msgstr "" + +#: settings/serializers/auth/ldap.py:50 +msgid "User OU" +msgstr "" + +#: settings/serializers/auth/ldap.py:51 +msgid "Use | split multi OUs" +msgstr "" + +#: settings/serializers/auth/ldap.py:54 +msgid "User search filter" +msgstr "" + +#: settings/serializers/auth/ldap.py:55 +#, python-format +msgid "Choice may be (cn|uid|sAMAccountName)=%(user)s)" +msgstr "" + +#: settings/serializers/auth/ldap.py:58 settings/serializers/auth/oauth2.py:56 +#: settings/serializers/auth/oidc.py:37 +msgid "User attr map" +msgstr "" + +#: settings/serializers/auth/ldap.py:59 +msgid "" +"User attr map present how to map LDAP user attr to jumpserver, username,name," +"email is jumpserver attr" +msgstr "" + +#: settings/serializers/auth/ldap.py:77 +msgid "Connect timeout (s)" +msgstr "" + +#: settings/serializers/auth/ldap.py:82 +msgid "User DN cache timeout (s)" +msgstr "" + +#: settings/serializers/auth/ldap.py:84 +msgid "" +"Caching the User DN obtained during user login authentication can " +"effectivelyimprove the speed of user authentication., 0 means no cache
If " +"the user OU structure has been adjusted, click Submit to clear the user DN " +"cache" +msgstr "" + +#: settings/serializers/auth/ldap.py:89 +msgid "Search paged size (piece)" +msgstr "" + +#: settings/serializers/auth/ldap.py:94 +msgid "Enable LDAP auth" +msgstr "" + +#: settings/serializers/auth/oauth2.py:18 +msgid "OAuth2" +msgstr "" + +#: settings/serializers/auth/oauth2.py:21 +msgid "Enable OAuth2 Auth" +msgstr "" + +#: settings/serializers/auth/oauth2.py:24 +msgid "Logo" +msgstr "" + +#: settings/serializers/auth/oauth2.py:27 +msgid "Service provider" +msgstr "" + +#: settings/serializers/auth/oauth2.py:30 settings/serializers/auth/oidc.py:19 +msgid "Client Id" +msgstr "" + +#: settings/serializers/auth/oauth2.py:33 settings/serializers/auth/oidc.py:22 +#: xpack/plugins/cloud/serializers/account_attrs.py:38 +msgid "Client Secret" +msgstr "" + +#: settings/serializers/auth/oauth2.py:39 settings/serializers/auth/oidc.py:68 +msgid "Provider auth endpoint" +msgstr "" + +#: settings/serializers/auth/oauth2.py:42 settings/serializers/auth/oidc.py:71 +msgid "Provider token endpoint" +msgstr "" + +#: settings/serializers/auth/oauth2.py:45 settings/serializers/auth/oidc.py:30 +msgid "Client authentication method" +msgstr "" + +#: settings/serializers/auth/oauth2.py:49 settings/serializers/auth/oidc.py:77 +msgid "Provider userinfo endpoint" +msgstr "" + +#: settings/serializers/auth/oauth2.py:52 settings/serializers/auth/oidc.py:80 +msgid "Provider end session endpoint" +msgstr "" + +#: settings/serializers/auth/oauth2.py:59 settings/serializers/auth/oidc.py:98 +#: settings/serializers/auth/saml2.py:34 +msgid "Always update user" +msgstr "" + +#: settings/serializers/auth/oidc.py:12 +msgid "OIDC" +msgstr "" + +#: settings/serializers/auth/oidc.py:16 +msgid "Base site url" +msgstr "" + +#: settings/serializers/auth/oidc.py:32 +msgid "Share session" +msgstr "" + +#: settings/serializers/auth/oidc.py:34 +msgid "Ignore ssl verification" +msgstr "" + +#: settings/serializers/auth/oidc.py:38 +msgid "" +"User attr map present how to map OpenID user attr to jumpserver, username," +"name,email is jumpserver attr" +msgstr "" + +#: settings/serializers/auth/oidc.py:41 +msgid "Enable PKCE" +msgstr "" + +#: settings/serializers/auth/oidc.py:43 +msgid "Code challenge method" +msgstr "" + +#: settings/serializers/auth/oidc.py:51 +msgid "Use Keycloak" +msgstr "" + +#: settings/serializers/auth/oidc.py:57 +msgid "Realm name" +msgstr "" + +#: settings/serializers/auth/oidc.py:63 +msgid "Enable OPENID Auth" +msgstr "" + +#: settings/serializers/auth/oidc.py:65 +msgid "Provider endpoint" +msgstr "" + +#: settings/serializers/auth/oidc.py:74 +msgid "Provider jwks endpoint" +msgstr "" + +#: settings/serializers/auth/oidc.py:83 +msgid "Provider sign alg" +msgstr "" + +#: settings/serializers/auth/oidc.py:86 +msgid "Provider sign key" +msgstr "" + +#: settings/serializers/auth/oidc.py:88 +msgid "Scopes" +msgstr "" + +#: settings/serializers/auth/oidc.py:90 +msgid "Id token max age (s)" +msgstr "" + +#: settings/serializers/auth/oidc.py:93 +msgid "Id token include claims" +msgstr "" + +#: settings/serializers/auth/oidc.py:95 +msgid "Use state" +msgstr "" + +#: settings/serializers/auth/oidc.py:96 +msgid "Use nonce" +msgstr "" + +#: settings/serializers/auth/passkey.py:11 +msgid "Enable passkey Auth" +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:13 +msgid "Radius" +msgstr "" + +#: settings/serializers/auth/radius.py:15 +msgid "Enable Radius Auth" +msgstr "" + +#: settings/serializers/auth/radius.py:21 +msgid "OTP in Radius" +msgstr "" + +#: settings/serializers/auth/saml2.py:10 +msgid "SAML2" +msgstr "" + +#: settings/serializers/auth/saml2.py:13 +msgid "Enable SAML2 Auth" +msgstr "" + +#: settings/serializers/auth/saml2.py:16 +msgid "IDP metadata URL" +msgstr "" + +#: settings/serializers/auth/saml2.py:19 +msgid "IDP metadata XML" +msgstr "" + +#: settings/serializers/auth/saml2.py:22 +msgid "SP advanced settings" +msgstr "" + +#: settings/serializers/auth/saml2.py:26 +msgid "SP private key" +msgstr "" + +#: settings/serializers/auth/saml2.py:30 +msgid "SP cert" +msgstr "" + +#: settings/serializers/auth/slack.py:12 +msgid "Enable Slack Auth" +msgstr "" + +#: settings/serializers/auth/sms.py:17 +msgid "Enable SMS" +msgstr "" + +#: settings/serializers/auth/sms.py:19 +msgid "SMS provider / Protocol" +msgstr "" + +#: settings/serializers/auth/sms.py:22 +msgid "SMS code length" +msgstr "" + +#: settings/serializers/auth/sms.py:27 settings/serializers/auth/sms.py:49 +#: settings/serializers/auth/sms.py:57 settings/serializers/auth/sms.py:66 +#: settings/serializers/auth/sms.py:77 settings/serializers/msg.py:83 +msgid "Signature" +msgstr "" + +#: settings/serializers/auth/sms.py:28 settings/serializers/auth/sms.py:50 +#: settings/serializers/auth/sms.py:58 settings/serializers/auth/sms.py:67 +msgid "Template code" +msgstr "" + +#: settings/serializers/auth/sms.py:35 +msgid "Test phone" +msgstr "" + +#: settings/serializers/auth/sms.py:64 +msgid "App Access Address" +msgstr "" + +#: settings/serializers/auth/sms.py:65 +msgid "Signature channel number" +msgstr "" + +#: settings/serializers/auth/sms.py:73 +msgid "Enterprise code(SP id)" +msgstr "" + +#: settings/serializers/auth/sms.py:74 +msgid "Shared secret(Shared secret)" +msgstr "" + +#: settings/serializers/auth/sms.py:75 +msgid "Original number(Src id)" +msgstr "" + +#: settings/serializers/auth/sms.py:76 +msgid "Business type(Service id)" +msgstr "" + +#: settings/serializers/auth/sms.py:80 +#, 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:89 +#, python-brace-format +msgid "The template needs to contain {code}" +msgstr "" + +#: settings/serializers/auth/sms.py:92 +msgid "Signature + Template must not exceed 65 words" +msgstr "" + +#: settings/serializers/auth/sms.py:101 +msgid "URL" +msgstr "" + +#: settings/serializers/auth/sms.py:106 +msgid "Request method" +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:15 +msgid "Enable WeCom Auth" +msgstr "" + +#: settings/serializers/basic.py:11 +msgid "Site url" +msgstr "" + +#: settings/serializers/basic.py:13 +msgid "" +"External URL, email links or other system callbacks are used to access it, " +"eg: http://dev.jumpserver.org:8080" +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 name" +msgstr "" + +#: settings/serializers/basic.py:23 +msgid "The name of global organization to display" +msgstr "" + +#: settings/serializers/basic.py:26 +msgid "Help Docs URL" +msgstr "" + +#: settings/serializers/basic.py:27 +msgid "default: http://docs.jumpserver.org" +msgstr "" + +#: settings/serializers/basic.py:30 +msgid "Help Support URL" +msgstr "" + +#: settings/serializers/basic.py:31 +msgid "default: http://www.jumpserver.org/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 keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:19 +msgid "Task log keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:23 +msgid "Operate log keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:27 +msgid "password change log keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:31 +msgid "FTP log keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:35 +msgid "Cloud sync record keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:39 +msgid "job execution keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:43 +msgid "Activity log keep days (day)" +msgstr "" + +#: settings/serializers/cleaning.py:46 +msgid "Session keep duration (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/feature.py:18 +msgid "Subject" +msgstr "" + +#: settings/serializers/feature.py:22 +msgid "More url" +msgstr "" + +#: settings/serializers/feature.py:36 settings/serializers/feature.py:39 +msgid "Announcement" +msgstr "" + +#: settings/serializers/feature.py:38 +msgid "Enable announcement" +msgstr "" + +#: settings/serializers/feature.py:46 +msgid "Enable Vault" +msgstr "" + +#: settings/serializers/feature.py:55 +msgid "Mount Point" +msgstr "" + +#: settings/serializers/feature.py:60 +msgid "Historical accounts retained count" +msgstr "" + +#: settings/serializers/feature.py:62 +msgid "" +"If the specific value is less than 999, 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, no historical " +"account deletion will be performed." +msgstr "" + +#: settings/serializers/feature.py:71 +msgid "Chat AI" +msgstr "" + +#: settings/serializers/feature.py:75 +msgid "Enable Chat AI" +msgstr "" + +#: settings/serializers/feature.py:78 +msgid "Base Url" +msgstr "" + +#: settings/serializers/feature.py:81 templates/_header_bar.html:96 +msgid "API Key" +msgstr "" + +#: settings/serializers/feature.py:87 +msgid "GPT Model" +msgstr "" + +#: settings/serializers/feature.py:111 +msgid "Enable tickets" +msgstr "" + +#: settings/serializers/feature.py:112 +msgid "No login approval" +msgstr "" + +#: settings/serializers/feature.py:115 +msgid "Ticket authorize default time" +msgstr "" + +#: settings/serializers/feature.py:118 +msgid "hour" +msgstr "" + +#: settings/serializers/feature.py:119 +msgid "Ticket authorize default time unit" +msgstr "" + +#: settings/serializers/feature.py:124 +msgid "Feature" +msgstr "" + +#: settings/serializers/feature.py:127 +msgid "Operation center" +msgstr "" + +#: settings/serializers/feature.py:128 +msgid "Allow user run batch command or not using ansible" +msgstr "" + +#: settings/serializers/feature.py:132 +msgid "Operation center command blacklist" +msgstr "" + +#: settings/serializers/feature.py:133 +msgid "Commands that are not allowed execute." +msgstr "" + +#: settings/serializers/feature.py:138 +#: 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:141 +msgid "Enable virtual app" +msgstr "" + +#: settings/serializers/msg.py:25 +msgid "SMTP" +msgstr "" + +#: settings/serializers/msg.py:26 +msgid "EXCHANGE" +msgstr "" + +#: settings/serializers/msg.py:36 +msgid "Tips: Some provider use token except password" +msgstr "" + +#: settings/serializers/msg.py:39 +msgid "Send user" +msgstr "" + +#: settings/serializers/msg.py:40 +msgid "Tips: Send mail account, default SMTP account as the send account" +msgstr "" + +#: settings/serializers/msg.py:43 +msgid "Test recipient" +msgstr "" + +#: settings/serializers/msg.py:44 +msgid "Tips: Used only as a test mail recipient" +msgstr "" + +#: settings/serializers/msg.py:48 +msgid "If SMTP port is 465, may be select" +msgstr "" + +#: settings/serializers/msg.py:51 +msgid "Use TLS" +msgstr "" + +#: settings/serializers/msg.py:52 +msgid "If SMTP port is 587, may be select" +msgstr "" + +#: settings/serializers/msg.py:55 +msgid "Subject prefix" +msgstr "" + +#: settings/serializers/msg.py:58 +msgid "Email suffix" +msgstr "" + +#: settings/serializers/msg.py:59 +msgid "" +"This is used by default if no email is returned during SSO authentication" +msgstr "" + +#: settings/serializers/msg.py:68 +msgid "Create user email subject" +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 "Create user 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:78 +msgid "Create user email content" +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 "Number of repeated historical passwords" +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 "Password minimum length" +msgstr "" + +#: settings/serializers/security.py:38 +msgid "Admin user password minimum length" +msgstr "" + +#: settings/serializers/security.py:41 +msgid "Must contain capital" +msgstr "" + +#: settings/serializers/security.py:44 +msgid "Must contain lowercase" +msgstr "" + +#: settings/serializers/security.py:47 +msgid "Must contain numeric" +msgstr "" + +#: settings/serializers/security.py:50 +msgid "Must contain special" +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 +msgid "Limit the number of user login failures" +msgstr "" + +#: settings/serializers/security.py:67 +msgid "Block user login interval (minute)" +msgstr "" + +#: settings/serializers/security.py:73 +msgid "Limit the number of IP login failures" +msgstr "" + +#: settings/serializers/security.py:77 +msgid "Block IP login interval (minute)" +msgstr "" + +#: settings/serializers/security.py:81 +msgid "Login IP White List" +msgstr "" + +#: settings/serializers/security.py:86 +msgid "Login IP Black List" +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 +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 auth" +msgstr "" + +#: settings/serializers/security.py:124 +msgid "Third-party login users perform MFA authentication" +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 "Enable 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 "Enable Login captcha" +msgstr "" + +#: settings/serializers/security.py:159 +msgid "Enable captcha to prevent robot authentication" +msgstr "" + +#: settings/serializers/security.py:162 +msgid "Remote Login Protection" +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 "Unused user timeout (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 "Enable watermark" +msgstr "" + +#: settings/serializers/security.py:192 +msgid "Enabled, the web session and replay contains watermark information" +msgstr "" + +#: settings/serializers/security.py:196 +msgid "Connection 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 "Session max connection 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:9 terminal/models/virtualapp/provider.py:11 +msgid "Hostname" +msgstr "" + +#: settings/serializers/terminal.py:15 +msgid "Auto" +msgstr "" + +#: settings/serializers/terminal.py:22 +msgid "Enable terminal register" +msgstr "" + +#: settings/serializers/terminal.py:24 +msgid "" +"Allow terminal register, after all terminal setup, you should disable this " +"for security" +msgstr "" + +#: settings/serializers/terminal.py:27 +msgid "Password auth" +msgstr "" + +#: settings/serializers/terminal.py:29 +msgid "Public key auth" +msgstr "" + +#: settings/serializers/terminal.py:30 +msgid "" +"Tips: If use other auth method, like AD/LDAP, you should disable this to " +"avoid being able to log in after deleting" +msgstr "" + +#: settings/serializers/terminal.py:34 +msgid "List sort by" +msgstr "" + +#: settings/serializers/terminal.py:37 +msgid "List page size" +msgstr "" + +#: settings/serializers/terminal.py:39 +msgid "Enable database proxy" +msgstr "" + +#: settings/serializers/terminal.py:40 +msgid "Enable Razor" +msgstr "" + +#: settings/serializers/terminal.py:41 +msgid "Enable SSH Client" +msgstr "" + +#: settings/tasks/ldap.py:28 +msgid "Periodic import ldap user" +msgstr "" + +#: settings/tasks/ldap.py:66 +msgid "Registration periodic import ldap user task" +msgstr "" + +#: settings/templates/ldap/_msg_import_ldap_user.html:2 +msgid "Sync task Finish" +msgstr "" + +#: settings/templates/ldap/_msg_import_ldap_user.html:6 +#: terminal/models/session/session.py:46 +msgid "Date end" +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:494 +msgid "ldap:// or ldaps:// protocol is used." +msgstr "" + +#: settings/utils/ldap.py:505 +msgid "Host or port is disconnected: {}" +msgstr "" + +#: settings/utils/ldap.py:507 +msgid "The port is not the port of the LDAP service: {}" +msgstr "" + +#: settings/utils/ldap.py:509 +msgid "Please add certificate: {}" +msgstr "" + +#: settings/utils/ldap.py:513 settings/utils/ldap.py:540 +#: settings/utils/ldap.py:570 settings/utils/ldap.py:598 +msgid "Unknown error: {}" +msgstr "" + +#: settings/utils/ldap.py:527 +msgid "Bind DN or Password incorrect" +msgstr "" + +#: settings/utils/ldap.py:534 +msgid "Please enter Bind DN: {}" +msgstr "" + +#: settings/utils/ldap.py:536 +msgid "Please enter Password: {}" +msgstr "" + +#: settings/utils/ldap.py:538 +msgid "Please enter correct Bind DN and Password: {}" +msgstr "" + +#: settings/utils/ldap.py:556 +msgid "Invalid User OU or User search filter: {}" +msgstr "" + +#: settings/utils/ldap.py:587 +msgid "LDAP User attr map not include: {}" +msgstr "" + +#: settings/utils/ldap.py:594 +msgid "LDAP User attr map is not dict" +msgstr "" + +#: settings/utils/ldap.py:613 +msgid "LDAP authentication is not enabled" +msgstr "" + +#: settings/utils/ldap.py:631 +msgid "Error (Invalid LDAP server): {}" +msgstr "" + +#: settings/utils/ldap.py:633 +msgid "Error (Invalid Bind DN): {}" +msgstr "" + +#: settings/utils/ldap.py:635 +msgid "Error (Invalid LDAP User attr map): {}" +msgstr "" + +#: settings/utils/ldap.py:637 +msgid "Error (Invalid User OU or User search filter): {}" +msgstr "" + +#: settings/utils/ldap.py:639 +msgid "Error (Not enabled LDAP authentication): {}" +msgstr "" + +#: settings/utils/ldap.py:641 +msgid "Error (Unknown): {}" +msgstr "" + +#: settings/utils/ldap.py:644 +msgid "Succeed: Match {} s user" +msgstr "" + +#: settings/utils/ldap.py:677 +msgid "Authentication failed (configuration incorrect): {}" +msgstr "" + +#: settings/utils/ldap.py:681 +msgid "Authentication failed (username or password incorrect): {}" +msgstr "" + +#: settings/utils/ldap.py:683 +msgid "Authentication failed (Unknown): {}" +msgstr "" + +#: settings/utils/ldap.py:686 +msgid "Authentication success: {}" +msgstr "" + +#: settings/ws.py:195 +msgid "Get ldap users is None" +msgstr "" + +#: settings/ws.py:205 +msgid "Imported {} users successfully (Organization: {})" +msgstr "" + +#: templates/_csv_import_export.html:8 +msgid "Export" +msgstr "" + +#: templates/_csv_import_export.html:13 templates/_csv_import_modal.html:5 +msgid "Import" +msgstr "" + +#: templates/_csv_import_modal.html:12 +msgid "Download the imported template or use the exported CSV file format" +msgstr "" + +#: 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 this link update password.\n" +" " +msgstr "" + +#: templates/_message.html:30 +msgid "Your password will at" +msgstr "" + +#: templates/_message.html:31 +#, python-format +msgid "" +"\n" +" please click this " +"link to update your password.\n" +" " +msgstr "" + +#: templates/_message.html:43 +#, python-format +msgid "" +"\n" +" Your information was incomplete. Please click this link to complete your information.\n" +" " +msgstr "" + +#: templates/_message.html:56 +#, python-format +msgid "" +"\n" +" Your ssh public key not set or expired. Please click this link to update\n" +" " +msgstr "" + +#: templates/_mfa_login_field.html:28 +msgid "Send verification code" +msgstr "" + +#: templates/_mfa_login_field.html:107 +#: users/templates/users/forgot_password.html:176 +msgid "Wait: " +msgstr "" + +#: templates/_mfa_login_field.html:117 +#: 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 "" + +#: templates/resource_download.html:18 templates/resource_download.html:33 +#: users/const.py:65 +msgid "Client" +msgstr "" + +#: templates/resource_download.html:20 +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:33 +msgid "Microsoft" +msgstr "" + +#: templates/resource_download.html:33 +msgid "Official" +msgstr "" + +#: templates/resource_download.html:35 +msgid "" +"macOS needs to download the client to connect RDP asset, which comes with " +"Windows" +msgstr "" + +#: templates/resource_download.html:44 +msgid "Windows Remote application publisher tools" +msgstr "" + +#: templates/resource_download.html:45 +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/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:34 +msgid "Cannot delete storage that is being used" +msgstr "" + +#: terminal/api/component/storage.py:75 terminal/api/component/storage.py:76 +msgid "Command storages" +msgstr "" + +#: terminal/api/component/storage.py:82 +msgid "Invalid" +msgstr "" + +#: terminal/api/component/storage.py:130 terminal/tasks.py:149 +msgid "Test failure: {}" +msgstr "" + +#: terminal/api/component/storage.py:133 +msgid "Test successful" +msgstr "" + +#: terminal/api/component/storage.py:135 +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:317 +msgid "Session does not exist: {}" +msgstr "" + +#: terminal/api/session/session.py:320 +msgid "Session is finished or the protocol not supported" +msgstr "" + +#: terminal/api/session/session.py:333 +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 "Terminals" +msgstr "" + +#: 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/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:84 +#: users/templates/users/reset_password.html:53 +msgid "Normal" +msgstr "" + +#: terminal/const.py:48 +msgid "Offline" +msgstr "" + +#: terminal/const.py:80 +msgid "Mismatch" +msgstr "" + +#: terminal/const.py:85 +msgid "Tunnel" +msgstr "" + +#: terminal/const.py:91 +msgid "Read only" +msgstr "" + +#: terminal/const.py:92 +msgid "Writable" +msgstr "" + +#: terminal/const.py:96 +msgid "Kill session" +msgstr "" + +#: terminal/const.py:97 +msgid "Lock session" +msgstr "" + +#: terminal/const.py:98 +msgid "Unlock session" +msgstr "" + +#: terminal/const.py:103 +msgid "Replay create failed" +msgstr "" + +#: terminal/const.py:104 +msgid "Replay upload failed" +msgstr "" + +#: terminal/const.py:105 +msgid "Replay convert failed" +msgstr "" + +#: terminal/const.py:106 +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:30 xpack/plugins/license/models.py:88 +msgid "Community edition" +msgstr "" + +#: terminal/models/applet/applet.py:31 +msgid "Enterprise" +msgstr "" + +#: terminal/models/applet/applet.py:36 +#: terminal/models/virtualapp/virtualapp.py:22 +msgid "Author" +msgstr "" + +#: terminal/models/applet/applet.py:38 terminal/serializers/applet.py:31 +msgid "Edition" +msgstr "" + +#: terminal/models/applet/applet.py:43 +msgid "Can concurrent" +msgstr "" + +#: terminal/models/applet/applet.py:44 +#: terminal/models/virtualapp/virtualapp.py:29 +msgid "Tags" +msgstr "" + +#: terminal/models/applet/applet.py:48 terminal/serializers/applet_host.py:167 +#: terminal/serializers/storage.py:197 +msgid "Hosts" +msgstr "" + +#: terminal/models/applet/applet.py:93 +#: terminal/models/virtualapp/virtualapp.py:66 +msgid "Applet pkg not valid, Missing file {}" +msgstr "" + +#: terminal/models/applet/applet.py:112 +msgid "Load platform.yml failed: {}" +msgstr "" + +#: terminal/models/applet/applet.py:115 +msgid "Only support custom platform" +msgstr "" + +#: terminal/models/applet/applet.py:120 +msgid "Missing type in platform.yml" +msgstr "" + +#: terminal/models/applet/applet.py:319 terminal/models/applet/host.py:36 +#: terminal/models/applet/host.py:138 +msgid "Hosting" +msgstr "" + +#: terminal/models/applet/host.py:18 terminal/serializers/applet_host.py:69 +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/component/endpoint.py:15 +msgid "HTTPS port" +msgstr "" + +#: terminal/models/component/endpoint.py:16 +msgid "HTTP port" +msgstr "" + +#: terminal/models/component/endpoint.py:17 +msgid "SSH port" +msgstr "" + +#: terminal/models/component/endpoint.py:18 +msgid "RDP port" +msgstr "" + +#: terminal/models/component/endpoint.py:19 +msgid "MySQL port" +msgstr "" + +#: terminal/models/component/endpoint.py:20 +msgid "MariaDB port" +msgstr "" + +#: terminal/models/component/endpoint.py:21 +msgid "PostgreSQL port" +msgstr "" + +#: terminal/models/component/endpoint.py:22 +msgid "Redis port" +msgstr "" + +#: terminal/models/component/endpoint.py:23 +msgid "SQLServer port" +msgstr "" + +#: terminal/models/component/endpoint.py:30 +#: terminal/models/component/endpoint.py:117 +#: terminal/serializers/endpoint.py:73 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:123 +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:28 +msgid "Default storage" +msgstr "" + +#: terminal/models/component/storage.py:140 +#: terminal/models/component/terminal.py:91 +msgid "Command storage" +msgstr "" + +#: terminal/models/component/storage.py:204 +#: 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:177 +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:68 +msgid "Command amount" +msgstr "" + +#: terminal/models/session/session.py:49 terminal/serializers/session.py:30 +msgid "Error reason" +msgstr "" + +#: terminal/models/session/session.py:290 +msgid "Session record" +msgstr "" + +#: terminal/models/session/session.py:292 +msgid "Can monitor session" +msgstr "" + +#: terminal/models/session/session.py:293 +msgid "Can share session" +msgstr "" + +#: terminal/models/session/session.py:294 +msgid "Can terminate session" +msgstr "" + +#: terminal/models/session/session.py:295 +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:261 +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/virtualapp.py:32 +msgid "Providers" +msgstr "" + +#: terminal/models/virtualapp/virtualapp.py:94 +#: terminal/serializers/virtualapp.py:34 +msgid "App Provider" +msgstr "" + +#: terminal/models/virtualapp/virtualapp.py:102 +msgid "Virtual app publication" +msgstr "" + +#: terminal/notifications.py:25 +msgid "Sessions" +msgstr "" + +#: terminal/notifications.py:72 +msgid "Command warning" +msgstr "" + +#: terminal/notifications.py:130 +msgid "Command reject" +msgstr "" + +#: terminal/notifications.py:157 terminal/notifications.py:206 +msgid "Level" +msgstr "" + +#: terminal/notifications.py:175 +msgid "Batch danger command alert" +msgstr "" + +#: terminal/notifications.py:224 +msgid "Command and replay storage" +msgstr "" + +#: terminal/notifications.py:225 +msgid "Connectivity alarm" +msgstr "" + +#: terminal/notifications.py:240 terminal/tasks.py:153 +msgid "Test failure: Account invalid" +msgstr "" + +#: terminal/notifications.py:250 +#: 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 Session" +msgstr "" + +#: terminal/serializers/applet_host.py:25 +msgid "Per Device" +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" +"
\n" +" eg: https://172.16.10.110 or https://dev.jumpserver.com\n" +" " +msgstr "" + +#: terminal/serializers/applet_host.py:46 terminal/serializers/storage.py:208 +msgid "Ignore Certificate Verification" +msgstr "" + +#: terminal/serializers/applet_host.py:47 +msgid "Existing RDS license" +msgstr "" + +#: terminal/serializers/applet_host.py:48 +msgid "RDS License Server" +msgstr "" + +#: terminal/serializers/applet_host.py:49 +msgid "RDS Licensing Mode" +msgstr "" + +#: terminal/serializers/applet_host.py:51 +msgid "RDS Single Session Per User" +msgstr "" + +#: terminal/serializers/applet_host.py:53 +msgid "RDS Max Disconnection Time (ms)" +msgstr "" + +#: terminal/serializers/applet_host.py:55 +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:60 +msgid "RDS Remote App Logoff Time Limit (ms)" +msgstr "" + +#: terminal/serializers/applet_host.py:62 +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:71 terminal/serializers/terminal.py:47 +#: terminal/serializers/virtualapp_provider.py:13 +msgid "Load status" +msgstr "" + +#: terminal/serializers/applet_host.py:85 +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:92 +msgid "The number of public accounts created automatically" +msgstr "" + +#: terminal/serializers/applet_host.py:95 +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:137 +msgid "Install applets" +msgstr "" + +#: terminal/serializers/applet_host.py:167 +msgid "Host ID" +msgstr "" + +#: terminal/serializers/applet_host.py:168 +msgid "Applet ID" +msgstr "" + +#: terminal/serializers/command.py:19 +msgid "Session 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:72 +msgid "Account " +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:64 +msgid "" +"The assets within this IP range, the following endpoint will be used for the " +"connection" +msgstr "" + +#: terminal/serializers/endpoint.py:65 +msgid "" +"If asset IP addresses under different endpoints conflict, use asset labels" +msgstr "" + +#: terminal/serializers/endpoint.py:69 +msgid "Asset IP" +msgstr "" + +#: terminal/serializers/session.py:25 terminal/serializers/session.py:53 +msgid "Can replay" +msgstr "" + +#: terminal/serializers/session.py:26 terminal/serializers/session.py:54 +msgid "Can join" +msgstr "" + +#: terminal/serializers/session.py:27 terminal/serializers/session.py:57 +msgid "Can terminate" +msgstr "" + +#: terminal/serializers/session.py:47 +msgid "Duration" +msgstr "" + +#: terminal/serializers/session.py:49 +msgid "User ID" +msgstr "" + +#: terminal/serializers/session.py:50 +msgid "Asset ID" +msgstr "" + +#: terminal/serializers/session.py:51 +msgid "Login from display" +msgstr "" + +#: terminal/serializers/session.py:58 +msgid "Terminal display" +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 +#: xpack/plugins/cloud/serializers/account_attrs.py:17 +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/models.py:258 +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:146 users/models/user.py:845 +#: xpack/plugins/cloud/serializers/account_attrs.py:213 +msgid "Private key" +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:200 +msgid "Index by date" +msgstr "" + +#: terminal/serializers/storage.py:201 +msgid "Whether to create an index by date" +msgstr "" + +#: terminal/serializers/storage.py:204 +msgid "Index" +msgstr "" + +#: terminal/serializers/storage.py:206 +msgid "Doc type" +msgstr "" + +#: terminal/serializers/task.py:9 +msgid "Session id" +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:31 +msgid "Periodic delete terminal status" +msgstr "" + +#: terminal/tasks.py:39 +msgid "Clean orphan session" +msgstr "" + +#: terminal/tasks.py:87 +msgid "Run applet host deployment" +msgstr "" + +#: terminal/tasks.py:97 +msgid "Install applet" +msgstr "" + +#: terminal/tasks.py:108 +msgid "Uninstall applet" +msgstr "" + +#: terminal/tasks.py:119 +msgid "Generate applet host accounts" +msgstr "" + +#: terminal/tasks.py:131 +msgid "Check command replay storage connectivity" +msgstr "" + +#: terminal/templates/terminal/_msg_command_alert.html:10 +msgid "view" +msgstr "" + +#: terminal/utils/db_port_mapper.py:85 +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:113 +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:115 +msgid "All available port count: {}, Already use port count: {}" +msgstr "" + +#: tickets/api/ticket.py:88 tickets/models/ticket/general.py:286 +msgid "Applicant" +msgstr "" + +#: tickets/apps.py:7 +msgid "Tickets" +msgstr "" + +#: 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 "Org admin" +msgstr "" + +#: tickets/const.py:55 +msgid "Custom user" +msgstr "" + +#: tickets/const.py:56 +msgid "Super admin" +msgstr "" + +#: tickets/const.py:57 +msgid "Super admin and org admin" +msgstr "" + +#: tickets/const.py:61 +msgid "All assets" +msgstr "" + +#: tickets/const.py:62 +msgid "Permed assets" +msgstr "" + +#: tickets/const.py:63 +msgid "Permed valid assets" +msgstr "" + +#: tickets/errors.py:9 +msgid "Ticket already closed" +msgstr "" + +#: tickets/handlers/apply_asset.py:36 +msgid "" +"Created by the ticket ticket title: {} ticket applicant: {} ticket " +"processor: {} ticket ID: {}" +msgstr "" + +#: tickets/handlers/base.py:85 +msgid "Change field" +msgstr "" + +#: tickets/handlers/base.py:85 +msgid "Before change" +msgstr "" + +#: tickets/handlers/base.py:85 +msgid "After change" +msgstr "" + +#: tickets/handlers/base.py:97 +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:19 tickets/models/flow.py:61 +#: tickets/models/ticket/general.py:42 +msgid "Approve level" +msgstr "" + +#: tickets/models/flow.py:24 tickets/serializers/flow.py:17 +msgid "Approve strategy" +msgstr "" + +#: tickets/models/flow.py:29 tickets/serializers/flow.py:19 +msgid "Assignees" +msgstr "" + +#: tickets/models/flow.py:33 +msgid "Ticket flow approval rule" +msgstr "" + +#: tickets/models/flow.py:66 +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:77 +msgid "Ticket step" +msgstr "" + +#: tickets/models/ticket/general.py:95 +msgid "Ticket assignee" +msgstr "" + +#: tickets/models/ticket/general.py:270 +msgid "Title" +msgstr "" + +#: tickets/models/ticket/general.py:290 +msgid "TicketFlow" +msgstr "" + +#: tickets/models/ticket/general.py:293 +msgid "Approval step" +msgstr "" + +#: tickets/models/ticket/general.py:296 +msgid "Relation snapshot" +msgstr "" + +#: tickets/models/ticket/general.py:399 +msgid "Please try again" +msgstr "" + +#: tickets/models/ticket/general.py:475 +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:12 +msgid "Login datetime" +msgstr "" + +#: tickets/models/ticket/login_confirm.py:15 +msgid "Apply Login Ticket" +msgstr "" + +#: tickets/notifications.py:63 +msgid "Ticket basic info" +msgstr "" + +#: tickets/notifications.py:64 +msgid "Ticket applied info" +msgstr "" + +#: tickets/notifications.py:105 +msgid "Your has a new ticket, applicant - {}" +msgstr "" + +#: tickets/notifications.py:109 +msgid "{}: New Ticket - {} ({})" +msgstr "" + +#: tickets/notifications.py:155 +msgid "Your ticket has been processed, processor - {}" +msgstr "" + +#: tickets/notifications.py:159 +msgid "Ticket has processed - {} ({})" +msgstr "" + +#: tickets/serializers/flow.py:20 +msgid "Assignees display" +msgstr "" + +#: tickets/serializers/flow.py:46 +msgid "Please select the Assignees" +msgstr "" + +#: tickets/serializers/flow.py:74 +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:155 +msgid "Can not invite self" +msgstr "" + +#: users/api/user.py:208 +msgid "Could not reset self otp, use profile reset instead" +msgstr "" + +#: 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:10 +msgid "MFA not enabled" +msgstr "" + +#: users/exceptions.py:20 +msgid "Unable to delete all users" +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:75 +msgid "Finish" +msgstr "" + +#: users/forms/profile.py:82 +msgid "New password" +msgstr "" + +#: users/forms/profile.py:87 +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/forms/profile.py:161 users/serializers/profile.py:76 +#: users/serializers/profile.py:164 users/serializers/profile.py:191 +msgid "Not a valid ssh public key" +msgstr "" + +#: users/forms/profile.py:172 users/models/user.py:848 +#: xpack/plugins/cloud/serializers/account_attrs.py:210 +msgid "Public key" +msgstr "" + +#: users/models/preference.py:38 users/serializers/preference/preference.py:19 +msgid "Preference" +msgstr "" + +#: users/models/user.py:657 users/serializers/profile.py:94 +msgid "Force enable" +msgstr "" + +#: users/models/user.py:763 +msgid "Lark" +msgstr "" + +#: users/models/user.py:827 users/serializers/user.py:177 +msgid "Is service account" +msgstr "" + +#: users/models/user.py:829 +msgid "Avatar" +msgstr "" + +#: users/models/user.py:832 +msgid "Wechat" +msgstr "" + +#: users/models/user.py:835 users/serializers/user.py:113 +msgid "Phone" +msgstr "" + +#: users/models/user.py:841 +msgid "OTP secret key" +msgstr "" + +#: users/models/user.py:853 users/serializers/profile.py:128 +#: users/serializers/user.py:174 +msgid "Is first login" +msgstr "" + +#: users/models/user.py:863 +msgid "Date password last updated" +msgstr "" + +#: users/models/user.py:866 +msgid "Need update password" +msgstr "" + +#: users/models/user.py:868 +msgid "Date api key used" +msgstr "" + +#: users/models/user.py:1001 +msgid "Can not delete admin user" +msgstr "" + +#: users/models/user.py:1029 +msgid "Can invite user" +msgstr "" + +#: users/models/user.py:1030 +msgid "Can remove user" +msgstr "" + +#: users/models/user.py:1031 +msgid "Can match user" +msgstr "" + +#: users/models/user.py:1040 +msgid "Administrator" +msgstr "" + +#: users/models/user.py:1043 +msgid "Administrator is the super user of system" +msgstr "" + +#: users/models/user.py:1068 +msgid "User password history" +msgstr "" + +#: users/notifications.py:55 +#: users/templates/users/_msg_password_expire_reminder.html:17 +#: 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 +msgid "File name conflict resolution" +msgstr "" + +#: users/serializers/preference/koko.py:14 +msgid "Terminal theme name" +msgstr "" + +#: users/serializers/preference/lina.py:13 +msgid "New file encryption password" +msgstr "" + +#: users/serializers/preference/lina.py:18 +msgid "Confirm file encryption password" +msgstr "" + +#: users/serializers/preference/lina.py:31 users/serializers/profile.py:48 +msgid "The newly set password is inconsistent" +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 application connection method" +msgstr "" + +#: users/serializers/preference/luna.py:66 +msgid "Character terminal font size" +msgstr "" + +#: users/serializers/preference/luna.py:69 +msgid "Backspace as Ctrl+H" +msgstr "" + +#: users/serializers/preference/luna.py:72 +msgid "Right click quickly paste" +msgstr "" + +#: users/serializers/preference/luna.py:78 +msgid "Graphics" +msgstr "" + +#: users/serializers/preference/luna.py:79 +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:178 +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:46 +msgid "System roles" +msgstr "" + +#: users/serializers/user.py:50 +msgid "Org roles" +msgstr "" + +#: users/serializers/user.py:53 +msgid "Organizations and roles" +msgstr "" + +#: users/serializers/user.py:95 +msgid "Password strategy" +msgstr "" + +#: users/serializers/user.py:97 +msgid "MFA enabled" +msgstr "" + +#: users/serializers/user.py:99 +msgid "MFA force enabled" +msgstr "" + +#: users/serializers/user.py:101 +msgid "Login blocked" +msgstr "" + +#: users/serializers/user.py:104 users/serializers/user.py:183 +msgid "Is OTP bound" +msgstr "" + +#: users/serializers/user.py:105 +msgid "Super Administrator" +msgstr "" + +#: users/serializers/user.py:106 +msgid "Organization Administrator" +msgstr "" + +#: users/serializers/user.py:108 +msgid "Can public key authentication" +msgstr "" + +#: users/serializers/user.py:178 +msgid "Is org admin" +msgstr "" + +#: users/serializers/user.py:180 +msgid "Avatar url" +msgstr "" + +#: users/serializers/user.py:184 +msgid "MFA level" +msgstr "" + +#: users/serializers/user.py:310 +msgid "Select users" +msgstr "" + +#: users/serializers/user.py:311 +msgid "For security, only list several users" +msgstr "" + +#: users/serializers/user.py:344 +msgid "name not unique" +msgstr "" + +#: users/signal_handlers.py:33 +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:166 +msgid "Clean up expired user sessions" +msgstr "" + +#: users/tasks.py:25 +msgid "Check password expired" +msgstr "" + +#: users/tasks.py:39 +msgid "Periodic check password expired" +msgstr "" + +#: users/tasks.py:53 +msgid "Check user expired" +msgstr "" + +#: users/tasks.py:70 +msgid "Periodic check user expired" +msgstr "" + +#: users/tasks.py:84 +msgid "Check unused users" +msgstr "" + +#: users/tasks.py:123 +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:16 +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:101 +msgid "Send" +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:24 +msgid "Enable MFA" +msgstr "" + +#: users/templates/users/mfa_setting.html:30 +msgid "MFA force enable, cannot disable" +msgstr "" + +#: users/templates/users/mfa_setting.html:48 +msgid "MFA setting" +msgstr "" + +#: users/templates/users/mfa_setting.html:61 +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:51 +msgid "Very weak" +msgstr "" + +#: users/templates/users/reset_password.html:52 +msgid "Weak" +msgstr "" + +#: users/templates/users/reset_password.html:54 +msgid "Medium" +msgstr "" + +#: users/templates/users/reset_password.html:55 +msgid "Strong" +msgstr "" + +#: users/templates/users/reset_password.html:56 +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/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:7 +msgid "" +"The current task is not synchronized with unmatched policy assets, skipping" +msgstr "" + +#: xpack/plugins/cloud/api.py:60 +msgid "Test connection successful" +msgstr "" + +#: xpack/plugins/cloud/api.py:62 +msgid "Test connection failed: {}" +msgstr "" + +#: xpack/plugins/cloud/const.py:8 +msgid "Alibaba Cloud" +msgstr "" + +#: xpack/plugins/cloud/const.py:9 +msgid "AWS (International)" +msgstr "" + +#: 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:308 +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 +msgid "Unsync" +msgstr "" + +#: xpack/plugins/cloud/const.py:53 +msgid "New Sync" +msgstr "" + +#: xpack/plugins/cloud/const.py:54 +msgid "Synced" +msgstr "" + +#: xpack/plugins/cloud/const.py:55 +msgid "Released" +msgstr "" + +#: xpack/plugins/cloud/const.py:59 +msgid "And" +msgstr "" + +#: xpack/plugins/cloud/const.py:60 +msgid "Or" +msgstr "" + +#: xpack/plugins/cloud/manager.py:55 xpack/plugins/cloud/providers/gcp.py:64 +#: xpack/plugins/cloud/providers/huaweicloud.py:34 +msgid "Account unavailable" +msgstr "" + +#: xpack/plugins/cloud/meta.py:9 +msgid "Cloud center" +msgstr "" + +#: xpack/plugins/cloud/models.py:35 +msgid "Provider" +msgstr "" + +#: xpack/plugins/cloud/models.py:39 +msgid "Validity" +msgstr "" + +#: xpack/plugins/cloud/models.py:44 +msgid "Cloud account" +msgstr "" + +#: xpack/plugins/cloud/models.py:46 +msgid "Test cloud account" +msgstr "" + +#: xpack/plugins/cloud/models.py:89 xpack/plugins/cloud/serializers/task.py:159 +msgid "Regions" +msgstr "" + +#: xpack/plugins/cloud/models.py:92 +msgid "Hostname strategy" +msgstr "" + +#: xpack/plugins/cloud/models.py:97 xpack/plugins/cloud/serializers/task.py:162 +msgid "IP network segment group" +msgstr "" + +#: xpack/plugins/cloud/models.py:100 +#: xpack/plugins/cloud/serializers/task.py:167 +msgid "Sync IP type" +msgstr "" + +#: xpack/plugins/cloud/models.py:103 +#: xpack/plugins/cloud/serializers/task.py:185 +msgid "Always update" +msgstr "" + +#: xpack/plugins/cloud/models.py:105 +msgid "Fully synchronous" +msgstr "" + +#: xpack/plugins/cloud/models.py:106 +msgid "Release assets" +msgstr "" + +#: xpack/plugins/cloud/models.py:111 +msgid "Date last sync" +msgstr "" + +#: xpack/plugins/cloud/models.py:114 xpack/plugins/cloud/models.py:326 +#: xpack/plugins/cloud/models.py:350 +msgid "Strategy" +msgstr "" + +#: xpack/plugins/cloud/models.py:119 xpack/plugins/cloud/models.py:205 +msgid "Sync instance task" +msgstr "" + +#: xpack/plugins/cloud/models.py:216 xpack/plugins/cloud/models.py:268 +msgid "Date sync" +msgstr "" + +#: xpack/plugins/cloud/models.py:220 +msgid "Sync instance snapshot" +msgstr "" + +#: xpack/plugins/cloud/models.py:224 +msgid "Sync instance task execution" +msgstr "" + +#: xpack/plugins/cloud/models.py:248 +msgid "Sync task" +msgstr "" + +#: xpack/plugins/cloud/models.py:252 +msgid "Sync instance task history" +msgstr "" + +#: xpack/plugins/cloud/models.py:255 +msgid "Instance" +msgstr "" + +#: xpack/plugins/cloud/models.py:272 +msgid "Sync instance detail" +msgstr "" + +#: xpack/plugins/cloud/models.py:284 xpack/plugins/cloud/serializers/task.py:72 +msgid "Rule relation" +msgstr "" + +#: xpack/plugins/cloud/models.py:293 +msgid "Task strategy" +msgstr "" + +#: xpack/plugins/cloud/models.py:297 +msgid "Equal" +msgstr "" + +#: xpack/plugins/cloud/models.py:298 +msgid "Not Equal" +msgstr "" + +#: xpack/plugins/cloud/models.py:299 +msgid "In" +msgstr "" + +#: xpack/plugins/cloud/models.py:300 +msgid "Contains" +msgstr "" + +#: xpack/plugins/cloud/models.py:301 +msgid "Exclude" +msgstr "" + +#: xpack/plugins/cloud/models.py:302 +msgid "Startswith" +msgstr "" + +#: xpack/plugins/cloud/models.py:303 +msgid "Endswith" +msgstr "" + +#: xpack/plugins/cloud/models.py:309 +msgid "Instance platform" +msgstr "" + +#: xpack/plugins/cloud/models.py:310 +msgid "Instance address" +msgstr "" + +#: xpack/plugins/cloud/models.py:317 +msgid "Rule attr" +msgstr "" + +#: xpack/plugins/cloud/models.py:321 +msgid "Rule match" +msgstr "" + +#: xpack/plugins/cloud/models.py:323 +msgid "Rule value" +msgstr "" + +#: xpack/plugins/cloud/models.py:330 xpack/plugins/cloud/serializers/task.py:75 +msgid "Strategy rule" +msgstr "" + +#: xpack/plugins/cloud/models.py:345 +msgid "Action attr" +msgstr "" + +#: xpack/plugins/cloud/models.py:347 +msgid "Action value" +msgstr "" + +#: xpack/plugins/cloud/models.py:354 xpack/plugins/cloud/serializers/task.py:78 +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 +#: 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:58 +msgid "CN East-Suzhou" +msgstr "" + +#: xpack/plugins/cloud/providers/baiducloud.py:59 +#: xpack/plugins/cloud/providers/huaweicloud.py:54 +msgid "CN-Hong Kong" +msgstr "" + +#: xpack/plugins/cloud/providers/baiducloud.py:60 +msgid "CN Center-Wuhan" +msgstr "" + +#: xpack/plugins/cloud/providers/baiducloud.py:61 +msgid "CN North-Baoding" +msgstr "" + +#: xpack/plugins/cloud/providers/baiducloud.py:62 +#: xpack/plugins/cloud/providers/jdcloud.py:127 +msgid "CN East-Shanghai" +msgstr "" + +#: xpack/plugins/cloud/providers/baiducloud.py:63 +#: xpack/plugins/cloud/providers/huaweicloud.py:56 +msgid "AP-Singapore" +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/serializers/account.py:69 +msgid "Validity display" +msgstr "" + +#: xpack/plugins/cloud/serializers/account.py:70 +msgid "Provider display" +msgstr "" + +#: xpack/plugins/cloud/serializers/account_attrs.py:35 +msgid "Client ID" +msgstr "" + +#: xpack/plugins/cloud/serializers/account_attrs.py:41 +msgid "Tenant ID" +msgstr "" + +#: 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.
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:151 +msgid "" +"Only instances matching the IP range will be synced.
If the instance " +"contains multiple IP addresses, the first IP address that matches will be " +"used as the IP for the created asset.
The default value of * means sync " +"all instances and randomly match IP addresses.
Such as: 192.168.1.0/24, " +"10.1.1.1-10.1.1.20" +msgstr "" + +#: xpack/plugins/cloud/serializers/task.py:157 +msgid "History count" +msgstr "" + +#: xpack/plugins/cloud/serializers/task.py:158 +msgid "Instance count" +msgstr "" + +#: xpack/plugins/cloud/tasks.py:27 +msgid "Run sync instance task" +msgstr "" + +#: xpack/plugins/cloud/tasks.py:41 +msgid "Period clean sync instance task execution" +msgstr "" + +#: xpack/plugins/interface/api.py:52 +msgid "Restore default successfully." +msgstr "" + +#: xpack/plugins/interface/meta.py:9 +msgid "Interface settings" +msgstr "" + +#: xpack/plugins/interface/models.py:23 +msgid "Title of login page" +msgstr "" + +#: xpack/plugins/interface/models.py:27 +msgid "Image of login page" +msgstr "" + +#: xpack/plugins/interface/models.py:31 +msgid "Website icon" +msgstr "" + +#: xpack/plugins/interface/models.py:35 +msgid "Logo of management page" +msgstr "" + +#: xpack/plugins/interface/models.py:39 +msgid "Logo of logout page" +msgstr "" + +#: xpack/plugins/interface/models.py:41 +msgid "Theme" +msgstr "" + +#: xpack/plugins/interface/models.py:42 +msgid "Footer content" +msgstr "" + +#: xpack/plugins/interface/models.py:45 xpack/plugins/interface/models.py:86 +msgid "Interface setting" +msgstr "" + +#: xpack/plugins/license/api.py:52 +msgid "License import successfully" +msgstr "" + +#: xpack/plugins/license/api.py:53 +msgid "License is invalid" +msgstr "" + +#: xpack/plugins/license/meta.py:10 xpack/plugins/license/models.py:144 +msgid "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 "" diff --git a/apps/locale/en/LC_MESSAGES/djangojs.mo b/apps/locale/en/LC_MESSAGES/djangojs.mo new file mode 100644 index 000000000..74cd9420f --- /dev/null +++ b/apps/locale/en/LC_MESSAGES/djangojs.mo @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:375a5bd7b21f2ddd004a228ef1debcf81e32812a4392128e0acf184f3317428d +size 380 diff --git a/apps/locale/en/LC_MESSAGES/djangojs.po b/apps/locale/en/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..9dcb15c82 --- /dev/null +++ b/apps/locale/en/LC_MESSAGES/djangojs.po @@ -0,0 +1,103 @@ +# 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 , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-07-10 18:22+0800\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \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" +#: static/js/jumpserver.js:264 +msgid "Update is successful!" +msgstr "" + +#: static/js/jumpserver.js:266 +msgid "An unknown error occurred while updating.." +msgstr "" + +#: static/js/jumpserver.js:339 +msgid "Not found" +msgstr "" + +#: static/js/jumpserver.js:341 +msgid "Server error" +msgstr "" + +#: static/js/jumpserver.js:343 static/js/jumpserver.js:381 +#: static/js/jumpserver.js:383 +msgid "Error" +msgstr "" + +#: static/js/jumpserver.js:349 static/js/jumpserver.js:390 +msgid "Delete the success" +msgstr "" + +#: static/js/jumpserver.js:356 +msgid "Are you sure about deleting it?" +msgstr "" + +#: static/js/jumpserver.js:360 static/js/jumpserver.js:401 +msgid "Cancel" +msgstr "" + +#: static/js/jumpserver.js:362 static/js/jumpserver.js:403 +msgid "Confirm" +msgstr "" + +#: static/js/jumpserver.js:381 +msgid "" +"The organization contains undeleted information. Please try again after " +"deleting" +msgstr "" + +#: static/js/jumpserver.js:383 +msgid "" +"Do not perform this operation under this organization. Try again after " +"switching to another organization" +msgstr "" + +#: static/js/jumpserver.js:397 +msgid "" +"Please ensure that the following information in the organization has been " +"deleted" +msgstr "" + +#: static/js/jumpserver.js:398 +msgid "" +"User list、User group、Asset list、Domain list、Admin user、System user、" +"Labels、Asset permission" +msgstr "" + +#: static/js/jumpserver.js:647 +msgid "Unknown error occur" +msgstr "" + +#: static/js/jumpserver.js:899 +msgid "Password minimum length {N} bits" +msgstr "" + +#: static/js/jumpserver.js:900 +msgid "Must contain capital letters" +msgstr "" + +#: static/js/jumpserver.js:901 +msgid "Must contain lowercase letters" +msgstr "" + +#: static/js/jumpserver.js:902 +msgid "Must contain numeric characters" +msgstr "" + +#: static/js/jumpserver.js:903 +msgid "Must contain special characters" +msgstr "" diff --git a/apps/locale/ja/LC_MESSAGES/django.po b/apps/locale/ja/LC_MESSAGES/django.po index 8bc61a968..248d14638 100644 --- a/apps/locale/ja/LC_MESSAGES/django.po +++ b/apps/locale/ja/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-09 14:15+0800\n" +"POT-Creation-Date: 2024-07-10 18:14+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -264,8 +264,8 @@ msgstr "ユーザー %s がパスワードを閲覧/導き出しました" #: accounts/models/account.py:49 #: accounts/models/automations/gather_account.py:16 -#: accounts/serializers/account/account.py:213 -#: accounts/serializers/account/account.py:258 +#: accounts/serializers/account/account.py:216 +#: accounts/serializers/account/account.py:261 #: accounts/serializers/account/gathered_account.py:10 #: accounts/serializers/automations/change_secret.py:108 #: accounts/serializers/automations/change_secret.py:140 @@ -285,8 +285,8 @@ msgid "Asset" msgstr "資産" #: accounts/models/account.py:53 accounts/models/template.py:16 -#: accounts/serializers/account/account.py:220 -#: accounts/serializers/account/account.py:268 +#: accounts/serializers/account/account.py:223 +#: accounts/serializers/account/account.py:271 #: accounts/serializers/account/template.py:27 #: authentication/serializers/connect_token_secret.py:50 msgid "Su from" @@ -298,7 +298,7 @@ msgstr "から切り替え" msgid "Version" msgstr "バージョン" -#: accounts/models/account.py:57 accounts/serializers/account/account.py:215 +#: accounts/models/account.py:57 accounts/serializers/account/account.py:218 #: users/models/user.py:860 msgid "Source" msgstr "ソース" @@ -515,7 +515,7 @@ msgid "Status" msgstr "ステータス" #: accounts/models/automations/change_secret.py:47 -#: accounts/serializers/account/account.py:260 +#: accounts/serializers/account/account.py:263 #: accounts/templates/accounts/change_secret_failed_info.html:13 #: assets/const/automation.py:8 #: authentication/templates/authentication/passkey.html:173 @@ -591,7 +591,7 @@ msgid "Verify asset account" msgstr "アカウントの確認" #: accounts/models/base.py:37 accounts/models/base.py:67 -#: accounts/serializers/account/account.py:443 +#: accounts/serializers/account/account.py:446 #: accounts/serializers/account/base.py:17 #: accounts/serializers/automations/change_secret.py:47 #: authentication/serializers/connect_token_secret.py:42 @@ -773,7 +773,7 @@ msgstr "今すぐプッシュ" msgid "Exist policy" msgstr "アカウントの存在ポリシー" -#: accounts/serializers/account/account.py:193 applications/models.py:11 +#: accounts/serializers/account/account.py:196 applications/models.py:11 #: assets/models/label.py:21 assets/models/platform.py:95 #: assets/serializers/asset/common.py:125 assets/serializers/cagegory.py:12 #: assets/serializers/platform.py:140 assets/serializers/platform.py:229 @@ -782,7 +782,7 @@ msgstr "アカウントの存在ポリシー" msgid "Category" msgstr "カテゴリ" -#: accounts/serializers/account/account.py:194 +#: accounts/serializers/account/account.py:197 #: accounts/serializers/automations/base.py:55 acls/models/command_acl.py:24 #: acls/serializers/command_acl.py:19 applications/models.py:14 #: assets/models/_user.py:50 assets/models/automations/base.py:20 @@ -802,25 +802,25 @@ msgstr "カテゴリ" msgid "Type" msgstr "タイプ" -#: accounts/serializers/account/account.py:209 +#: accounts/serializers/account/account.py:212 msgid "Asset not found" msgstr "資産が存在しません" -#: accounts/serializers/account/account.py:249 +#: accounts/serializers/account/account.py:252 msgid "Has secret" msgstr "エスクローされたパスワード" -#: accounts/serializers/account/account.py:259 ops/models/celery.py:83 +#: accounts/serializers/account/account.py:262 ops/models/celery.py:83 #: tickets/models/comment.py:13 tickets/models/ticket/general.py:46 #: tickets/models/ticket/general.py:277 tickets/serializers/super_ticket.py:14 msgid "State" msgstr "状態" -#: accounts/serializers/account/account.py:261 +#: accounts/serializers/account/account.py:264 msgid "Changed" msgstr "編集済み" -#: accounts/serializers/account/account.py:271 +#: accounts/serializers/account/account.py:274 #: accounts/serializers/automations/base.py:22 acls/models/base.py:97 #: acls/templates/acls/asset_login_reminder.html:6 #: assets/models/automations/base.py:19 @@ -831,33 +831,33 @@ msgstr "編集済み" msgid "Assets" msgstr "資産" -#: accounts/serializers/account/account.py:326 +#: accounts/serializers/account/account.py:329 msgid "Account already exists" msgstr "アカウントはすでに存在しています" -#: accounts/serializers/account/account.py:376 +#: accounts/serializers/account/account.py:379 #, python-format msgid "Asset does not support this secret type: %s" msgstr "アセットはアカウント タイプをサポートしていません: %s" -#: accounts/serializers/account/account.py:408 +#: accounts/serializers/account/account.py:411 msgid "Account has exist" msgstr "アカウントはすでに存在しています" -#: accounts/serializers/account/account.py:438 +#: accounts/serializers/account/account.py:441 #: accounts/serializers/account/template.py:72 -#: assets/serializers/asset/common.py:385 +#: assets/serializers/asset/common.py:387 msgid "Spec info" msgstr "特別情報" -#: accounts/serializers/account/account.py:444 +#: accounts/serializers/account/account.py:447 #: 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 "ID" -#: accounts/serializers/account/account.py:454 acls/serializers/base.py:116 +#: accounts/serializers/account/account.py:457 acls/serializers/base.py:116 #: acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 #: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54 @@ -878,7 +878,7 @@ msgstr "ID" msgid "User" msgstr "ユーザー" -#: accounts/serializers/account/account.py:455 +#: accounts/serializers/account/account.py:458 #: authentication/templates/authentication/_access_key_modal.html:33 #: terminal/notifications.py:158 terminal/notifications.py:207 msgid "Date" @@ -1170,7 +1170,7 @@ 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:384 +#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:386 #: perms/serializers/user_permission.py:75 rbac/tree.py:35 msgid "Accounts" msgstr "アカウント" @@ -1390,7 +1390,7 @@ msgstr "ルートノード ({}) を削除できません。" msgid "Deletion failed and the node contains assets" msgstr "削除に失敗し、ノードにアセットが含まれています。" -#: assets/api/tree.py:49 assets/serializers/node.py:42 +#: assets/api/tree.py:48 assets/serializers/node.py:42 msgid "The same level node name cannot be the same" msgstr "同じレベルのノード名を同じにすることはできません。" @@ -1817,7 +1817,7 @@ msgstr "ドメイン" msgid "Node" msgstr "ノード" -#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:386 +#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:388 #: assets/serializers/asset/host.py:11 msgid "Gathered info" msgstr "資産ハードウェア情報の収集" @@ -2152,7 +2152,7 @@ msgid "Node path" msgstr "ノードパスです" #: assets/serializers/asset/common.py:148 -#: assets/serializers/asset/common.py:387 +#: assets/serializers/asset/common.py:389 msgid "Auto info" msgstr "自動情報" @@ -2720,11 +2720,11 @@ msgstr "仮パスワード" msgid "Passkey" msgstr "Passkey" -#: audits/tasks.py:118 +#: audits/tasks.py:119 msgid "Clean audits session task log" msgstr "資産監査セッションタスクログのクリーンアップ" -#: audits/tasks.py:131 +#: audits/tasks.py:133 msgid "Upload FTP file to external storage" msgstr "外部ストレージへのFTPファイルのアップロード" @@ -8396,7 +8396,7 @@ msgstr "" "管理者は「既存のユーザーのみログインを許可」をオンにしており、現在のユーザー" "はユーザーリストにありません。管理者に連絡してください。" -#: users/signal_handlers.py:167 +#: users/signal_handlers.py:166 msgid "Clean up expired user sessions" msgstr "期限切れのユーザー・セッションのパージ" diff --git a/apps/locale/ja/LC_MESSAGES/djangojs.mo b/apps/locale/ja/LC_MESSAGES/djangojs.mo index fe05f6a5d..9891afac3 100644 --- a/apps/locale/ja/LC_MESSAGES/djangojs.mo +++ b/apps/locale/ja/LC_MESSAGES/djangojs.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c4a4fa3abb21fea213011d50fd62455fb1ddf73538401dc8cd9c03f4f4bbc77 -size 3322 +oid sha256:76ecc817b74abdf4f274425444339c575b723c76800095733176f9b7dada052e +size 2465 diff --git a/apps/locale/ja/LC_MESSAGES/djangojs.po b/apps/locale/ja/LC_MESSAGES/djangojs.po index 482394a7b..20c1e1f13 100644 --- a/apps/locale/ja/LC_MESSAGES/djangojs.po +++ b/apps/locale/ja/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-03-22 15:29+0800\n" +"POT-Creation-Date: 2024-07-10 18:22+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,141 +18,134 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: static/js/jumpserver.js:260 +#: static/js/jumpserver.js:264 msgid "Update is successful!" msgstr "アップデートは成功しました!" -#: static/js/jumpserver.js:262 +#: static/js/jumpserver.js:266 msgid "An unknown error occurred while updating.." msgstr "更新中に不明なエラーが発生しました。" -#: static/js/jumpserver.js:333 +#: static/js/jumpserver.js:339 msgid "Not found" msgstr "見つかりません" -#: static/js/jumpserver.js:335 +#: static/js/jumpserver.js:341 msgid "Server error" msgstr "サーバーエラー" -#: static/js/jumpserver.js:337 static/js/jumpserver.js:375 -#: static/js/jumpserver.js:377 +#: static/js/jumpserver.js:343 static/js/jumpserver.js:381 +#: static/js/jumpserver.js:383 msgid "Error" msgstr "エラー" -#: static/js/jumpserver.js:343 static/js/jumpserver.js:384 +#: static/js/jumpserver.js:349 static/js/jumpserver.js:390 msgid "Delete the success" msgstr "成功を削除する" -#: static/js/jumpserver.js:350 +#: static/js/jumpserver.js:356 msgid "Are you sure about deleting it?" msgstr "削除してもよろしいですか?" -#: static/js/jumpserver.js:354 static/js/jumpserver.js:395 +#: static/js/jumpserver.js:360 static/js/jumpserver.js:401 msgid "Cancel" msgstr "キャンセル" -#: static/js/jumpserver.js:356 static/js/jumpserver.js:397 +#: static/js/jumpserver.js:362 static/js/jumpserver.js:403 msgid "Confirm" msgstr "確認" -#: static/js/jumpserver.js:375 +#: static/js/jumpserver.js:381 msgid "" "The organization contains undeleted information. Please try again after " "deleting" -msgstr "組織には削除されていない情報が含まれています。削除後にもう一度お試しください" +msgstr "" +"組織には削除されていない情報が含まれています。削除後にもう一度お試しください" -#: static/js/jumpserver.js:377 +#: static/js/jumpserver.js:383 msgid "" "Do not perform this operation under this organization. Try again after " "switching to another organization" -msgstr "この組織ではこの操作を実行しないでください。別の組織に切り替えた後にもう一度お試しください" +msgstr "" +"この組織ではこの操作を実行しないでください。別の組織に切り替えた後にもう一度" +"お試しください" -#: static/js/jumpserver.js:391 +#: static/js/jumpserver.js:397 msgid "" "Please ensure that the following information in the organization has been " "deleted" msgstr "組織内の次の情報が削除されていることを確認してください" -#: static/js/jumpserver.js:392 +#: static/js/jumpserver.js:398 msgid "" "User list、User group、Asset list、Domain list、Admin user、System user、" "Labels、Asset permission" -msgstr "ユーザーリスト、ユーザーグループ、資産リスト、ドメインリスト、管理ユーザー、システムユーザー、ラベル、資産権限" +msgstr "" +"ユーザーリスト、ユーザーグループ、資産リスト、ドメインリスト、管理ユーザー、" +"システムユーザー、ラベル、資産権限" -#: static/js/jumpserver.js:469 -msgid "Loading" -msgstr "読み込み中" - -#: static/js/jumpserver.js:470 -msgid "Search" -msgstr "検索" - -#: static/js/jumpserver.js:473 -#, javascript-format -msgid "Selected item %d" -msgstr "選択したアイテム % d" - -#: static/js/jumpserver.js:477 -msgid "Per page _MENU_" -msgstr "各ページ _MENU_" - -#: static/js/jumpserver.js:478 -msgid "" -"Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" -msgstr "アイテムの結果を表示します _START_ に着く _END_; 合計 _TOTAL_ エントリ" - -#: static/js/jumpserver.js:481 -msgid "No match" -msgstr "一致しません" - -#: static/js/jumpserver.js:482 -msgid "No record" -msgstr "記録なし" - -#: static/js/jumpserver.js:662 +#: static/js/jumpserver.js:647 msgid "Unknown error occur" msgstr "不明なエラーが発生" -#: static/js/jumpserver.js:915 +#: static/js/jumpserver.js:899 msgid "Password minimum length {N} bits" msgstr "最小パスワード長 {N} ビット" -#: static/js/jumpserver.js:916 +#: static/js/jumpserver.js:900 msgid "Must contain capital letters" msgstr "大文字を含める必要があります" -#: static/js/jumpserver.js:917 +#: static/js/jumpserver.js:901 msgid "Must contain lowercase letters" msgstr "小文字を含める必要があります" -#: static/js/jumpserver.js:918 +#: static/js/jumpserver.js:902 msgid "Must contain numeric characters" msgstr "数字を含める必要があります。" -#: static/js/jumpserver.js:919 +#: static/js/jumpserver.js:903 msgid "Must contain special characters" msgstr "特殊文字を含める必要があります" -#: static/js/jumpserver.js:1098 static/js/jumpserver.js:1122 -msgid "Export failed" -msgstr "エクスポートに失敗しました" +#~ msgid "Loading" +#~ msgstr "読み込み中" -#: static/js/jumpserver.js:1139 -msgid "Import Success" -msgstr "インポートの成功" +#~ msgid "Search" +#~ msgstr "検索" -#: static/js/jumpserver.js:1144 -msgid "Update Success" -msgstr "更新の成功" +#, javascript-format +#~ msgid "Selected item %d" +#~ msgstr "選択したアイテム % d" -#: static/js/jumpserver.js:1145 -msgid "Count" -msgstr "カウント" +#~ msgid "Per page _MENU_" +#~ msgstr "各ページ _MENU_" -#: static/js/jumpserver.js:1174 -msgid "Import failed" -msgstr "インポートに失敗しました" +#~ msgid "" +#~ "Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" +#~ msgstr "" +#~ "アイテムの結果を表示します _START_ に着く _END_; 合計 _TOTAL_ エントリ" -#: static/js/jumpserver.js:1179 -msgid "Update failed" -msgstr "更新に失敗しました" +#~ msgid "No match" +#~ msgstr "一致しません" + +#~ msgid "No record" +#~ msgstr "記録なし" + +#~ msgid "Export failed" +#~ msgstr "エクスポートに失敗しました" + +#~ msgid "Import Success" +#~ msgstr "インポートの成功" + +#~ msgid "Update Success" +#~ msgstr "更新の成功" + +#~ msgid "Count" +#~ msgstr "カウント" + +#~ msgid "Import failed" +#~ msgstr "インポートに失敗しました" + +#~ msgid "Update failed" +#~ msgstr "更新に失敗しました" diff --git a/apps/locale/zh/LC_MESSAGES/django.po b/apps/locale/zh/LC_MESSAGES/django.po index d789cd5df..076929055 100644 --- a/apps/locale/zh/LC_MESSAGES/django.po +++ b/apps/locale/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-09 14:15+0800\n" +"POT-Creation-Date: 2024-07-10 18:14+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -263,8 +263,8 @@ msgstr "用户 %s 查看/导出 了密码" #: accounts/models/account.py:49 #: accounts/models/automations/gather_account.py:16 -#: accounts/serializers/account/account.py:213 -#: accounts/serializers/account/account.py:258 +#: accounts/serializers/account/account.py:216 +#: accounts/serializers/account/account.py:261 #: accounts/serializers/account/gathered_account.py:10 #: accounts/serializers/automations/change_secret.py:108 #: accounts/serializers/automations/change_secret.py:140 @@ -284,8 +284,8 @@ msgid "Asset" msgstr "资产" #: accounts/models/account.py:53 accounts/models/template.py:16 -#: accounts/serializers/account/account.py:220 -#: accounts/serializers/account/account.py:268 +#: accounts/serializers/account/account.py:223 +#: accounts/serializers/account/account.py:271 #: accounts/serializers/account/template.py:27 #: authentication/serializers/connect_token_secret.py:50 msgid "Su from" @@ -297,7 +297,7 @@ msgstr "切换自" msgid "Version" msgstr "版本" -#: accounts/models/account.py:57 accounts/serializers/account/account.py:215 +#: accounts/models/account.py:57 accounts/serializers/account/account.py:218 #: users/models/user.py:860 msgid "Source" msgstr "来源" @@ -514,7 +514,7 @@ msgid "Status" msgstr "状态" #: accounts/models/automations/change_secret.py:47 -#: accounts/serializers/account/account.py:260 +#: accounts/serializers/account/account.py:263 #: accounts/templates/accounts/change_secret_failed_info.html:13 #: assets/const/automation.py:8 #: authentication/templates/authentication/passkey.html:173 @@ -590,7 +590,7 @@ msgid "Verify asset account" msgstr "账号验证" #: accounts/models/base.py:37 accounts/models/base.py:67 -#: accounts/serializers/account/account.py:443 +#: accounts/serializers/account/account.py:446 #: accounts/serializers/account/base.py:17 #: accounts/serializers/automations/change_secret.py:47 #: authentication/serializers/connect_token_secret.py:42 @@ -771,7 +771,7 @@ msgstr "立即推送" msgid "Exist policy" msgstr "账号存在策略" -#: accounts/serializers/account/account.py:193 applications/models.py:11 +#: accounts/serializers/account/account.py:196 applications/models.py:11 #: assets/models/label.py:21 assets/models/platform.py:95 #: assets/serializers/asset/common.py:125 assets/serializers/cagegory.py:12 #: assets/serializers/platform.py:140 assets/serializers/platform.py:229 @@ -780,7 +780,7 @@ msgstr "账号存在策略" msgid "Category" msgstr "类别" -#: accounts/serializers/account/account.py:194 +#: accounts/serializers/account/account.py:197 #: accounts/serializers/automations/base.py:55 acls/models/command_acl.py:24 #: acls/serializers/command_acl.py:19 applications/models.py:14 #: assets/models/_user.py:50 assets/models/automations/base.py:20 @@ -800,25 +800,25 @@ msgstr "类别" msgid "Type" msgstr "类型" -#: accounts/serializers/account/account.py:209 +#: accounts/serializers/account/account.py:212 msgid "Asset not found" msgstr "资产不存在" -#: accounts/serializers/account/account.py:249 +#: accounts/serializers/account/account.py:252 msgid "Has secret" msgstr "已托管密码" -#: accounts/serializers/account/account.py:259 ops/models/celery.py:83 +#: accounts/serializers/account/account.py:262 ops/models/celery.py:83 #: tickets/models/comment.py:13 tickets/models/ticket/general.py:46 #: tickets/models/ticket/general.py:277 tickets/serializers/super_ticket.py:14 msgid "State" msgstr "状态" -#: accounts/serializers/account/account.py:261 +#: accounts/serializers/account/account.py:264 msgid "Changed" msgstr "已修改" -#: accounts/serializers/account/account.py:271 +#: accounts/serializers/account/account.py:274 #: accounts/serializers/automations/base.py:22 acls/models/base.py:97 #: acls/templates/acls/asset_login_reminder.html:6 #: assets/models/automations/base.py:19 @@ -829,33 +829,33 @@ msgstr "已修改" msgid "Assets" msgstr "资产" -#: accounts/serializers/account/account.py:326 +#: accounts/serializers/account/account.py:329 msgid "Account already exists" msgstr "账号已存在" -#: accounts/serializers/account/account.py:376 +#: accounts/serializers/account/account.py:379 #, python-format msgid "Asset does not support this secret type: %s" msgstr "资产不支持账号类型: %s" -#: accounts/serializers/account/account.py:408 +#: accounts/serializers/account/account.py:411 msgid "Account has exist" msgstr "账号已存在" -#: accounts/serializers/account/account.py:438 +#: accounts/serializers/account/account.py:441 #: accounts/serializers/account/template.py:72 -#: assets/serializers/asset/common.py:385 +#: assets/serializers/asset/common.py:387 msgid "Spec info" msgstr "特殊信息" -#: accounts/serializers/account/account.py:444 +#: accounts/serializers/account/account.py:447 #: 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 "ID" -#: accounts/serializers/account/account.py:454 acls/serializers/base.py:116 +#: accounts/serializers/account/account.py:457 acls/serializers/base.py:116 #: acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 #: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54 @@ -876,7 +876,7 @@ msgstr "ID" msgid "User" msgstr "用户" -#: accounts/serializers/account/account.py:455 +#: accounts/serializers/account/account.py:458 #: authentication/templates/authentication/_access_key_modal.html:33 #: terminal/notifications.py:158 terminal/notifications.py:207 msgid "Date" @@ -1164,7 +1164,7 @@ 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:384 +#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:386 #: perms/serializers/user_permission.py:75 rbac/tree.py:35 msgid "Accounts" msgstr "账号管理" @@ -1380,7 +1380,7 @@ msgstr "不能删除根节点 ({})" msgid "Deletion failed and the node contains assets" msgstr "删除失败,节点包含资产" -#: assets/api/tree.py:49 assets/serializers/node.py:42 +#: assets/api/tree.py:48 assets/serializers/node.py:42 msgid "The same level node name cannot be the same" msgstr "同级别节点名字不能重复" @@ -1807,7 +1807,7 @@ msgstr "网域" msgid "Node" msgstr "节点" -#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:386 +#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:388 #: assets/serializers/asset/host.py:11 msgid "Gathered info" msgstr "收集资产硬件信息" @@ -2140,7 +2140,7 @@ msgid "Node path" msgstr "节点路径" #: assets/serializers/asset/common.py:148 -#: assets/serializers/asset/common.py:387 +#: assets/serializers/asset/common.py:389 msgid "Auto info" msgstr "自动化信息" @@ -2701,11 +2701,11 @@ msgstr "临时密码" msgid "Passkey" msgstr "Passkey" -#: audits/tasks.py:118 +#: audits/tasks.py:119 msgid "Clean audits session task log" msgstr "清理资产审计会话任务日志" -#: audits/tasks.py:131 +#: audits/tasks.py:133 msgid "Upload FTP file to external storage" msgstr "上传 FTP 文件到外部存储" @@ -8276,7 +8276,7 @@ msgid "" msgstr "" "管理员已开启'仅允许已存在用户登录',当前用户不在用户列表中,请联系管理员。" -#: users/signal_handlers.py:167 +#: users/signal_handlers.py:166 msgid "Clean up expired user sessions" msgstr "清除过期的用户会话" diff --git a/apps/locale/zh/LC_MESSAGES/djangojs.mo b/apps/locale/zh/LC_MESSAGES/djangojs.mo index 57f81568c..6c86c34ee 100644 --- a/apps/locale/zh/LC_MESSAGES/djangojs.mo +++ b/apps/locale/zh/LC_MESSAGES/djangojs.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:004adc99e5b3b3d42c1f1872d847d671f6bac2a3d6dd08148253c12c625c40de -size 2741 +oid sha256:3f88466c49c30dea2bf52cfbb04c902473d9b5cba77174944a0ec2a565e7efaf +size 1928 diff --git a/apps/locale/zh/LC_MESSAGES/djangojs.po b/apps/locale/zh/LC_MESSAGES/djangojs.po index deddcbe25..c7ccf5393 100644 --- a/apps/locale/zh/LC_MESSAGES/djangojs.po +++ b/apps/locale/zh/LC_MESSAGES/djangojs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-24 11:05+0800\n" +"POT-Creation-Date: 2024-07-10 18:22+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -16,58 +16,62 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: static/js/jumpserver.js:259 +#: static/js/jumpserver.js:264 msgid "Update is successful!" msgstr "更新成功" -#: static/js/jumpserver.js:261 +#: static/js/jumpserver.js:266 msgid "An unknown error occurred while updating.." msgstr "更新时发生未知错误" -#: static/js/jumpserver.js:324 static/js/jumpserver.js:362 -#: static/js/jumpserver.js:364 +#: static/js/jumpserver.js:339 +msgid "Not found" +msgstr "" + +#: static/js/jumpserver.js:341 +msgid "Server error" +msgstr "" + +#: static/js/jumpserver.js:343 static/js/jumpserver.js:381 +#: static/js/jumpserver.js:383 msgid "Error" msgstr "错误" -#: static/js/jumpserver.js:324 -msgid "Being used by the asset, please unbind the asset first." -msgstr "正在被资产使用中,请先解除资产绑定" - -#: static/js/jumpserver.js:330 static/js/jumpserver.js:371 +#: static/js/jumpserver.js:349 static/js/jumpserver.js:390 msgid "Delete the success" msgstr "删除成功" -#: static/js/jumpserver.js:337 +#: static/js/jumpserver.js:356 msgid "Are you sure about deleting it?" msgstr "你确定删除吗 ?" -#: static/js/jumpserver.js:341 static/js/jumpserver.js:382 +#: static/js/jumpserver.js:360 static/js/jumpserver.js:401 msgid "Cancel" msgstr "取消" -#: static/js/jumpserver.js:343 static/js/jumpserver.js:384 +#: static/js/jumpserver.js:362 static/js/jumpserver.js:403 msgid "Confirm" msgstr "确认" -#: static/js/jumpserver.js:362 +#: static/js/jumpserver.js:381 msgid "" "The organization contains undeleted information. Please try again after " "deleting" msgstr "组织中包含未删除信息,请删除后重试" -#: static/js/jumpserver.js:364 +#: static/js/jumpserver.js:383 msgid "" "Do not perform this operation under this organization. Try again after " "switching to another organization" msgstr "请勿在此组织下执行此操作,切换到其他组织后重试" -#: static/js/jumpserver.js:378 +#: static/js/jumpserver.js:397 msgid "" "Please ensure that the following information in the organization has been " "deleted" msgstr "请确保组织内的以下信息已删除" -#: static/js/jumpserver.js:379 +#: static/js/jumpserver.js:398 msgid "" "User list、User group、Asset list、Domain list、Admin user、System user、" "Labels、Asset permission" @@ -75,84 +79,70 @@ msgstr "" "用户列表、用户组、资产列表、网域列表、特权用户、系统用户、标签管理、资产授权" "规则" -#: static/js/jumpserver.js:416 -msgid "Loading" -msgstr "加载中" - -#: static/js/jumpserver.js:417 -msgid "Search" -msgstr "搜索" - -#: static/js/jumpserver.js:420 -#, javascript-format -msgid "Selected item %d" -msgstr "选中 %d 项" - -#: static/js/jumpserver.js:424 -msgid "Per page _MENU_" -msgstr "每页 _MENU_" - -#: static/js/jumpserver.js:425 -msgid "" -"Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" -msgstr "显示第 _START_ 至 _END_ 项结果; 总共 _TOTAL_ 项" - -#: static/js/jumpserver.js:428 -msgid "No match" -msgstr "没有匹配项" - -#: static/js/jumpserver.js:429 -msgid "No record" -msgstr "没有记录" - -#: static/js/jumpserver.js:582 +#: static/js/jumpserver.js:647 msgid "Unknown error occur" msgstr "出现未知错误" -#: static/js/jumpserver.js:838 +#: static/js/jumpserver.js:899 msgid "Password minimum length {N} bits" msgstr "密码最小长度 {N} 位" -#: static/js/jumpserver.js:839 +#: static/js/jumpserver.js:900 msgid "Must contain capital letters" msgstr "必须包含大写字母" -#: static/js/jumpserver.js:840 +#: static/js/jumpserver.js:901 msgid "Must contain lowercase letters" msgstr "必须包含小写字母" -#: static/js/jumpserver.js:841 +#: static/js/jumpserver.js:902 msgid "Must contain numeric characters" msgstr "必须包含数字字符" -#: static/js/jumpserver.js:842 +#: static/js/jumpserver.js:903 msgid "Must contain special characters" msgstr "必须包含特殊字符" -#: static/js/jumpserver.js:984 -msgid "Export failed" -msgstr "导出失败" +#~ msgid "Being used by the asset, please unbind the asset first." +#~ msgstr "正在被资产使用中,请先解除资产绑定" -#: static/js/jumpserver.js:1001 -msgid "Import Success" -msgstr "导入成功" +#~ msgid "Loading" +#~ msgstr "加载中" -#: static/js/jumpserver.js:1006 -msgid "Update Success" -msgstr "更新成功" +#~ msgid "Search" +#~ msgstr "搜索" -#: static/js/jumpserver.js:1007 -msgid "Count" -msgstr "数量" +#, javascript-format +#~ msgid "Selected item %d" +#~ msgstr "选中 %d 项" -#: static/js/jumpserver.js:1035 -msgid "Import failed" -msgstr "导入失败" +#~ msgid "Per page _MENU_" +#~ msgstr "每页 _MENU_" -#: static/js/jumpserver.js:1040 -msgid "Update failed" -msgstr "更新失败" +#~ msgid "" +#~ "Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" +#~ msgstr "显示第 _START_ 至 _END_ 项结果; 总共 _TOTAL_ 项" -#: static/js/plugins/moment/moment.min.js:6 -msgid "\n" -msgstr "" +#~ msgid "No match" +#~ msgstr "没有匹配项" + +#~ msgid "No record" +#~ msgstr "没有记录" + +#~ msgid "Export failed" +#~ msgstr "导出失败" + +#~ msgid "Import Success" +#~ msgstr "导入成功" + +#~ msgid "Update Success" +#~ msgstr "更新成功" + +#~ msgid "Count" +#~ msgstr "数量" + +#~ msgid "Import failed" +#~ msgstr "导入失败" + +#~ msgid "Update failed" +#~ msgstr "更新失败" diff --git a/apps/locale/zh_Hant/LC_MESSAGES/django.po b/apps/locale/zh_Hant/LC_MESSAGES/django.po index 109a948a7..2c148e010 100644 --- a/apps/locale/zh_Hant/LC_MESSAGES/django.po +++ b/apps/locale/zh_Hant/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-09 14:15+0800\n" +"POT-Creation-Date: 2024-07-10 18:14+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -265,8 +265,8 @@ msgstr "用戶 %s 查看/匯出 了密碼" #: accounts/models/account.py:49 #: accounts/models/automations/gather_account.py:16 -#: accounts/serializers/account/account.py:213 -#: accounts/serializers/account/account.py:258 +#: accounts/serializers/account/account.py:216 +#: accounts/serializers/account/account.py:261 #: accounts/serializers/account/gathered_account.py:10 #: accounts/serializers/automations/change_secret.py:108 #: accounts/serializers/automations/change_secret.py:140 @@ -286,8 +286,8 @@ msgid "Asset" msgstr "資產" #: accounts/models/account.py:53 accounts/models/template.py:16 -#: accounts/serializers/account/account.py:220 -#: accounts/serializers/account/account.py:268 +#: accounts/serializers/account/account.py:223 +#: accounts/serializers/account/account.py:271 #: accounts/serializers/account/template.py:27 #: authentication/serializers/connect_token_secret.py:50 msgid "Su from" @@ -299,7 +299,7 @@ msgstr "切換自" msgid "Version" msgstr "版本" -#: accounts/models/account.py:57 accounts/serializers/account/account.py:215 +#: accounts/models/account.py:57 accounts/serializers/account/account.py:218 #: users/models/user.py:860 msgid "Source" msgstr "來源" @@ -516,7 +516,7 @@ msgid "Status" msgstr "狀態" #: accounts/models/automations/change_secret.py:47 -#: accounts/serializers/account/account.py:260 +#: accounts/serializers/account/account.py:263 #: accounts/templates/accounts/change_secret_failed_info.html:13 #: assets/const/automation.py:8 #: authentication/templates/authentication/passkey.html:173 @@ -592,7 +592,7 @@ msgid "Verify asset account" msgstr "帳號驗證" #: accounts/models/base.py:37 accounts/models/base.py:67 -#: accounts/serializers/account/account.py:443 +#: accounts/serializers/account/account.py:446 #: accounts/serializers/account/base.py:17 #: accounts/serializers/automations/change_secret.py:47 #: authentication/serializers/connect_token_secret.py:42 @@ -773,7 +773,7 @@ msgstr "立即推送" msgid "Exist policy" msgstr "帳號存在策略" -#: accounts/serializers/account/account.py:193 applications/models.py:11 +#: accounts/serializers/account/account.py:196 applications/models.py:11 #: assets/models/label.py:21 assets/models/platform.py:95 #: assets/serializers/asset/common.py:125 assets/serializers/cagegory.py:12 #: assets/serializers/platform.py:140 assets/serializers/platform.py:229 @@ -782,7 +782,7 @@ msgstr "帳號存在策略" msgid "Category" msgstr "類別" -#: accounts/serializers/account/account.py:194 +#: accounts/serializers/account/account.py:197 #: accounts/serializers/automations/base.py:55 acls/models/command_acl.py:24 #: acls/serializers/command_acl.py:19 applications/models.py:14 #: assets/models/_user.py:50 assets/models/automations/base.py:20 @@ -802,25 +802,25 @@ msgstr "類別" msgid "Type" msgstr "類型" -#: accounts/serializers/account/account.py:209 +#: accounts/serializers/account/account.py:212 msgid "Asset not found" msgstr "資產不存在" -#: accounts/serializers/account/account.py:249 +#: accounts/serializers/account/account.py:252 msgid "Has secret" msgstr "已託管密碼" -#: accounts/serializers/account/account.py:259 ops/models/celery.py:83 +#: accounts/serializers/account/account.py:262 ops/models/celery.py:83 #: tickets/models/comment.py:13 tickets/models/ticket/general.py:46 #: tickets/models/ticket/general.py:277 tickets/serializers/super_ticket.py:14 msgid "State" msgstr "狀態" -#: accounts/serializers/account/account.py:261 +#: accounts/serializers/account/account.py:264 msgid "Changed" msgstr "已修改" -#: accounts/serializers/account/account.py:271 +#: accounts/serializers/account/account.py:274 #: accounts/serializers/automations/base.py:22 acls/models/base.py:97 #: acls/templates/acls/asset_login_reminder.html:6 #: assets/models/automations/base.py:19 @@ -831,33 +831,33 @@ msgstr "已修改" msgid "Assets" msgstr "資產" -#: accounts/serializers/account/account.py:326 +#: accounts/serializers/account/account.py:329 msgid "Account already exists" msgstr "帳號已存在" -#: accounts/serializers/account/account.py:376 +#: accounts/serializers/account/account.py:379 #, python-format msgid "Asset does not support this secret type: %s" msgstr "資產不支持帳號類型: %s" -#: accounts/serializers/account/account.py:408 +#: accounts/serializers/account/account.py:411 msgid "Account has exist" msgstr "帳號已存在" -#: accounts/serializers/account/account.py:438 +#: accounts/serializers/account/account.py:441 #: accounts/serializers/account/template.py:72 -#: assets/serializers/asset/common.py:385 +#: assets/serializers/asset/common.py:387 msgid "Spec info" msgstr "特殊資訊" -#: accounts/serializers/account/account.py:444 +#: accounts/serializers/account/account.py:447 #: 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 "ID" -#: accounts/serializers/account/account.py:454 acls/serializers/base.py:116 +#: accounts/serializers/account/account.py:457 acls/serializers/base.py:116 #: acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 #: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54 @@ -878,7 +878,7 @@ msgstr "ID" msgid "User" msgstr "用戶" -#: accounts/serializers/account/account.py:455 +#: accounts/serializers/account/account.py:458 #: authentication/templates/authentication/_access_key_modal.html:33 #: terminal/notifications.py:158 terminal/notifications.py:207 msgid "Date" @@ -1166,7 +1166,7 @@ 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:384 +#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:386 #: perms/serializers/user_permission.py:75 rbac/tree.py:35 msgid "Accounts" msgstr "帳號管理" @@ -1382,7 +1382,7 @@ msgstr "不能刪除根節點 ({})" msgid "Deletion failed and the node contains assets" msgstr "刪除失敗,節點包含資產" -#: assets/api/tree.py:49 assets/serializers/node.py:42 +#: assets/api/tree.py:48 assets/serializers/node.py:42 msgid "The same level node name cannot be the same" msgstr "同級別節點名字不能重複" @@ -1809,7 +1809,7 @@ msgstr "網域" msgid "Node" msgstr "節點" -#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:386 +#: assets/models/asset/common.py:167 assets/serializers/asset/common.py:388 #: assets/serializers/asset/host.py:11 msgid "Gathered info" msgstr "收集資產硬體資訊" @@ -2142,7 +2142,7 @@ msgid "Node path" msgstr "節點路徑" #: assets/serializers/asset/common.py:148 -#: assets/serializers/asset/common.py:387 +#: assets/serializers/asset/common.py:389 msgid "Auto info" msgstr "自動化資訊" @@ -2703,11 +2703,11 @@ msgstr "臨時密碼" msgid "Passkey" msgstr "Passkey" -#: audits/tasks.py:118 +#: audits/tasks.py:119 msgid "Clean audits session task log" msgstr "清理資產審計會話任務日誌" -#: audits/tasks.py:131 +#: audits/tasks.py:133 msgid "Upload FTP file to external storage" msgstr "上傳 FTP 文件到外部儲存" @@ -8277,7 +8277,7 @@ msgid "" msgstr "" "管理員已開啟'僅允許已存在用戶登錄',當前用戶不在用戶列表中,請聯絡管理員。" -#: users/signal_handlers.py:167 +#: users/signal_handlers.py:166 msgid "Clean up expired user sessions" msgstr "清除過期的用戶會話" diff --git a/apps/locale/zh_Hant/LC_MESSAGES/djangojs.mo b/apps/locale/zh_Hant/LC_MESSAGES/djangojs.mo index a7a02ede1..50c4f3af4 100644 --- a/apps/locale/zh_Hant/LC_MESSAGES/djangojs.mo +++ b/apps/locale/zh_Hant/LC_MESSAGES/djangojs.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc91c07e525f289e4277ec70a51438c10b694a4111f922bd4ee4b20f6e0f0cd0 -size 2832 +oid sha256:9dfbc2f7eec8bd3fe6cff35456eb5b1af743206d1962dff1870f348347ef8e54 +size 2019 diff --git a/apps/locale/zh_Hant/LC_MESSAGES/djangojs.po b/apps/locale/zh_Hant/LC_MESSAGES/djangojs.po index 934646143..4bfd663eb 100644 --- a/apps/locale/zh_Hant/LC_MESSAGES/djangojs.po +++ b/apps/locale/zh_Hant/LC_MESSAGES/djangojs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2019-09-24 11:05+0800\n" +"POT-Creation-Date: 2024-07-10 18:22+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -15,60 +15,65 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-ZhConverter: 繁化姬 dict-74c8d060-r1048 @ 2024/04/07 18:35:03 | https://zhconvert.org\n" +"X-ZhConverter: 繁化姬 dict-74c8d060-r1048 @ 2024/04/07 18:35:03 | https://" +"zhconvert.org\n" -#: static/js/jumpserver.js:259 +#: static/js/jumpserver.js:264 msgid "Update is successful!" msgstr "更新成功" -#: static/js/jumpserver.js:261 +#: static/js/jumpserver.js:266 msgid "An unknown error occurred while updating.." msgstr "更新時發生未知錯誤" -#: static/js/jumpserver.js:324 static/js/jumpserver.js:362 -#: static/js/jumpserver.js:364 +#: static/js/jumpserver.js:339 +msgid "Not found" +msgstr "" + +#: static/js/jumpserver.js:341 +msgid "Server error" +msgstr "" + +#: static/js/jumpserver.js:343 static/js/jumpserver.js:381 +#: static/js/jumpserver.js:383 msgid "Error" msgstr "錯誤" -#: static/js/jumpserver.js:324 -msgid "Being used by the asset, please unbind the asset first." -msgstr "正在被資產使用中,請先解除資產綁定" - -#: static/js/jumpserver.js:330 static/js/jumpserver.js:371 +#: static/js/jumpserver.js:349 static/js/jumpserver.js:390 msgid "Delete the success" msgstr "刪除成功" -#: static/js/jumpserver.js:337 +#: static/js/jumpserver.js:356 msgid "Are you sure about deleting it?" msgstr "你確定刪除嗎 ?" -#: static/js/jumpserver.js:341 static/js/jumpserver.js:382 +#: static/js/jumpserver.js:360 static/js/jumpserver.js:401 msgid "Cancel" msgstr "取消" -#: static/js/jumpserver.js:343 static/js/jumpserver.js:384 +#: static/js/jumpserver.js:362 static/js/jumpserver.js:403 msgid "Confirm" msgstr "確認" -#: static/js/jumpserver.js:362 +#: static/js/jumpserver.js:381 msgid "" "The organization contains undeleted information. Please try again after " "deleting" msgstr "組織中包含未刪除資訊,請刪除後重試" -#: static/js/jumpserver.js:364 +#: static/js/jumpserver.js:383 msgid "" "Do not perform this operation under this organization. Try again after " "switching to another organization" msgstr "請勿在此組織下執行此操作,切換到其他組織後重試" -#: static/js/jumpserver.js:378 +#: static/js/jumpserver.js:397 msgid "" "Please ensure that the following information in the organization has been " "deleted" msgstr "請確保組織內的以下資訊已刪除" -#: static/js/jumpserver.js:379 +#: static/js/jumpserver.js:398 msgid "" "User list、User group、Asset list、Domain list、Admin user、System user、" "Labels、Asset permission" @@ -76,84 +81,70 @@ msgstr "" "用戶列表、用戶組、資產列表、網域列表、特權用戶、系統用戶、標籤管理、資產授權" "規則" -#: static/js/jumpserver.js:416 -msgid "Loading" -msgstr "載入中" - -#: static/js/jumpserver.js:417 -msgid "Search" -msgstr "搜索" - -#: static/js/jumpserver.js:420 -#, javascript-format -msgid "Selected item %d" -msgstr "選中 %d 項" - -#: static/js/jumpserver.js:424 -msgid "Per page _MENU_" -msgstr "每頁 _MENU_" - -#: static/js/jumpserver.js:425 -msgid "" -"Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" -msgstr "顯示第 _START_ 至 _END_ 項結果; 總共 _TOTAL_ 項" - -#: static/js/jumpserver.js:428 -msgid "No match" -msgstr "沒有匹配項" - -#: static/js/jumpserver.js:429 -msgid "No record" -msgstr "沒有記錄" - -#: static/js/jumpserver.js:582 +#: static/js/jumpserver.js:647 msgid "Unknown error occur" msgstr "出現未知錯誤" -#: static/js/jumpserver.js:838 +#: static/js/jumpserver.js:899 msgid "Password minimum length {N} bits" msgstr "密碼最小長度 {N} 位" -#: static/js/jumpserver.js:839 +#: static/js/jumpserver.js:900 msgid "Must contain capital letters" msgstr "必須包含大寫字母" -#: static/js/jumpserver.js:840 +#: static/js/jumpserver.js:901 msgid "Must contain lowercase letters" msgstr "必須包含小寫字母" -#: static/js/jumpserver.js:841 +#: static/js/jumpserver.js:902 msgid "Must contain numeric characters" msgstr "必須包含數字字元" -#: static/js/jumpserver.js:842 +#: static/js/jumpserver.js:903 msgid "Must contain special characters" msgstr "必須包含特殊字元" -#: static/js/jumpserver.js:984 -msgid "Export failed" -msgstr "匯出失敗" +#~ msgid "Being used by the asset, please unbind the asset first." +#~ msgstr "正在被資產使用中,請先解除資產綁定" -#: static/js/jumpserver.js:1001 -msgid "Import Success" -msgstr "匯入成功" +#~ msgid "Loading" +#~ msgstr "載入中" -#: static/js/jumpserver.js:1006 -msgid "Update Success" -msgstr "更新成功" +#~ msgid "Search" +#~ msgstr "搜索" -#: static/js/jumpserver.js:1007 -msgid "Count" -msgstr "數量" +#, javascript-format +#~ msgid "Selected item %d" +#~ msgstr "選中 %d 項" -#: static/js/jumpserver.js:1035 -msgid "Import failed" -msgstr "匯入失敗" +#~ msgid "Per page _MENU_" +#~ msgstr "每頁 _MENU_" -#: static/js/jumpserver.js:1040 -msgid "Update failed" -msgstr "更新失敗" +#~ msgid "" +#~ "Displays the results of items _START_ to _END_; A total of _TOTAL_ entries" +#~ msgstr "顯示第 _START_ 至 _END_ 項結果; 總共 _TOTAL_ 項" -#: static/js/plugins/moment/moment.min.js:6 -msgid "\n" -msgstr "" +#~ msgid "No match" +#~ msgstr "沒有匹配項" + +#~ msgid "No record" +#~ msgstr "沒有記錄" + +#~ msgid "Export failed" +#~ msgstr "匯出失敗" + +#~ msgid "Import Success" +#~ msgstr "匯入成功" + +#~ msgid "Update Success" +#~ msgstr "更新成功" + +#~ msgid "Count" +#~ msgstr "數量" + +#~ msgid "Import failed" +#~ msgstr "匯入失敗" + +#~ msgid "Update failed" +#~ msgstr "更新失敗"