From db9ee71ab383cd9289c0f381673de30aeeec2dcf Mon Sep 17 00:00:00 2001 From: fit2bot <68588906+fit2bot@users.noreply.github.com> Date: Thu, 19 Oct 2023 16:24:25 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E7=BF=BB=E8=AF=91=20(#11913)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: feng <1304903146@qq.com> --- apps/locale/ja/LC_MESSAGES/django.mo | 4 +- apps/locale/ja/LC_MESSAGES/django.po | 474 +++++++++--------- apps/locale/zh/LC_MESSAGES/django.mo | 4 +- apps/locale/zh/LC_MESSAGES/django.po | 474 +++++++++--------- apps/tickets/models/ticket/command_confirm.py | 3 + .../models/ticket/login_asset_confirm.py | 3 + apps/tickets/models/ticket/login_confirm.py | 3 + 7 files changed, 505 insertions(+), 460 deletions(-) diff --git a/apps/locale/ja/LC_MESSAGES/django.mo b/apps/locale/ja/LC_MESSAGES/django.mo index 50a9d1152..65199d7a6 100644 --- a/apps/locale/ja/LC_MESSAGES/django.mo +++ b/apps/locale/ja/LC_MESSAGES/django.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d7366743ab156daec72625cd241f76420c551c6a48330266a57e3d0b808d4164 -size 162675 +oid sha256:67b3061a082605d0862007d0deb03dba0477b3eac85d99faf5755ee44e7453eb +size 163187 diff --git a/apps/locale/ja/LC_MESSAGES/django.po b/apps/locale/ja/LC_MESSAGES/django.po index f3fa1ddb4..7eff444d0 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: 2023-10-13 15:03+0800\n" +"POT-Creation-Date: 2023-10-19 16:21+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,13 +18,13 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: accounts/api/automations/base.py:79 tickets/api/ticket.py:112 +#: accounts/api/automations/base.py:79 tickets/api/ticket.py:132 msgid "The parameter 'action' must be [{}]" msgstr "パラメータ 'action' は [{}] でなければなりません。" #: accounts/const/account.py:6 #: accounts/serializers/automations/change_secret.py:32 -#: assets/models/_user.py:24 audits/signal_handlers/login_log.py:37 +#: 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:32 #: authentication/templates/authentication/login.html:324 @@ -89,13 +89,13 @@ msgstr "テンプレート" msgid "Skip" msgstr "スキップ" -#: accounts/const/account.py:32 audits/const.py:24 rbac/tree.py:234 +#: accounts/const/account.py:32 audits/const.py:24 rbac/tree.py:236 #: templates/_csv_import_export.html:18 templates/_csv_update_modal.html:6 msgid "Update" msgstr "更新" #: accounts/const/account.py:33 -#: accounts/serializers/automations/change_secret.py:155 audits/const.py:60 +#: accounts/serializers/automations/change_secret.py:155 audits/const.py:62 #: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 #: ops/const.py:74 terminal/const.py:77 xpack/plugins/cloud/const.py:43 msgid "Failed" @@ -218,15 +218,15 @@ msgstr "ユーザー %s がパスワードを閲覧/導き出しました" #: accounts/models/account.py:48 #: accounts/models/automations/gather_account.py:16 -#: accounts/serializers/account/account.py:209 -#: accounts/serializers/account/account.py:254 +#: accounts/serializers/account/account.py:210 +#: accounts/serializers/account/account.py:255 #: accounts/serializers/account/gathered_account.py:10 #: accounts/serializers/automations/change_secret.py:111 #: accounts/serializers/automations/change_secret.py:131 #: acls/serializers/base.py:123 assets/models/asset/common.py:93 #: assets/models/asset/common.py:334 assets/models/cmd_filter.py:36 #: assets/serializers/domain.py:19 assets/serializers/label.py:27 -#: audits/models.py:56 authentication/models/connection_token.py:36 +#: audits/models.py:57 authentication/models/connection_token.py:36 #: perms/models/asset_permission.py:64 perms/serializers/permission.py:34 #: terminal/backends/command/models.py:17 terminal/models/session/session.py:31 #: terminal/notifications.py:155 terminal/serializers/command.py:17 @@ -238,8 +238,8 @@ msgid "Asset" msgstr "資産" #: accounts/models/account.py:52 accounts/models/template.py:15 -#: accounts/serializers/account/account.py:216 -#: accounts/serializers/account/account.py:264 +#: accounts/serializers/account/account.py:217 +#: accounts/serializers/account/account.py:265 #: accounts/serializers/account/template.py:24 #: authentication/serializers/connect_token_secret.py:49 msgid "Su from" @@ -251,7 +251,7 @@ msgstr "から切り替え" msgid "Version" msgstr "バージョン" -#: accounts/models/account.py:56 accounts/serializers/account/account.py:211 +#: accounts/models/account.py:56 accounts/serializers/account/account.py:212 #: users/models/user.py:837 msgid "Source" msgstr "ソース" @@ -265,7 +265,7 @@ msgstr "ソース ID" #: accounts/serializers/automations/change_secret.py:132 #: acls/serializers/base.py:124 acls/templates/acls/asset_login_reminder.html:7 #: assets/serializers/asset/common.py:125 assets/serializers/gateway.py:28 -#: audits/models.py:57 authentication/api/connection_token.py:391 +#: audits/models.py:58 authentication/api/connection_token.py:406 #: ops/models/base.py:18 perms/models/asset_permission.py:70 #: perms/serializers/permission.py:39 terminal/backends/command/models.py:18 #: terminal/models/session/session.py:33 @@ -309,7 +309,7 @@ msgid "Account backup plan" msgstr "アカウントバックアップ計画" #: accounts/models/automations/backup_account.py:91 -#: assets/models/automations/base.py:115 audits/models.py:63 +#: assets/models/automations/base.py:115 audits/models.py:64 #: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:228 #: ops/templates/ops/celery_task_log.html:75 #: perms/models/asset_permission.py:72 terminal/models/applet/host.py:140 @@ -337,7 +337,7 @@ msgstr "アカウントのバックアップスナップショット" msgid "Trigger mode" msgstr "トリガーモード" -#: accounts/models/automations/backup_account.py:105 audits/models.py:201 +#: accounts/models/automations/backup_account.py:105 audits/models.py:202 #: terminal/models/session/sharing.py:125 xpack/plugins/cloud/models.py:205 msgid "Reason" msgstr "理由" @@ -423,7 +423,7 @@ msgid "Date finished" msgstr "終了日" #: accounts/models/automations/change_secret.py:44 -#: accounts/serializers/account/account.py:256 assets/const/automation.py:8 +#: accounts/serializers/account/account.py:257 assets/const/automation.py:8 #: authentication/templates/authentication/passkey.html:173 #: authentication/views/base.py:27 authentication/views/base.py:28 #: authentication/views/base.py:29 common/const/choices.py:20 @@ -447,7 +447,7 @@ msgstr "最終ログイン日" #: accounts/serializers/account/virtual.py:21 acls/serializers/base.py:19 #: acls/serializers/base.py:50 acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:23 -#: audits/models.py:186 authentication/forms.py:25 authentication/forms.py:27 +#: audits/models.py:187 authentication/forms.py:25 authentication/forms.py:27 #: authentication/models/temp_token.py:9 #: authentication/templates/authentication/_msg_different_city.html:9 #: authentication/templates/authentication/_msg_oauth_bind.html:9 @@ -480,7 +480,7 @@ 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:90 audits/serializers.py:84 +#: audits/models.py:91 audits/serializers.py:84 #: authentication/serializers/connect_token_secret.py:116 #: authentication/templates/authentication/_access_key_modal.html:34 msgid "Action" @@ -495,7 +495,7 @@ msgid "Verify asset account" msgstr "アカウントの確認" #: accounts/models/base.py:37 accounts/models/base.py:67 -#: accounts/serializers/account/account.py:436 +#: accounts/serializers/account/account.py:437 #: accounts/serializers/account/base.py:16 #: accounts/serializers/automations/change_secret.py:45 #: authentication/serializers/connect_token_secret.py:41 @@ -539,10 +539,11 @@ msgstr "パスワードルール" #: terminal/models/applet/applet.py:33 terminal/models/component/endpoint.py:12 #: terminal/models/component/endpoint.py:94 #: terminal/models/component/storage.py:26 terminal/models/component/task.py:13 -#: terminal/models/component/terminal.py:84 users/forms/profile.py:33 -#: users/models/group.py:13 users/models/preference.py:11 -#: users/models/user.py:792 xpack/plugins/cloud/models.py:32 -#: xpack/plugins/cloud/models.py:273 xpack/plugins/cloud/serializers/task.py:68 +#: terminal/models/component/terminal.py:84 tickets/api/ticket.py:87 +#: users/forms/profile.py:33 users/models/group.py:13 +#: users/models/preference.py:11 users/models/user.py:792 +#: xpack/plugins/cloud/models.py:32 xpack/plugins/cloud/models.py:273 +#: xpack/plugins/cloud/serializers/task.py:68 msgid "Name" msgstr "名前" @@ -661,7 +662,7 @@ msgstr "今すぐプッシュ" msgid "Exist policy" msgstr "アカウントの存在ポリシー" -#: accounts/serializers/account/account.py:189 applications/models.py:11 +#: accounts/serializers/account/account.py:190 applications/models.py:11 #: assets/models/label.py:21 assets/models/platform.py:89 #: assets/serializers/asset/common.py:121 assets/serializers/cagegory.py:8 #: assets/serializers/platform.py:133 assets/serializers/platform.py:229 @@ -670,9 +671,9 @@ msgstr "アカウントの存在ポリシー" msgid "Category" msgstr "カテゴリ" -#: accounts/serializers/account/account.py:190 +#: accounts/serializers/account/account.py:191 #: accounts/serializers/automations/base.py:54 acls/models/command_acl.py:24 -#: acls/serializers/command_acl.py:18 applications/models.py:14 +#: 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:90 #: assets/serializers/asset/common.py:122 assets/serializers/platform.py:113 @@ -690,59 +691,59 @@ msgstr "カテゴリ" msgid "Type" msgstr "タイプ" -#: accounts/serializers/account/account.py:205 +#: accounts/serializers/account/account.py:206 msgid "Asset not found" msgstr "資産が存在しません" -#: accounts/serializers/account/account.py:245 +#: accounts/serializers/account/account.py:246 msgid "Has secret" msgstr "エスクローされたパスワード" -#: accounts/serializers/account/account.py:255 ops/models/celery.py:60 +#: accounts/serializers/account/account.py:256 ops/models/celery.py:60 #: tickets/models/comment.py:13 tickets/models/ticket/general.py:45 #: tickets/models/ticket/general.py:279 tickets/serializers/super_ticket.py:14 #: tickets/serializers/ticket/ticket.py:21 msgid "State" msgstr "状態" -#: accounts/serializers/account/account.py:257 +#: accounts/serializers/account/account.py:258 msgid "Changed" msgstr "編集済み" -#: accounts/serializers/account/account.py:267 +#: accounts/serializers/account/account.py:268 #: 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:390 ops/models/base.py:17 +#: authentication/api/connection_token.py:405 ops/models/base.py:17 #: ops/models/job.py:139 ops/serializers/job.py:21 #: terminal/templates/terminal/_msg_command_execute_alert.html:16 msgid "Assets" msgstr "資産" -#: accounts/serializers/account/account.py:322 +#: accounts/serializers/account/account.py:323 msgid "Account already exists" msgstr "アカウントはすでに存在しています" -#: accounts/serializers/account/account.py:372 +#: accounts/serializers/account/account.py:373 #, python-format msgid "Asset does not support this secret type: %s" msgstr "アセットはアカウント タイプをサポートしていません: %s" -#: accounts/serializers/account/account.py:404 +#: accounts/serializers/account/account.py:405 msgid "Account has exist" msgstr "アカウントはすでに存在しています" -#: accounts/serializers/account/account.py:437 +#: accounts/serializers/account/account.py:438 #: authentication/serializers/connect_token_secret.py:156 #: authentication/templates/authentication/_access_key_modal.html:30 #: perms/models/perm_node.py:21 users/serializers/group.py:31 msgid "ID" msgstr "ID" -#: accounts/serializers/account/account.py:447 acls/serializers/base.py:116 -#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:52 -#: audits/models.py:88 audits/models.py:170 audits/models.py:268 +#: accounts/serializers/account/account.py:448 acls/serializers/base.py:116 +#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:53 +#: audits/models.py:89 audits/models.py:171 audits/models.py:268 #: audits/serializers.py:171 authentication/models/connection_token.py:32 #: authentication/models/sso_token.py:16 #: notifications/models/notification.py:12 @@ -759,7 +760,7 @@ msgstr "ID" msgid "User" msgstr "ユーザー" -#: accounts/serializers/account/account.py:448 +#: accounts/serializers/account/account.py:449 #: authentication/templates/authentication/_access_key_modal.html:33 #: terminal/notifications.py:158 terminal/notifications.py:207 msgid "Date" @@ -791,7 +792,7 @@ msgid "Key password" msgstr "キーパスワード" #: accounts/serializers/account/base.py:78 -#: assets/serializers/asset/common.py:338 +#: assets/serializers/asset/common.py:378 msgid "Spec info" msgstr "特別情報" @@ -842,7 +843,7 @@ msgstr "关联平台,可以配置推送参数,如果不关联,则使用默 #: assets/models/group.py:20 common/db/models.py:36 ops/models/adhoc.py:26 #: ops/models/job.py:145 ops/models/playbook.py:31 rbac/models/role.py:37 #: settings/models.py:37 terminal/models/applet/applet.py:45 -#: terminal/models/applet/applet.py:302 terminal/models/applet/host.py:142 +#: terminal/models/applet/applet.py:304 terminal/models/applet/host.py:142 #: terminal/models/component/endpoint.py:24 #: terminal/models/component/endpoint.py:104 #: terminal/models/session/session.py:46 tickets/models/comment.py:32 @@ -896,11 +897,11 @@ msgstr "* パスワードの長さの範囲6-30ビット" msgid "Automation task execution" msgstr "自動タスク実行履歴" -#: accounts/serializers/automations/change_secret.py:154 audits/const.py:59 -#: audits/models.py:62 audits/signal_handlers/activity_log.py:33 +#: accounts/serializers/automations/change_secret.py:154 audits/const.py:61 +#: audits/models.py:63 audits/signal_handlers/activity_log.py:33 #: common/const/choices.py:18 ops/const.py:72 ops/serializers/celery.py:40 #: terminal/const.py:76 terminal/models/session/sharing.py:121 -#: tickets/views/approve.py:119 +#: tickets/views/approve.py:117 msgid "Success" msgstr "成功" @@ -975,16 +976,16 @@ msgstr "秘密鍵が無効またはpassphraseエラー" msgid "Acls" msgstr "Acls" -#: acls/const.py:6 audits/const.py:33 terminal/const.py:11 tickets/const.py:45 -#: tickets/templates/tickets/approve_check_password.html:49 +#: acls/const.py:6 audits/const.py:36 terminal/const.py:11 tickets/const.py:45 +#: tickets/templates/tickets/approve_check_password.html:48 msgid "Reject" msgstr "拒否" -#: acls/const.py:7 audits/const.py:34 terminal/const.py:9 +#: acls/const.py:7 audits/const.py:33 terminal/const.py:9 msgid "Accept" msgstr "受け入れられる" -#: acls/const.py:8 audits/const.py:35 +#: acls/const.py:8 audits/const.py:34 msgid "Review" msgstr "レビュー担当者" @@ -992,7 +993,7 @@ msgstr "レビュー担当者" msgid "Warning" msgstr "警告" -#: acls/const.py:10 audits/const.py:36 notifications/apps.py:7 +#: acls/const.py:10 audits/const.py:35 notifications/apps.py:7 msgid "Notifications" msgstr "通知" @@ -1026,7 +1027,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:337 +#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:377 #: rbac/tree.py:35 msgid "Accounts" msgstr "アカウント" @@ -1058,8 +1059,8 @@ msgstr "1行1コマンド" msgid "Ignore case" msgstr "家を無視する" -#: acls/models/command_acl.py:33 acls/models/command_acl.py:96 -#: acls/serializers/command_acl.py:28 +#: acls/models/command_acl.py:33 acls/models/command_acl.py:97 +#: acls/serializers/command_acl.py:29 #: authentication/serializers/connect_token_secret.py:85 #: terminal/templates/terminal/_msg_command_warning.html:14 msgid "Command group" @@ -1069,12 +1070,12 @@ msgstr "コマンドグループ" msgid "The generated regular expression is incorrect: {}" msgstr "生成された正規表現が正しくありません: {}" -#: acls/models/command_acl.py:100 +#: acls/models/command_acl.py:103 #: terminal/templates/terminal/_msg_command_warning.html:12 msgid "Command acl" msgstr "コマンドフィルタリング" -#: acls/models/command_acl.py:109 tickets/const.py:11 +#: acls/models/command_acl.py:112 tickets/const.py:11 msgid "Command confirm" msgstr "コマンドの確認" @@ -1189,15 +1190,15 @@ msgstr "" msgid "Thank you" msgstr "ありがとうございます。" -#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:192 -#: audits/models.py:261 +#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:193 +#: audits/models.py:262 #: 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:195 -#: audits/models.py:262 audits/serializers.py:65 +#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:196 +#: audits/models.py:263 audits/serializers.py:65 msgid "User agent" msgstr "ユーザーエージェント" @@ -1250,7 +1251,7 @@ msgstr "ルートノード ({}) を削除できません。" msgid "Deletion failed and the node contains assets" msgstr "削除に失敗し、ノードにアセットが含まれています。" -#: assets/api/tree.py:49 assets/serializers/node.py:41 +#: assets/api/tree.py:49 assets/serializers/node.py:42 msgid "The same level node name cannot be the same" msgstr "同じレベルのノード名を同じにすることはできません。" @@ -1281,7 +1282,7 @@ msgid "Unable to connect to port {port} on {address}" msgstr "{port} のポート {address} に接続できません" #: assets/automations/ping_gateway/manager.py:58 -#: authentication/middleware.py:92 xpack/plugins/cloud/providers/fc.py:47 +#: authentication/middleware.py:93 xpack/plugins/cloud/providers/fc.py:47 msgid "Authentication failed" msgstr "認証に失敗しました" @@ -1290,7 +1291,7 @@ msgstr "認証に失敗しました" msgid "Connect failed" msgstr "接続に失敗しました" -#: assets/const/automation.py:6 audits/const.py:6 audits/const.py:42 +#: assets/const/automation.py:6 audits/const.py:6 audits/const.py:44 #: 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" @@ -1312,19 +1313,19 @@ msgstr "テストゲートウェイ" msgid "Gather facts" msgstr "資産情報の収集" -#: assets/const/base.py:33 audits/const.py:53 +#: assets/const/base.py:32 audits/const.py:55 #: terminal/serializers/applet_host.py:32 msgid "Disabled" msgstr "無効" -#: assets/const/base.py:34 settings/serializers/basic.py:6 +#: assets/const/base.py:33 settings/serializers/basic.py:6 #: users/serializers/preference/koko.py:19 #: users/serializers/preference/lina.py:39 #: users/serializers/preference/luna.py:60 msgid "Basic" msgstr "基本" -#: assets/const/base.py:35 assets/const/protocol.py:252 +#: assets/const/base.py:34 assets/const/protocol.py:252 #: assets/models/asset/web.py:13 msgid "Script" msgstr "脚本" @@ -1346,7 +1347,7 @@ msgid "Cloud service" msgstr "クラウド サービス" #: assets/const/category.py:14 assets/models/asset/gpt.py:11 -#: assets/models/asset/web.py:16 audits/const.py:40 +#: assets/models/asset/web.py:16 audits/const.py:42 #: terminal/models/applet/applet.py:27 users/const.py:47 msgid "Web" msgstr "Web" @@ -1532,7 +1533,7 @@ msgstr "SSHパブリックキー" #: 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:265 common/db/models.py:34 ops/models/base.py:54 +#: audits/models.py:266 common/db/models.py:34 ops/models/base.py:54 #: ops/models/job.py:227 users/models/user.py:1024 msgid "Date created" msgstr "作成された日付" @@ -1647,7 +1648,7 @@ msgstr "ドメイン" msgid "Labels" msgstr "ラベル" -#: assets/models/asset/common.py:158 assets/serializers/asset/common.py:339 +#: assets/models/asset/common.py:158 assets/serializers/asset/common.py:379 #: assets/serializers/asset/host.py:11 msgid "Gathered info" msgstr "資産ハードウェア情報の収集" @@ -1709,9 +1710,9 @@ msgstr "自動化されたタスク" msgid "Asset automation task" msgstr "アセットの自動化タスク" -#: assets/models/automations/base.py:113 audits/models.py:206 +#: assets/models/automations/base.py:113 audits/models.py:207 #: audits/serializers.py:51 ops/models/base.py:49 ops/models/job.py:220 -#: terminal/models/applet/applet.py:301 terminal/models/applet/host.py:139 +#: terminal/models/applet/applet.py:303 terminal/models/applet/host.py:139 #: terminal/models/component/status.py:30 terminal/serializers/applet.py:18 #: terminal/serializers/applet_host.py:115 tickets/models/ticket/general.py:283 #: tickets/serializers/super_ticket.py:13 @@ -1857,7 +1858,7 @@ msgstr "開ける" msgid "Setting" msgstr "設定" -#: assets/models/platform.py:38 audits/const.py:54 +#: assets/models/platform.py:38 audits/const.py:56 #: authentication/backends/passkey/models.py:11 settings/models.py:36 #: terminal/serializers/applet_host.py:33 msgid "Enabled" @@ -1984,22 +1985,26 @@ msgid "Node path" msgstr "ノードパスです" #: assets/serializers/asset/common.py:145 -#: assets/serializers/asset/common.py:340 +#: assets/serializers/asset/common.py:380 msgid "Auto info" msgstr "自動情報" -#: assets/serializers/asset/common.py:236 +#: assets/serializers/asset/common.py:238 msgid "Platform not exist" msgstr "プラットフォームが存在しません" -#: assets/serializers/asset/common.py:272 +#: assets/serializers/asset/common.py:274 msgid "port out of range (0-65535)" msgstr "ポート番号が範囲外です (0-65535)" -#: assets/serializers/asset/common.py:279 +#: assets/serializers/asset/common.py:281 msgid "Protocol is required: {}" msgstr "プロトコルが必要です: {}" +#: assets/serializers/asset/common.py:309 +msgid "Invalid data" +msgstr "無効なデータ" + #: assets/serializers/asset/database.py:12 msgid "Default database" msgstr "デフォルト・データベース" @@ -2245,7 +2250,7 @@ msgstr "Rmdir" #: audits/const.py:14 audits/const.py:25 #: authentication/templates/authentication/_access_key_modal.html:65 -#: perms/const.py:17 rbac/tree.py:235 +#: perms/const.py:17 rbac/tree.py:237 msgid "Delete" msgstr "削除" @@ -2270,7 +2275,7 @@ msgstr "ダウンロード" msgid "Rename dir" msgstr "マップディレクトリ" -#: audits/const.py:23 rbac/tree.py:233 terminal/api/session/session.py:257 +#: audits/const.py:23 rbac/tree.py:235 terminal/api/session/session.py:257 #: terminal/templates/terminal/_msg_command_warning.html:18 #: terminal/templates/terminal/_msg_session_sharing.html:10 msgid "View" @@ -2278,7 +2283,7 @@ msgstr "表示" #: audits/const.py:26 #: authentication/templates/authentication/_access_key_modal.html:22 -#: rbac/tree.py:232 +#: rbac/tree.py:234 msgid "Create" msgstr "作成" @@ -2296,30 +2301,41 @@ msgstr "ログイン" msgid "Change password" msgstr "パスワードを変更する" -#: audits/const.py:41 settings/serializers/terminal.py:6 +#: audits/const.py:37 tickets/const.py:46 +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:44 +msgid "Close" +msgstr "閉じる" + +#: audits/const.py:43 settings/serializers/terminal.py:6 #: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:164 #: terminal/serializers/session.py:52 terminal/serializers/session.py:66 msgid "Terminal" msgstr "ターミナル" -#: audits/const.py:46 audits/models.py:130 +#: audits/const.py:48 audits/models.py:131 msgid "Operate log" msgstr "ログの操作" -#: audits/const.py:47 +#: audits/const.py:49 msgid "Session log" msgstr "セッションログ" -#: audits/const.py:48 +#: audits/const.py:50 msgid "Login log" msgstr "ログインログ" -#: audits/const.py:49 terminal/models/applet/host.py:143 +#: audits/const.py:51 terminal/models/applet/host.py:143 #: terminal/models/component/task.py:22 msgid "Task" msgstr "タスク" -#: audits/const.py:55 +#: audits/const.py:57 msgid "-" msgstr "-" @@ -2331,28 +2347,28 @@ msgstr "是" msgid "No" msgstr "否" -#: audits/models.py:45 +#: audits/models.py:46 msgid "Job audit log" msgstr "ジョブ監査ログ" -#: audits/models.py:54 audits/models.py:98 audits/models.py:173 +#: audits/models.py:55 audits/models.py:99 audits/models.py:174 #: terminal/models/session/session.py:38 terminal/models/session/sharing.py:113 msgid "Remote addr" msgstr "リモートaddr" -#: audits/models.py:59 audits/serializers.py:35 +#: audits/models.py:60 audits/serializers.py:35 msgid "Operate" msgstr "操作" -#: audits/models.py:61 +#: audits/models.py:62 msgid "Filename" msgstr "ファイル名" -#: audits/models.py:64 common/serializers/common.py:98 +#: audits/models.py:65 common/serializers/common.py:98 msgid "File" msgstr "書類" -#: audits/models.py:65 terminal/backends/command/models.py:21 +#: audits/models.py:66 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 @@ -2361,93 +2377,86 @@ msgstr "書類" msgid "Session" msgstr "セッション" -#: audits/models.py:68 +#: audits/models.py:69 msgid "File transfer log" msgstr "ファイル転送ログ" -#: audits/models.py:92 audits/serializers.py:86 +#: audits/models.py:93 audits/serializers.py:86 msgid "Resource Type" msgstr "リソースタイプ" -#: audits/models.py:93 audits/models.py:96 audits/models.py:142 +#: audits/models.py:94 audits/models.py:97 audits/models.py:143 #: audits/serializers.py:85 msgid "Resource" msgstr "リソース" -#: audits/models.py:99 audits/models.py:145 audits/models.py:175 +#: audits/models.py:100 audits/models.py:146 audits/models.py:176 #: terminal/serializers/command.py:75 msgid "Datetime" msgstr "時間" -#: audits/models.py:138 +#: audits/models.py:139 msgid "Activity type" msgstr "活動の種類" -#: audits/models.py:148 +#: audits/models.py:149 msgid "Detail" msgstr "詳細" -#: audits/models.py:151 +#: audits/models.py:152 msgid "Detail ID" msgstr "詳細 ID" -#: audits/models.py:155 +#: audits/models.py:156 msgid "Activity log" msgstr "活動記録" -#: audits/models.py:171 +#: audits/models.py:172 msgid "Change by" msgstr "による変更" -#: audits/models.py:181 +#: audits/models.py:182 msgid "Password change log" msgstr "パスワード変更ログ" -#: audits/models.py:188 audits/models.py:263 +#: audits/models.py:189 audits/models.py:264 msgid "Login type" msgstr "ログインタイプ" -#: audits/models.py:190 audits/models.py:259 +#: audits/models.py:191 audits/models.py:260 #: tickets/models/ticket/login_confirm.py:10 msgid "Login IP" msgstr "ログインIP" -#: audits/models.py:198 audits/serializers.py:49 +#: audits/models.py:199 audits/serializers.py:49 #: authentication/templates/authentication/_mfa_confirm_modal.html:14 #: users/forms/profile.py:65 users/models/user.py:815 #: users/serializers/profile.py:102 msgid "MFA" msgstr "MFA" -#: audits/models.py:208 +#: audits/models.py:209 msgid "Date login" msgstr "日付ログイン" -#: audits/models.py:210 audits/models.py:264 audits/serializers.py:67 -#: audits/serializers.py:183 +#: audits/models.py:211 audits/models.py:265 audits/serializers.py:67 +#: audits/serializers.py:184 msgid "Authentication backend" msgstr "認証バックエンド" -#: audits/models.py:254 +#: audits/models.py:255 msgid "User login log" msgstr "ユーザーログインログ" -#: audits/models.py:260 +#: audits/models.py:261 msgid "Session key" msgstr "セッションID" -#: audits/models.py:266 authentication/models/connection_token.py:47 -#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:74 -#: tickets/models/ticket/apply_application.py:31 -#: tickets/models/ticket/apply_asset.py:20 users/models/user.py:833 -msgid "Date expired" -msgstr "期限切れの日付" - -#: audits/models.py:292 +#: audits/models.py:300 msgid "User session" msgstr "ユーザーセッション" -#: audits/models.py:294 +#: audits/models.py:302 msgid "Offline ussr session" msgstr "ユーザー・セッションの下限" @@ -2460,6 +2469,13 @@ msgstr "理由表示" msgid "User %s %s this resource" msgstr "ユーザー %s %s が現在のリソースをサブスクライブしました。" +#: audits/serializers.py:172 authentication/models/connection_token.py:47 +#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:74 +#: tickets/models/ticket/apply_application.py:31 +#: tickets/models/ticket/apply_asset.py:20 users/models/user.py:833 +msgid "Date expired" +msgstr "期限切れの日付" + #: audits/signal_handlers/activity_log.py:26 #, python-format msgid "User %s use account %s login asset %s" @@ -2475,26 +2491,26 @@ msgstr "ユーザー %s はシステム %s にログインしています" msgid "User %s perform a task for this resource: %s" msgstr "ユーザー %s が現在のリソースでタスク (%s) を実行しました" -#: audits/signal_handlers/login_log.py:36 +#: audits/signal_handlers/login_log.py:33 msgid "SSH Key" msgstr "SSHキー" -#: audits/signal_handlers/login_log.py:38 settings/serializers/auth/sso.py:13 +#: audits/signal_handlers/login_log.py:35 settings/serializers/auth/sso.py:13 msgid "SSO" msgstr "SSO" -#: audits/signal_handlers/login_log.py:39 +#: audits/signal_handlers/login_log.py:36 msgid "Auth Token" msgstr "認証トークン" -#: audits/signal_handlers/login_log.py:40 authentication/notifications.py:73 -#: authentication/views/login.py:77 authentication/views/wecom.py:159 +#: audits/signal_handlers/login_log.py:37 authentication/notifications.py:73 +#: authentication/views/login.py:77 authentication/views/wecom.py:160 #: notifications/backends/__init__.py:11 settings/serializers/auth/wecom.py:10 #: users/models/user.py:745 users/models/user.py:847 msgid "WeCom" msgstr "企業微信" -#: audits/signal_handlers/login_log.py:41 authentication/views/feishu.py:122 +#: audits/signal_handlers/login_log.py:38 authentication/views/feishu.py:123 #: authentication/views/login.py:89 notifications/backends/__init__.py:14 #: settings/serializers/auth/feishu.py:10 #: settings/serializers/auth/feishu.py:13 users/models/user.py:747 @@ -2502,19 +2518,19 @@ msgstr "企業微信" msgid "FeiShu" msgstr "本を飛ばす" -#: audits/signal_handlers/login_log.py:42 authentication/views/dingtalk.py:159 +#: audits/signal_handlers/login_log.py:39 authentication/views/dingtalk.py:160 #: authentication/views/login.py:83 notifications/backends/__init__.py:12 #: settings/serializers/auth/dingtalk.py:10 users/models/user.py:746 #: users/models/user.py:848 msgid "DingTalk" msgstr "DingTalk" -#: audits/signal_handlers/login_log.py:43 +#: audits/signal_handlers/login_log.py:40 #: authentication/models/temp_token.py:16 msgid "Temporary token" msgstr "仮パスワード" -#: audits/signal_handlers/login_log.py:44 authentication/views/login.py:95 +#: audits/signal_handlers/login_log.py:41 authentication/views/login.py:95 #: settings/serializers/auth/passkey.py:8 msgid "Passkey" msgstr "" @@ -2527,11 +2543,11 @@ msgstr "監査セッション タスク ログのクリーンアップ" msgid "Upload FTP file to external storage" msgstr "外部ストレージへのFTPファイルのアップロード" -#: authentication/api/access_key.py:36 +#: authentication/api/access_key.py:39 msgid "Access keys can be created at most 10" msgstr "" -#: authentication/api/confirm.py:41 +#: authentication/api/confirm.py:50 msgid "This action require verify your MFA" msgstr "この操作には、MFAを検証する必要があります" @@ -2541,23 +2557,23 @@ msgstr "" "再使用可能な接続トークンの使用は許可されていません。グローバル設定は有効に" "なっていません" -#: authentication/api/connection_token.py:358 +#: authentication/api/connection_token.py:375 msgid "Anonymous account is not supported for this asset" msgstr "匿名アカウントはこのプロパティではサポートされていません" -#: authentication/api/connection_token.py:378 +#: authentication/api/connection_token.py:394 msgid "Account not found" msgstr "アカウントが見つかりません" -#: authentication/api/connection_token.py:381 +#: authentication/api/connection_token.py:397 msgid "Permission expired" msgstr "承認の有効期限が切れています" -#: authentication/api/connection_token.py:412 +#: authentication/api/connection_token.py:427 msgid "ACL action is reject: {}({})" msgstr "ACL アクションは拒否です: {}({})" -#: authentication/api/connection_token.py:416 +#: authentication/api/connection_token.py:431 msgid "ACL action is review" msgstr "ACL アクションはレビューです" @@ -2618,11 +2634,11 @@ msgstr "" msgid "Invalid token or cache refreshed." msgstr "無効なトークンまたはキャッシュの更新。" -#: authentication/backends/passkey/api.py:26 +#: authentication/backends/passkey/api.py:37 msgid "Only register passkey for local user" msgstr "" -#: authentication/backends/passkey/api.py:54 +#: authentication/backends/passkey/api.py:65 msgid "Auth failed" msgstr "認証に失敗しました" @@ -2780,21 +2796,21 @@ msgstr "電話が設定されていない" msgid "SSO auth closed" msgstr "SSO authは閉鎖されました" -#: authentication/errors/mfa.py:18 authentication/views/wecom.py:61 +#: authentication/errors/mfa.py:18 authentication/views/wecom.py:62 msgid "WeCom is already bound" msgstr "企業の微信はすでにバインドされています" -#: authentication/errors/mfa.py:23 authentication/views/wecom.py:202 -#: authentication/views/wecom.py:244 +#: authentication/errors/mfa.py:23 authentication/views/wecom.py:204 +#: authentication/views/wecom.py:246 msgid "WeCom is not bound" msgstr "企業の微信をバインドしていません" -#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:209 -#: authentication/views/dingtalk.py:251 +#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:211 +#: authentication/views/dingtalk.py:253 msgid "DingTalk is not bound" msgstr "DingTalkはバインドされていません" -#: authentication/errors/mfa.py:33 authentication/views/feishu.py:166 +#: authentication/errors/mfa.py:33 authentication/views/feishu.py:168 msgid "FeiShu is not bound" msgstr "本を飛ばすは拘束されていません" @@ -2914,7 +2930,7 @@ msgstr "電話番号を設定して有効にする" msgid "Clear phone number to disable" msgstr "無効にする電話番号をクリアする" -#: authentication/middleware.py:93 settings/utils/ldap.py:679 +#: authentication/middleware.py:94 settings/utils/ldap.py:679 msgid "Authentication failed (before login check failed): {}" msgstr "認証に失敗しました (ログインチェックが失敗する前): {}" @@ -3090,7 +3106,7 @@ msgstr "メール" msgid "The {} cannot be empty" msgstr "{} 空にしてはならない" -#: authentication/serializers/token.py:80 perms/serializers/permission.py:37 +#: authentication/serializers/token.py:86 perms/serializers/permission.py:37 #: perms/serializers/permission.py:58 users/serializers/user.py:98 #: users/serializers/user.py:168 msgid "Is valid" @@ -3133,12 +3149,6 @@ msgstr "有効化" msgid "Delete success" msgstr "削除成功" -#: authentication/templates/authentication/_access_key_modal.html:155 -#: authentication/templates/authentication/_mfa_confirm_modal.html:53 -#: templates/_modal.html:22 tickets/const.py:44 -msgid "Close" -msgstr "閉じる" - #: authentication/templates/authentication/_captcha_field.html:8 msgid "Play CAPTCHA as audio file" msgstr "CAPTCHAをオーディオファイルとして再生する" @@ -3350,69 +3360,69 @@ msgstr "ローカルエリアネットワーク" msgid "If you have any question, please contact the administrator" msgstr "質問があったら、管理者に連絡して下さい" -#: authentication/views/dingtalk.py:41 +#: authentication/views/dingtalk.py:42 msgid "DingTalk Error, Please contact your system administrator" msgstr "DingTalkエラー、システム管理者に連絡してください" -#: authentication/views/dingtalk.py:44 authentication/views/dingtalk.py:208 +#: authentication/views/dingtalk.py:45 authentication/views/dingtalk.py:210 msgid "DingTalk Error" msgstr "DingTalkエラー" -#: authentication/views/dingtalk.py:56 authentication/views/feishu.py:50 -#: authentication/views/wecom.py:57 +#: authentication/views/dingtalk.py:57 authentication/views/feishu.py:51 +#: authentication/views/wecom.py:58 msgid "" "The system configuration is incorrect. Please contact your administrator" msgstr "システム設定が正しくありません。管理者に連絡してください" -#: authentication/views/dingtalk.py:60 +#: authentication/views/dingtalk.py:61 msgid "DingTalk is already bound" msgstr "DingTalkはすでにバインドされています" -#: authentication/views/dingtalk.py:128 authentication/views/wecom.py:129 +#: authentication/views/dingtalk.py:129 authentication/views/wecom.py:130 msgid "Invalid user_id" msgstr "無効なuser_id" -#: authentication/views/dingtalk.py:144 +#: authentication/views/dingtalk.py:145 msgid "DingTalk query user failed" msgstr "DingTalkクエリユーザーが失敗しました" -#: authentication/views/dingtalk.py:153 +#: authentication/views/dingtalk.py:154 msgid "The DingTalk is already bound to another user" msgstr "DingTalkはすでに別のユーザーにバインドされています" -#: authentication/views/dingtalk.py:160 +#: authentication/views/dingtalk.py:161 msgid "Binding DingTalk successfully" msgstr "DingTalkのバインドに成功" -#: authentication/views/dingtalk.py:210 authentication/views/dingtalk.py:245 +#: authentication/views/dingtalk.py:212 authentication/views/dingtalk.py:247 msgid "Failed to get user from DingTalk" msgstr "DingTalkからユーザーを取得できませんでした" -#: authentication/views/dingtalk.py:252 +#: authentication/views/dingtalk.py:254 msgid "Please login with a password and then bind the DingTalk" msgstr "パスワードでログインし、DingTalkをバインドしてください" -#: authentication/views/feishu.py:38 authentication/views/feishu.py:165 +#: authentication/views/feishu.py:39 authentication/views/feishu.py:167 msgid "FeiShu Error" msgstr "FeiShuエラー" -#: authentication/views/feishu.py:66 +#: authentication/views/feishu.py:67 msgid "FeiShu is already bound" msgstr "FeiShuはすでにバインドされています" -#: authentication/views/feishu.py:107 +#: authentication/views/feishu.py:108 msgid "FeiShu query user failed" msgstr "FeiShuクエリユーザーが失敗しました" -#: authentication/views/feishu.py:116 +#: authentication/views/feishu.py:117 msgid "The FeiShu is already bound to another user" msgstr "FeiShuはすでに別のユーザーにバインドされています" -#: authentication/views/feishu.py:123 +#: authentication/views/feishu.py:124 msgid "Binding FeiShu successfully" msgstr "本を飛ばすのバインドに成功" -#: authentication/views/feishu.py:167 +#: authentication/views/feishu.py:169 msgid "Failed to get user from FeiShu" msgstr "本を飛ばすからユーザーを取得できませんでした" @@ -3452,31 +3462,31 @@ msgstr "ログアウト成功" msgid "Logout success, return login page" msgstr "ログアウト成功、ログインページを返す" -#: authentication/views/wecom.py:42 +#: authentication/views/wecom.py:43 msgid "WeCom Error, Please contact your system administrator" msgstr "企業微信エラー、システム管理者に連絡してください" -#: authentication/views/wecom.py:45 authentication/views/wecom.py:201 +#: authentication/views/wecom.py:46 authentication/views/wecom.py:203 msgid "WeCom Error" msgstr "企業微信エラー" -#: authentication/views/wecom.py:144 +#: authentication/views/wecom.py:145 msgid "WeCom query user failed" msgstr "企業微信ユーザーの問合せに失敗しました" -#: authentication/views/wecom.py:153 +#: authentication/views/wecom.py:154 msgid "The WeCom is already bound to another user" msgstr "この企業の微信はすでに他のユーザーをバインドしている。" -#: authentication/views/wecom.py:160 +#: authentication/views/wecom.py:161 msgid "Binding WeCom successfully" msgstr "企業の微信のバインドに成功" -#: authentication/views/wecom.py:203 authentication/views/wecom.py:238 +#: authentication/views/wecom.py:205 authentication/views/wecom.py:240 msgid "Failed to get user from WeCom" msgstr "企業の微信からユーザーを取得できませんでした" -#: authentication/views/wecom.py:245 +#: authentication/views/wecom.py:247 msgid "Please login with a password and then bind the WeCom" msgstr "パスワードでログインしてからWeComをバインドしてください" @@ -3650,11 +3660,11 @@ msgstr "M2Mリバースは許可されません" msgid "Is referenced by other objects and cannot be deleted" msgstr "他のオブジェクトによって参照され、削除できません。" -#: common/exceptions.py:48 +#: common/exceptions.py:51 msgid "This action require confirm current user" msgstr "このアクションでは、MFAの確認が必要です。" -#: common/exceptions.py:56 +#: common/exceptions.py:59 msgid "Unexpect error occur" msgstr "予期しないエラーが発生します" @@ -4272,7 +4282,7 @@ msgstr "" msgid "The organization have resource ({}) cannot be deleted" msgstr "組織のリソース ({}) は削除できません" -#: orgs/apps.py:7 rbac/tree.py:123 +#: orgs/apps.py:7 rbac/tree.py:125 msgid "App organizations" msgstr "アプリ組織" @@ -4599,25 +4609,25 @@ msgid "My assets" msgstr "私の資産" #: rbac/tree.py:56 terminal/models/applet/applet.py:52 -#: terminal/models/applet/applet.py:298 terminal/models/applet/host.py:29 +#: terminal/models/applet/applet.py:300 terminal/models/applet/host.py:29 #: terminal/serializers/applet.py:15 msgid "Applet" msgstr "リモートアプリケーション" -#: rbac/tree.py:124 +#: rbac/tree.py:126 msgid "Ticket comment" msgstr "チケットコメント" -#: rbac/tree.py:125 settings/serializers/feature.py:58 +#: rbac/tree.py:127 settings/serializers/feature.py:58 #: tickets/models/ticket/general.py:307 msgid "Ticket" msgstr "チケット" -#: rbac/tree.py:126 +#: rbac/tree.py:128 msgid "Common setting" msgstr "共通設定" -#: rbac/tree.py:127 +#: rbac/tree.py:129 msgid "View permission tree" msgstr "権限ツリーの表示" @@ -4675,38 +4685,50 @@ msgid "Can change auth setting" msgstr "資格認定の設定" #: settings/models.py:162 +msgid "Can change auth ops" +msgstr "タスクセンターの設定" + +#: settings/models.py:163 +msgid "Can change auth ticket" +msgstr "製造オーダ設定" + +#: settings/models.py:164 +msgid "Can change auth announcement" +msgstr "公告の設定" + +#: settings/models.py:165 msgid "Can change vault setting" msgstr "金庫の設定を変えることができます" -#: settings/models.py:163 +#: settings/models.py:166 msgid "Can change system msg sub setting" msgstr "システムmsgサブ设定を変更できます" -#: settings/models.py:164 +#: settings/models.py:167 msgid "Can change sms setting" msgstr "Smsの設定を変えることができます" -#: settings/models.py:165 +#: settings/models.py:168 msgid "Can change security setting" msgstr "セキュリティ設定を変更できます" -#: settings/models.py:166 +#: settings/models.py:169 msgid "Can change clean setting" msgstr "きれいな設定を変えることができます" -#: settings/models.py:167 +#: settings/models.py:170 msgid "Can change interface setting" msgstr "インターフェイスの設定を変えることができます" -#: settings/models.py:168 +#: settings/models.py:171 msgid "Can change license setting" msgstr "ライセンス設定を変更できます" -#: settings/models.py:169 +#: settings/models.py:172 msgid "Can change terminal setting" msgstr "ターミナルの設定を変えることができます" -#: settings/models.py:170 +#: settings/models.py:173 msgid "Can change other setting" msgstr "他の設定を変えることができます" @@ -6110,7 +6132,7 @@ msgstr "コマンドストア" msgid "Invalid" msgstr "無効" -#: terminal/api/component/storage.py:119 terminal/tasks.py:141 +#: terminal/api/component/storage.py:119 terminal/tasks.py:142 msgid "Test failure: {}" msgstr "テスト失敗: {}" @@ -6119,7 +6141,7 @@ msgid "Test successful" msgstr "テスト成功" #: terminal/api/component/storage.py:124 terminal/notifications.py:240 -#: terminal/tasks.py:145 +#: terminal/tasks.py:146 msgid "Test failure: Account invalid" msgstr "テスト失敗: アカウントが無効" @@ -6314,7 +6336,7 @@ msgstr "カスタムプラットフォームのみをサポート" msgid "Missing type in platform.yml" msgstr "platform.ymlにタイプがありません" -#: terminal/models/applet/applet.py:300 terminal/models/applet/host.py:35 +#: terminal/models/applet/applet.py:302 terminal/models/applet/host.py:35 #: terminal/models/applet/host.py:137 msgid "Hosting" msgstr "ホスト マシン" @@ -6874,23 +6896,23 @@ msgstr "端末の状態を定期的にクリーンアップする" msgid "Clean orphan session" msgstr "オフライン セッションをクリアする" -#: terminal/tasks.py:61 +#: terminal/tasks.py:62 msgid "Upload session replay to external storage" msgstr "セッションの記録を外部ストレージにアップロードする" -#: terminal/tasks.py:90 +#: terminal/tasks.py:91 msgid "Run applet host deployment" msgstr "アプリケーション マシンの展開を実行する" -#: terminal/tasks.py:100 +#: terminal/tasks.py:101 msgid "Install applet" msgstr "アプリをインストールする" -#: terminal/tasks.py:111 +#: terminal/tasks.py:112 msgid "Generate applet host accounts" msgstr "リモートアプリケーション上のアカウントを収集する" -#: terminal/tasks.py:123 +#: terminal/tasks.py:124 msgid "Check command replay storage connectivity" msgstr "チェックコマンドと録画ストレージの接続性" @@ -6920,6 +6942,10 @@ msgstr "" msgid "All available port count: {}, Already use port count: {}" msgstr "使用可能なすべてのポート数: {}、すでに使用しているポート数: {}" +#: tickets/api/ticket.py:88 tickets/models/ticket/general.py:288 +msgid "Applicant" +msgstr "応募者" + #: tickets/apps.py:7 msgid "Tickets" msgstr "チケット" @@ -6948,10 +6974,6 @@ msgstr "拒否" msgid "Closed" msgstr "クローズ" -#: tickets/const.py:46 -msgid "Approve" -msgstr "承認" - #: tickets/const.py:50 msgid "One level" msgstr "1つのレベル" @@ -7083,6 +7105,10 @@ msgstr "実行コマンド" msgid "Command filter acl" msgstr "コマンド フィルタ" +#: tickets/models/ticket/command_confirm.py:23 +msgid "Apply Command Ticket" +msgstr "製造オーダの検討を命令" + #: tickets/models/ticket/general.py:76 msgid "Ticket step" msgstr "チケットステップ" @@ -7095,10 +7121,6 @@ msgstr "割り当てられたチケット" msgid "Title" msgstr "タイトル" -#: tickets/models/ticket/general.py:288 -msgid "Applicant" -msgstr "応募者" - #: tickets/models/ticket/general.py:292 msgid "TicketFlow" msgstr "作業指示プロセス" @@ -7131,10 +7153,18 @@ msgstr "ログイン資産" 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 "チケット基本情報" @@ -7221,18 +7251,14 @@ msgid "Ticket information" msgstr "作業指示情報" #: tickets/templates/tickets/approve_check_password.html:29 -#: tickets/views/approve.py:40 +#: tickets/views/approve.py:40 tickets/views/approve.py:77 msgid "Ticket approval" msgstr "作業指示の承認" -#: tickets/templates/tickets/approve_check_password.html:45 +#: tickets/templates/tickets/approve_check_password.html:44 msgid "Approval" msgstr "承認" -#: tickets/templates/tickets/approve_check_password.html:54 -msgid "Go Login" -msgstr "ログイン" - #: tickets/views/approve.py:41 msgid "" "This ticket does not exist, the process has ended, or this link has expired" @@ -7240,19 +7266,19 @@ msgstr "" "このワークシートが存在しないか、ワークシートが終了したか、このリンクが無効に" "なっています" -#: tickets/views/approve.py:70 +#: tickets/views/approve.py:69 msgid "Click the button below to approve or reject" msgstr "下のボタンをクリックして同意または拒否。" -#: tickets/views/approve.py:72 +#: tickets/views/approve.py:78 msgid "After successful authentication, this ticket can be approved directly" msgstr "認証に成功した後、作業指示書は直接承認することができる。" -#: tickets/views/approve.py:97 +#: tickets/views/approve.py:95 msgid "Illegal approval action" msgstr "無効な承認アクション" -#: tickets/views/approve.py:110 +#: tickets/views/approve.py:108 msgid "This user is not authorized to approve this ticket" msgstr "このユーザーはこの作業指示を承認する権限がありません" @@ -8052,7 +8078,7 @@ msgstr "同期済み" msgid "Released" msgstr "リリース済み" -#: xpack/plugins/cloud/manager.py:53 +#: xpack/plugins/cloud/manager.py:54 msgid "Account unavailable" msgstr "利用できないアカウント" @@ -8145,14 +8171,12 @@ msgid "Task strategy" msgstr "ミッション戦略です" #: xpack/plugins/cloud/models.py:285 -msgid "Exact" -msgstr "" +msgid "Equal" +msgstr "等しい" #: xpack/plugins/cloud/models.py:286 -#, fuzzy -#| msgid "No" -msgid "Not" -msgstr "否" +msgid "Not Equal" +msgstr "不等于" #: xpack/plugins/cloud/models.py:287 msgid "In" @@ -8564,7 +8588,7 @@ msgstr "ライセンスのインポートに成功" msgid "License is invalid" msgstr "ライセンスが無効です" -#: xpack/plugins/license/meta.py:10 xpack/plugins/license/models.py:140 +#: xpack/plugins/license/meta.py:10 xpack/plugins/license/models.py:141 msgid "License" msgstr "ライセンス" @@ -8583,9 +8607,3 @@ msgstr "エンタープライズプロフェッショナル版" #: xpack/plugins/license/models.py:86 msgid "Ultimate edition" msgstr "エンタープライズ・フラッグシップ・エディション" - -#~ msgid "Equal" -#~ msgstr "等しい" - -#~ msgid "Not equal" -#~ msgstr "不等于" diff --git a/apps/locale/zh/LC_MESSAGES/django.mo b/apps/locale/zh/LC_MESSAGES/django.mo index 98c61cf62..ca81a92bf 100644 --- a/apps/locale/zh/LC_MESSAGES/django.mo +++ b/apps/locale/zh/LC_MESSAGES/django.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4be95c6d05beb08730dd3cee943e7f84aa94e8e711a41e2fce5b0aebf84e831b -size 133014 +oid sha256:9f331dc156c4e51b6a30249da9d342093c79da1cebe926474b7942a5d3b6a931 +size 133436 diff --git a/apps/locale/zh/LC_MESSAGES/django.po b/apps/locale/zh/LC_MESSAGES/django.po index 5c375d6c1..bdb3be1d1 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: 2023-10-13 15:03+0800\n" +"POT-Creation-Date: 2023-10-19 16:21+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -17,13 +17,13 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.4.3\n" -#: accounts/api/automations/base.py:79 tickets/api/ticket.py:112 +#: accounts/api/automations/base.py:79 tickets/api/ticket.py:132 msgid "The parameter 'action' must be [{}]" msgstr "参数 'action' 必须是 [{}]" #: accounts/const/account.py:6 #: accounts/serializers/automations/change_secret.py:32 -#: assets/models/_user.py:24 audits/signal_handlers/login_log.py:37 +#: 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:32 #: authentication/templates/authentication/login.html:324 @@ -88,13 +88,13 @@ msgstr "模板" msgid "Skip" msgstr "跳过" -#: accounts/const/account.py:32 audits/const.py:24 rbac/tree.py:234 +#: accounts/const/account.py:32 audits/const.py:24 rbac/tree.py:236 #: templates/_csv_import_export.html:18 templates/_csv_update_modal.html:6 msgid "Update" msgstr "更新" #: accounts/const/account.py:33 -#: accounts/serializers/automations/change_secret.py:155 audits/const.py:60 +#: accounts/serializers/automations/change_secret.py:155 audits/const.py:62 #: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 #: ops/const.py:74 terminal/const.py:77 xpack/plugins/cloud/const.py:43 msgid "Failed" @@ -217,15 +217,15 @@ msgstr "用户 %s 查看/导出 了密码" #: accounts/models/account.py:48 #: accounts/models/automations/gather_account.py:16 -#: accounts/serializers/account/account.py:209 -#: accounts/serializers/account/account.py:254 +#: accounts/serializers/account/account.py:210 +#: accounts/serializers/account/account.py:255 #: accounts/serializers/account/gathered_account.py:10 #: accounts/serializers/automations/change_secret.py:111 #: accounts/serializers/automations/change_secret.py:131 #: acls/serializers/base.py:123 assets/models/asset/common.py:93 #: assets/models/asset/common.py:334 assets/models/cmd_filter.py:36 #: assets/serializers/domain.py:19 assets/serializers/label.py:27 -#: audits/models.py:56 authentication/models/connection_token.py:36 +#: audits/models.py:57 authentication/models/connection_token.py:36 #: perms/models/asset_permission.py:64 perms/serializers/permission.py:34 #: terminal/backends/command/models.py:17 terminal/models/session/session.py:31 #: terminal/notifications.py:155 terminal/serializers/command.py:17 @@ -237,8 +237,8 @@ msgid "Asset" msgstr "资产" #: accounts/models/account.py:52 accounts/models/template.py:15 -#: accounts/serializers/account/account.py:216 -#: accounts/serializers/account/account.py:264 +#: accounts/serializers/account/account.py:217 +#: accounts/serializers/account/account.py:265 #: accounts/serializers/account/template.py:24 #: authentication/serializers/connect_token_secret.py:49 msgid "Su from" @@ -250,7 +250,7 @@ msgstr "切换自" msgid "Version" msgstr "版本" -#: accounts/models/account.py:56 accounts/serializers/account/account.py:211 +#: accounts/models/account.py:56 accounts/serializers/account/account.py:212 #: users/models/user.py:837 msgid "Source" msgstr "来源" @@ -264,7 +264,7 @@ msgstr "来源 ID" #: accounts/serializers/automations/change_secret.py:132 #: acls/serializers/base.py:124 acls/templates/acls/asset_login_reminder.html:7 #: assets/serializers/asset/common.py:125 assets/serializers/gateway.py:28 -#: audits/models.py:57 authentication/api/connection_token.py:391 +#: audits/models.py:58 authentication/api/connection_token.py:406 #: ops/models/base.py:18 perms/models/asset_permission.py:70 #: perms/serializers/permission.py:39 terminal/backends/command/models.py:18 #: terminal/models/session/session.py:33 @@ -308,7 +308,7 @@ msgid "Account backup plan" msgstr "账号备份计划" #: accounts/models/automations/backup_account.py:91 -#: assets/models/automations/base.py:115 audits/models.py:63 +#: assets/models/automations/base.py:115 audits/models.py:64 #: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:228 #: ops/templates/ops/celery_task_log.html:75 #: perms/models/asset_permission.py:72 terminal/models/applet/host.py:140 @@ -336,7 +336,7 @@ msgstr "账号备份快照" msgid "Trigger mode" msgstr "触发模式" -#: accounts/models/automations/backup_account.py:105 audits/models.py:201 +#: accounts/models/automations/backup_account.py:105 audits/models.py:202 #: terminal/models/session/sharing.py:125 xpack/plugins/cloud/models.py:205 msgid "Reason" msgstr "原因" @@ -422,7 +422,7 @@ msgid "Date finished" msgstr "结束日期" #: accounts/models/automations/change_secret.py:44 -#: accounts/serializers/account/account.py:256 assets/const/automation.py:8 +#: accounts/serializers/account/account.py:257 assets/const/automation.py:8 #: authentication/templates/authentication/passkey.html:173 #: authentication/views/base.py:27 authentication/views/base.py:28 #: authentication/views/base.py:29 common/const/choices.py:20 @@ -446,7 +446,7 @@ msgstr "最后登录日期" #: accounts/serializers/account/virtual.py:21 acls/serializers/base.py:19 #: acls/serializers/base.py:50 acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:23 -#: audits/models.py:186 authentication/forms.py:25 authentication/forms.py:27 +#: audits/models.py:187 authentication/forms.py:25 authentication/forms.py:27 #: authentication/models/temp_token.py:9 #: authentication/templates/authentication/_msg_different_city.html:9 #: authentication/templates/authentication/_msg_oauth_bind.html:9 @@ -479,7 +479,7 @@ 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:90 audits/serializers.py:84 +#: audits/models.py:91 audits/serializers.py:84 #: authentication/serializers/connect_token_secret.py:116 #: authentication/templates/authentication/_access_key_modal.html:34 msgid "Action" @@ -494,7 +494,7 @@ msgid "Verify asset account" msgstr "账号验证" #: accounts/models/base.py:37 accounts/models/base.py:67 -#: accounts/serializers/account/account.py:436 +#: accounts/serializers/account/account.py:437 #: accounts/serializers/account/base.py:16 #: accounts/serializers/automations/change_secret.py:45 #: authentication/serializers/connect_token_secret.py:41 @@ -538,10 +538,11 @@ msgstr "密码规则" #: terminal/models/applet/applet.py:33 terminal/models/component/endpoint.py:12 #: terminal/models/component/endpoint.py:94 #: terminal/models/component/storage.py:26 terminal/models/component/task.py:13 -#: terminal/models/component/terminal.py:84 users/forms/profile.py:33 -#: users/models/group.py:13 users/models/preference.py:11 -#: users/models/user.py:792 xpack/plugins/cloud/models.py:32 -#: xpack/plugins/cloud/models.py:273 xpack/plugins/cloud/serializers/task.py:68 +#: terminal/models/component/terminal.py:84 tickets/api/ticket.py:87 +#: users/forms/profile.py:33 users/models/group.py:13 +#: users/models/preference.py:11 users/models/user.py:792 +#: xpack/plugins/cloud/models.py:32 xpack/plugins/cloud/models.py:273 +#: xpack/plugins/cloud/serializers/task.py:68 msgid "Name" msgstr "名称" @@ -659,7 +660,7 @@ msgstr "立即推送" msgid "Exist policy" msgstr "账号存在策略" -#: accounts/serializers/account/account.py:189 applications/models.py:11 +#: accounts/serializers/account/account.py:190 applications/models.py:11 #: assets/models/label.py:21 assets/models/platform.py:89 #: assets/serializers/asset/common.py:121 assets/serializers/cagegory.py:8 #: assets/serializers/platform.py:133 assets/serializers/platform.py:229 @@ -668,9 +669,9 @@ msgstr "账号存在策略" msgid "Category" msgstr "类别" -#: accounts/serializers/account/account.py:190 +#: accounts/serializers/account/account.py:191 #: accounts/serializers/automations/base.py:54 acls/models/command_acl.py:24 -#: acls/serializers/command_acl.py:18 applications/models.py:14 +#: 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:90 #: assets/serializers/asset/common.py:122 assets/serializers/platform.py:113 @@ -688,59 +689,59 @@ msgstr "类别" msgid "Type" msgstr "类型" -#: accounts/serializers/account/account.py:205 +#: accounts/serializers/account/account.py:206 msgid "Asset not found" msgstr "资产不存在" -#: accounts/serializers/account/account.py:245 +#: accounts/serializers/account/account.py:246 msgid "Has secret" msgstr "已托管密码" -#: accounts/serializers/account/account.py:255 ops/models/celery.py:60 +#: accounts/serializers/account/account.py:256 ops/models/celery.py:60 #: tickets/models/comment.py:13 tickets/models/ticket/general.py:45 #: tickets/models/ticket/general.py:279 tickets/serializers/super_ticket.py:14 #: tickets/serializers/ticket/ticket.py:21 msgid "State" msgstr "状态" -#: accounts/serializers/account/account.py:257 +#: accounts/serializers/account/account.py:258 msgid "Changed" msgstr "已修改" -#: accounts/serializers/account/account.py:267 +#: accounts/serializers/account/account.py:268 #: 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:390 ops/models/base.py:17 +#: authentication/api/connection_token.py:405 ops/models/base.py:17 #: ops/models/job.py:139 ops/serializers/job.py:21 #: terminal/templates/terminal/_msg_command_execute_alert.html:16 msgid "Assets" msgstr "资产" -#: accounts/serializers/account/account.py:322 +#: accounts/serializers/account/account.py:323 msgid "Account already exists" msgstr "账号已存在" -#: accounts/serializers/account/account.py:372 +#: accounts/serializers/account/account.py:373 #, python-format msgid "Asset does not support this secret type: %s" msgstr "资产不支持账号类型: %s" -#: accounts/serializers/account/account.py:404 +#: accounts/serializers/account/account.py:405 msgid "Account has exist" msgstr "账号已存在" -#: accounts/serializers/account/account.py:437 +#: accounts/serializers/account/account.py:438 #: authentication/serializers/connect_token_secret.py:156 #: authentication/templates/authentication/_access_key_modal.html:30 #: perms/models/perm_node.py:21 users/serializers/group.py:31 msgid "ID" msgstr "ID" -#: accounts/serializers/account/account.py:447 acls/serializers/base.py:116 -#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:52 -#: audits/models.py:88 audits/models.py:170 audits/models.py:268 +#: accounts/serializers/account/account.py:448 acls/serializers/base.py:116 +#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:53 +#: audits/models.py:89 audits/models.py:171 audits/models.py:268 #: audits/serializers.py:171 authentication/models/connection_token.py:32 #: authentication/models/sso_token.py:16 #: notifications/models/notification.py:12 @@ -757,7 +758,7 @@ msgstr "ID" msgid "User" msgstr "用户" -#: accounts/serializers/account/account.py:448 +#: accounts/serializers/account/account.py:449 #: authentication/templates/authentication/_access_key_modal.html:33 #: terminal/notifications.py:158 terminal/notifications.py:207 msgid "Date" @@ -789,7 +790,7 @@ msgid "Key password" msgstr "密钥密码" #: accounts/serializers/account/base.py:78 -#: assets/serializers/asset/common.py:338 +#: assets/serializers/asset/common.py:378 msgid "Spec info" msgstr "特殊信息" @@ -840,7 +841,7 @@ msgstr "关联平台,可配置推送参数,如果不关联,将使用默认 #: assets/models/group.py:20 common/db/models.py:36 ops/models/adhoc.py:26 #: ops/models/job.py:145 ops/models/playbook.py:31 rbac/models/role.py:37 #: settings/models.py:37 terminal/models/applet/applet.py:45 -#: terminal/models/applet/applet.py:302 terminal/models/applet/host.py:142 +#: terminal/models/applet/applet.py:304 terminal/models/applet/host.py:142 #: terminal/models/component/endpoint.py:24 #: terminal/models/component/endpoint.py:104 #: terminal/models/session/session.py:46 tickets/models/comment.py:32 @@ -893,11 +894,11 @@ msgstr "* 密码长度范围 6-30 位" msgid "Automation task execution" msgstr "自动化任务执行历史" -#: accounts/serializers/automations/change_secret.py:154 audits/const.py:59 -#: audits/models.py:62 audits/signal_handlers/activity_log.py:33 +#: accounts/serializers/automations/change_secret.py:154 audits/const.py:61 +#: audits/models.py:63 audits/signal_handlers/activity_log.py:33 #: common/const/choices.py:18 ops/const.py:72 ops/serializers/celery.py:40 #: terminal/const.py:76 terminal/models/session/sharing.py:121 -#: tickets/views/approve.py:119 +#: tickets/views/approve.py:117 msgid "Success" msgstr "成功" @@ -972,16 +973,16 @@ msgstr "密钥不合法或密钥密码错误" msgid "Acls" msgstr "访问控制" -#: acls/const.py:6 audits/const.py:33 terminal/const.py:11 tickets/const.py:45 -#: tickets/templates/tickets/approve_check_password.html:49 +#: acls/const.py:6 audits/const.py:36 terminal/const.py:11 tickets/const.py:45 +#: tickets/templates/tickets/approve_check_password.html:48 msgid "Reject" msgstr "拒绝" -#: acls/const.py:7 audits/const.py:34 terminal/const.py:9 +#: acls/const.py:7 audits/const.py:33 terminal/const.py:9 msgid "Accept" msgstr "接受" -#: acls/const.py:8 audits/const.py:35 +#: acls/const.py:8 audits/const.py:34 msgid "Review" msgstr "审批" @@ -989,7 +990,7 @@ msgstr "审批" msgid "Warning" msgstr "告警" -#: acls/const.py:10 audits/const.py:36 notifications/apps.py:7 +#: acls/const.py:10 audits/const.py:35 notifications/apps.py:7 msgid "Notifications" msgstr "通知" @@ -1023,7 +1024,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:337 +#: assets/models/cmd_filter.py:38 assets/serializers/asset/common.py:377 #: rbac/tree.py:35 msgid "Accounts" msgstr "账号管理" @@ -1055,8 +1056,8 @@ msgstr "每行一个命令" msgid "Ignore case" msgstr "忽略大小写" -#: acls/models/command_acl.py:33 acls/models/command_acl.py:96 -#: acls/serializers/command_acl.py:28 +#: acls/models/command_acl.py:33 acls/models/command_acl.py:97 +#: acls/serializers/command_acl.py:29 #: authentication/serializers/connect_token_secret.py:85 #: terminal/templates/terminal/_msg_command_warning.html:14 msgid "Command group" @@ -1066,12 +1067,12 @@ msgstr "命令组" msgid "The generated regular expression is incorrect: {}" msgstr "生成的正则表达式有误" -#: acls/models/command_acl.py:100 +#: acls/models/command_acl.py:103 #: terminal/templates/terminal/_msg_command_warning.html:12 msgid "Command acl" msgstr "命令过滤" -#: acls/models/command_acl.py:109 tickets/const.py:11 +#: acls/models/command_acl.py:112 tickets/const.py:11 msgid "Command confirm" msgstr "命令复核" @@ -1185,15 +1186,15 @@ msgstr "" msgid "Thank you" msgstr "谢谢" -#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:192 -#: audits/models.py:261 +#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:193 +#: audits/models.py:262 #: 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:195 -#: audits/models.py:262 audits/serializers.py:65 +#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:196 +#: audits/models.py:263 audits/serializers.py:65 msgid "User agent" msgstr "用户代理" @@ -1243,7 +1244,7 @@ msgstr "不能删除根节点 ({})" msgid "Deletion failed and the node contains assets" msgstr "删除失败,节点包含资产" -#: assets/api/tree.py:49 assets/serializers/node.py:41 +#: assets/api/tree.py:49 assets/serializers/node.py:42 msgid "The same level node name cannot be the same" msgstr "同级别节点名字不能重复" @@ -1274,7 +1275,7 @@ msgid "Unable to connect to port {port} on {address}" msgstr "无法连接到 {port} 上的端口 {address}" #: assets/automations/ping_gateway/manager.py:58 -#: authentication/middleware.py:92 xpack/plugins/cloud/providers/fc.py:47 +#: authentication/middleware.py:93 xpack/plugins/cloud/providers/fc.py:47 msgid "Authentication failed" msgstr "认证失败" @@ -1283,7 +1284,7 @@ msgstr "认证失败" msgid "Connect failed" msgstr "连接失败" -#: assets/const/automation.py:6 audits/const.py:6 audits/const.py:42 +#: assets/const/automation.py:6 audits/const.py:6 audits/const.py:44 #: 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" @@ -1305,19 +1306,19 @@ msgstr "测试网关" msgid "Gather facts" msgstr "收集资产信息" -#: assets/const/base.py:33 audits/const.py:53 +#: assets/const/base.py:32 audits/const.py:55 #: terminal/serializers/applet_host.py:32 msgid "Disabled" msgstr "禁用" -#: assets/const/base.py:34 settings/serializers/basic.py:6 +#: assets/const/base.py:33 settings/serializers/basic.py:6 #: users/serializers/preference/koko.py:19 #: users/serializers/preference/lina.py:39 #: users/serializers/preference/luna.py:60 msgid "Basic" msgstr "基本" -#: assets/const/base.py:35 assets/const/protocol.py:252 +#: assets/const/base.py:34 assets/const/protocol.py:252 #: assets/models/asset/web.py:13 msgid "Script" msgstr "脚本" @@ -1339,7 +1340,7 @@ msgid "Cloud service" msgstr "云服务" #: assets/const/category.py:14 assets/models/asset/gpt.py:11 -#: assets/models/asset/web.py:16 audits/const.py:40 +#: assets/models/asset/web.py:16 audits/const.py:42 #: terminal/models/applet/applet.py:27 users/const.py:47 msgid "Web" msgstr "Web" @@ -1525,7 +1526,7 @@ msgstr "SSH公钥" # 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:265 common/db/models.py:34 ops/models/base.py:54 +#: audits/models.py:266 common/db/models.py:34 ops/models/base.py:54 #: ops/models/job.py:227 users/models/user.py:1024 msgid "Date created" msgstr "创建日期" @@ -1640,7 +1641,7 @@ msgstr "网域" msgid "Labels" msgstr "标签管理" -#: assets/models/asset/common.py:158 assets/serializers/asset/common.py:339 +#: assets/models/asset/common.py:158 assets/serializers/asset/common.py:379 #: assets/serializers/asset/host.py:11 msgid "Gathered info" msgstr "收集资产硬件信息" @@ -1702,9 +1703,9 @@ msgstr "自动化任务" msgid "Asset automation task" msgstr "资产自动化任务" -#: assets/models/automations/base.py:113 audits/models.py:206 +#: assets/models/automations/base.py:113 audits/models.py:207 #: audits/serializers.py:51 ops/models/base.py:49 ops/models/job.py:220 -#: terminal/models/applet/applet.py:301 terminal/models/applet/host.py:139 +#: terminal/models/applet/applet.py:303 terminal/models/applet/host.py:139 #: terminal/models/component/status.py:30 terminal/serializers/applet.py:18 #: terminal/serializers/applet_host.py:115 tickets/models/ticket/general.py:283 #: tickets/serializers/super_ticket.py:13 @@ -1850,7 +1851,7 @@ msgstr "开放的" msgid "Setting" msgstr "设置" -#: assets/models/platform.py:38 audits/const.py:54 +#: assets/models/platform.py:38 audits/const.py:56 #: authentication/backends/passkey/models.py:11 settings/models.py:36 #: terminal/serializers/applet_host.py:33 msgid "Enabled" @@ -1975,22 +1976,26 @@ msgid "Node path" msgstr "节点路径" #: assets/serializers/asset/common.py:145 -#: assets/serializers/asset/common.py:340 +#: assets/serializers/asset/common.py:380 msgid "Auto info" msgstr "自动化信息" -#: assets/serializers/asset/common.py:236 +#: assets/serializers/asset/common.py:238 msgid "Platform not exist" msgstr "平台不存在" -#: assets/serializers/asset/common.py:272 +#: assets/serializers/asset/common.py:274 msgid "port out of range (0-65535)" msgstr "端口超出范围 (0-65535)" -#: assets/serializers/asset/common.py:279 +#: assets/serializers/asset/common.py:281 msgid "Protocol is required: {}" msgstr "协议是必填的: {}" +#: assets/serializers/asset/common.py:309 +msgid "Invalid data" +msgstr "无效的数据" + #: assets/serializers/asset/database.py:12 msgid "Default database" msgstr "默认数据库" @@ -2229,7 +2234,7 @@ msgstr "删除目录" #: audits/const.py:14 audits/const.py:25 #: authentication/templates/authentication/_access_key_modal.html:65 -#: perms/const.py:17 rbac/tree.py:235 +#: perms/const.py:17 rbac/tree.py:237 msgid "Delete" msgstr "删除" @@ -2254,7 +2259,7 @@ msgstr "下载" msgid "Rename dir" msgstr "映射目录" -#: audits/const.py:23 rbac/tree.py:233 terminal/api/session/session.py:257 +#: audits/const.py:23 rbac/tree.py:235 terminal/api/session/session.py:257 #: terminal/templates/terminal/_msg_command_warning.html:18 #: terminal/templates/terminal/_msg_session_sharing.html:10 msgid "View" @@ -2262,7 +2267,7 @@ msgstr "查看" #: audits/const.py:26 #: authentication/templates/authentication/_access_key_modal.html:22 -#: rbac/tree.py:232 +#: rbac/tree.py:234 msgid "Create" msgstr "创建" @@ -2280,30 +2285,41 @@ msgstr "登录" msgid "Change password" msgstr "改密" -#: audits/const.py:41 settings/serializers/terminal.py:6 +#: audits/const.py:37 tickets/const.py:46 +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:44 +msgid "Close" +msgstr "关闭" + +#: audits/const.py:43 settings/serializers/terminal.py:6 #: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:164 #: terminal/serializers/session.py:52 terminal/serializers/session.py:66 msgid "Terminal" msgstr "终端" -#: audits/const.py:46 audits/models.py:130 +#: audits/const.py:48 audits/models.py:131 msgid "Operate log" msgstr "操作日志" -#: audits/const.py:47 +#: audits/const.py:49 msgid "Session log" msgstr "会话日志" -#: audits/const.py:48 +#: audits/const.py:50 msgid "Login log" msgstr "登录日志" -#: audits/const.py:49 terminal/models/applet/host.py:143 +#: audits/const.py:51 terminal/models/applet/host.py:143 #: terminal/models/component/task.py:22 msgid "Task" msgstr "任务" -#: audits/const.py:55 +#: audits/const.py:57 msgid "-" msgstr "-" @@ -2315,28 +2331,28 @@ msgstr "是" msgid "No" msgstr "否" -#: audits/models.py:45 +#: audits/models.py:46 msgid "Job audit log" msgstr "作业审计日志" -#: audits/models.py:54 audits/models.py:98 audits/models.py:173 +#: audits/models.py:55 audits/models.py:99 audits/models.py:174 #: terminal/models/session/session.py:38 terminal/models/session/sharing.py:113 msgid "Remote addr" msgstr "远端地址" -#: audits/models.py:59 audits/serializers.py:35 +#: audits/models.py:60 audits/serializers.py:35 msgid "Operate" msgstr "操作" -#: audits/models.py:61 +#: audits/models.py:62 msgid "Filename" msgstr "文件名" -#: audits/models.py:64 common/serializers/common.py:98 +#: audits/models.py:65 common/serializers/common.py:98 msgid "File" msgstr "文件" -#: audits/models.py:65 terminal/backends/command/models.py:21 +#: audits/models.py:66 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 @@ -2345,93 +2361,86 @@ msgstr "文件" msgid "Session" msgstr "会话" -#: audits/models.py:68 +#: audits/models.py:69 msgid "File transfer log" msgstr "文件管理" -#: audits/models.py:92 audits/serializers.py:86 +#: audits/models.py:93 audits/serializers.py:86 msgid "Resource Type" msgstr "资源类型" -#: audits/models.py:93 audits/models.py:96 audits/models.py:142 +#: audits/models.py:94 audits/models.py:97 audits/models.py:143 #: audits/serializers.py:85 msgid "Resource" msgstr "资源" -#: audits/models.py:99 audits/models.py:145 audits/models.py:175 +#: audits/models.py:100 audits/models.py:146 audits/models.py:176 #: terminal/serializers/command.py:75 msgid "Datetime" msgstr "日期" -#: audits/models.py:138 +#: audits/models.py:139 msgid "Activity type" msgstr "活动类型" -#: audits/models.py:148 +#: audits/models.py:149 msgid "Detail" msgstr "详情" -#: audits/models.py:151 +#: audits/models.py:152 msgid "Detail ID" msgstr "详情 ID" -#: audits/models.py:155 +#: audits/models.py:156 msgid "Activity log" msgstr "活动日志" -#: audits/models.py:171 +#: audits/models.py:172 msgid "Change by" msgstr "修改者" -#: audits/models.py:181 +#: audits/models.py:182 msgid "Password change log" msgstr "改密日志" -#: audits/models.py:188 audits/models.py:263 +#: audits/models.py:189 audits/models.py:264 msgid "Login type" msgstr "登录方式" -#: audits/models.py:190 audits/models.py:259 +#: audits/models.py:191 audits/models.py:260 #: tickets/models/ticket/login_confirm.py:10 msgid "Login IP" msgstr "登录 IP" -#: audits/models.py:198 audits/serializers.py:49 +#: audits/models.py:199 audits/serializers.py:49 #: authentication/templates/authentication/_mfa_confirm_modal.html:14 #: users/forms/profile.py:65 users/models/user.py:815 #: users/serializers/profile.py:102 msgid "MFA" msgstr "MFA" -#: audits/models.py:208 +#: audits/models.py:209 msgid "Date login" msgstr "登录日期" -#: audits/models.py:210 audits/models.py:264 audits/serializers.py:67 -#: audits/serializers.py:183 +#: audits/models.py:211 audits/models.py:265 audits/serializers.py:67 +#: audits/serializers.py:184 msgid "Authentication backend" msgstr "认证方式" -#: audits/models.py:254 +#: audits/models.py:255 msgid "User login log" msgstr "用户登录日志" -#: audits/models.py:260 +#: audits/models.py:261 msgid "Session key" msgstr "会话标识" -#: audits/models.py:266 authentication/models/connection_token.py:47 -#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:74 -#: tickets/models/ticket/apply_application.py:31 -#: tickets/models/ticket/apply_asset.py:20 users/models/user.py:833 -msgid "Date expired" -msgstr "失效日期" - -#: audits/models.py:292 +#: audits/models.py:300 msgid "User session" msgstr "用户会话" -#: audits/models.py:294 +#: audits/models.py:302 msgid "Offline ussr session" msgstr "下限用户会话" @@ -2444,6 +2453,13 @@ msgstr "原因描述" msgid "User %s %s this resource" msgstr "用户 %s %s 了当前资源" +#: audits/serializers.py:172 authentication/models/connection_token.py:47 +#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:74 +#: tickets/models/ticket/apply_application.py:31 +#: tickets/models/ticket/apply_asset.py:20 users/models/user.py:833 +msgid "Date expired" +msgstr "失效日期" + #: audits/signal_handlers/activity_log.py:26 #, python-format msgid "User %s use account %s login asset %s" @@ -2459,26 +2475,26 @@ msgstr "用户 %s 登录系统 %s" msgid "User %s perform a task for this resource: %s" msgstr "用户 %s 在当前资源, 执行了任务 (%s)" -#: audits/signal_handlers/login_log.py:36 +#: audits/signal_handlers/login_log.py:33 msgid "SSH Key" msgstr "SSH 密钥" -#: audits/signal_handlers/login_log.py:38 settings/serializers/auth/sso.py:13 +#: audits/signal_handlers/login_log.py:35 settings/serializers/auth/sso.py:13 msgid "SSO" msgstr "SSO" -#: audits/signal_handlers/login_log.py:39 +#: audits/signal_handlers/login_log.py:36 msgid "Auth Token" msgstr "认证令牌" -#: audits/signal_handlers/login_log.py:40 authentication/notifications.py:73 -#: authentication/views/login.py:77 authentication/views/wecom.py:159 +#: audits/signal_handlers/login_log.py:37 authentication/notifications.py:73 +#: authentication/views/login.py:77 authentication/views/wecom.py:160 #: notifications/backends/__init__.py:11 settings/serializers/auth/wecom.py:10 #: users/models/user.py:745 users/models/user.py:847 msgid "WeCom" msgstr "企业微信" -#: audits/signal_handlers/login_log.py:41 authentication/views/feishu.py:122 +#: audits/signal_handlers/login_log.py:38 authentication/views/feishu.py:123 #: authentication/views/login.py:89 notifications/backends/__init__.py:14 #: settings/serializers/auth/feishu.py:10 #: settings/serializers/auth/feishu.py:13 users/models/user.py:747 @@ -2486,19 +2502,19 @@ msgstr "企业微信" msgid "FeiShu" msgstr "飞书" -#: audits/signal_handlers/login_log.py:42 authentication/views/dingtalk.py:159 +#: audits/signal_handlers/login_log.py:39 authentication/views/dingtalk.py:160 #: authentication/views/login.py:83 notifications/backends/__init__.py:12 #: settings/serializers/auth/dingtalk.py:10 users/models/user.py:746 #: users/models/user.py:848 msgid "DingTalk" msgstr "钉钉" -#: audits/signal_handlers/login_log.py:43 +#: audits/signal_handlers/login_log.py:40 #: authentication/models/temp_token.py:16 msgid "Temporary token" msgstr "临时密码" -#: audits/signal_handlers/login_log.py:44 authentication/views/login.py:95 +#: audits/signal_handlers/login_log.py:41 authentication/views/login.py:95 #: settings/serializers/auth/passkey.py:8 msgid "Passkey" msgstr "" @@ -2511,11 +2527,11 @@ msgstr "清理审计会话任务日志" msgid "Upload FTP file to external storage" msgstr "上传 FTP 文件到外部存储" -#: authentication/api/access_key.py:36 +#: authentication/api/access_key.py:39 msgid "Access keys can be created at most 10" msgstr "" -#: authentication/api/confirm.py:41 +#: authentication/api/confirm.py:50 msgid "This action require verify your MFA" msgstr "该操作需要验证您的 MFA, 请先开启并配置" @@ -2523,23 +2539,23 @@ msgstr "该操作需要验证您的 MFA, 请先开启并配置" msgid "Reusable connection token is not allowed, global setting not enabled" msgstr "不允许使用可重复使用的连接令牌,未启用全局设置" -#: authentication/api/connection_token.py:358 +#: authentication/api/connection_token.py:375 msgid "Anonymous account is not supported for this asset" msgstr "匿名账号不支持当前资产" -#: authentication/api/connection_token.py:378 +#: authentication/api/connection_token.py:394 msgid "Account not found" msgstr "账号未找到" -#: authentication/api/connection_token.py:381 +#: authentication/api/connection_token.py:397 msgid "Permission expired" msgstr "授权已过期" -#: authentication/api/connection_token.py:412 +#: authentication/api/connection_token.py:427 msgid "ACL action is reject: {}({})" msgstr "ACL 动作是拒绝: {}({})" -#: authentication/api/connection_token.py:416 +#: authentication/api/connection_token.py:431 msgid "ACL action is review" msgstr "ACL 动作是复核" @@ -2597,11 +2613,11 @@ msgstr "无效的令牌头。符号字符串不应包含无效字符。" msgid "Invalid token or cache refreshed." msgstr "刷新的令牌或缓存无效。" -#: authentication/backends/passkey/api.py:26 +#: authentication/backends/passkey/api.py:37 msgid "Only register passkey for local user" msgstr "" -#: authentication/backends/passkey/api.py:54 +#: authentication/backends/passkey/api.py:65 msgid "Auth failed" msgstr "认证失败" @@ -2753,21 +2769,21 @@ msgstr "手机号没有设置" msgid "SSO auth closed" msgstr "SSO 认证关闭了" -#: authentication/errors/mfa.py:18 authentication/views/wecom.py:61 +#: authentication/errors/mfa.py:18 authentication/views/wecom.py:62 msgid "WeCom is already bound" msgstr "企业微信已经绑定" -#: authentication/errors/mfa.py:23 authentication/views/wecom.py:202 -#: authentication/views/wecom.py:244 +#: authentication/errors/mfa.py:23 authentication/views/wecom.py:204 +#: authentication/views/wecom.py:246 msgid "WeCom is not bound" msgstr "没有绑定企业微信" -#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:209 -#: authentication/views/dingtalk.py:251 +#: authentication/errors/mfa.py:28 authentication/views/dingtalk.py:211 +#: authentication/views/dingtalk.py:253 msgid "DingTalk is not bound" msgstr "钉钉没有绑定" -#: authentication/errors/mfa.py:33 authentication/views/feishu.py:166 +#: authentication/errors/mfa.py:33 authentication/views/feishu.py:168 msgid "FeiShu is not bound" msgstr "没有绑定飞书" @@ -2885,7 +2901,7 @@ msgstr "设置手机号码启用" msgid "Clear phone number to disable" msgstr "清空手机号码禁用" -#: authentication/middleware.py:93 settings/utils/ldap.py:679 +#: authentication/middleware.py:94 settings/utils/ldap.py:679 msgid "Authentication failed (before login check failed): {}" msgstr "认证失败 (登录前检查失败): {}" @@ -3059,7 +3075,7 @@ msgstr "邮箱" msgid "The {} cannot be empty" msgstr "{} 不能为空" -#: authentication/serializers/token.py:80 perms/serializers/permission.py:37 +#: authentication/serializers/token.py:86 perms/serializers/permission.py:37 #: perms/serializers/permission.py:58 users/serializers/user.py:98 #: users/serializers/user.py:168 msgid "Is valid" @@ -3102,12 +3118,6 @@ msgstr "启用" msgid "Delete success" msgstr "删除成功" -#: authentication/templates/authentication/_access_key_modal.html:155 -#: authentication/templates/authentication/_mfa_confirm_modal.html:53 -#: templates/_modal.html:22 tickets/const.py:44 -msgid "Close" -msgstr "关闭" - #: authentication/templates/authentication/_captcha_field.html:8 msgid "Play CAPTCHA as audio file" msgstr "语言播放验证码" @@ -3307,69 +3317,69 @@ msgstr "局域网" msgid "If you have any question, please contact the administrator" msgstr "如果有疑问或需求,请联系系统管理员" -#: authentication/views/dingtalk.py:41 +#: authentication/views/dingtalk.py:42 msgid "DingTalk Error, Please contact your system administrator" msgstr "钉钉错误,请联系系统管理员" -#: authentication/views/dingtalk.py:44 authentication/views/dingtalk.py:208 +#: authentication/views/dingtalk.py:45 authentication/views/dingtalk.py:210 msgid "DingTalk Error" msgstr "钉钉错误" -#: authentication/views/dingtalk.py:56 authentication/views/feishu.py:50 -#: authentication/views/wecom.py:57 +#: authentication/views/dingtalk.py:57 authentication/views/feishu.py:51 +#: authentication/views/wecom.py:58 msgid "" "The system configuration is incorrect. Please contact your administrator" msgstr "企业配置错误,请联系系统管理员" -#: authentication/views/dingtalk.py:60 +#: authentication/views/dingtalk.py:61 msgid "DingTalk is already bound" msgstr "钉钉已经绑定" -#: authentication/views/dingtalk.py:128 authentication/views/wecom.py:129 +#: authentication/views/dingtalk.py:129 authentication/views/wecom.py:130 msgid "Invalid user_id" msgstr "无效的 user_id" -#: authentication/views/dingtalk.py:144 +#: authentication/views/dingtalk.py:145 msgid "DingTalk query user failed" msgstr "钉钉查询用户失败" -#: authentication/views/dingtalk.py:153 +#: authentication/views/dingtalk.py:154 msgid "The DingTalk is already bound to another user" msgstr "该钉钉已经绑定其他用户" -#: authentication/views/dingtalk.py:160 +#: authentication/views/dingtalk.py:161 msgid "Binding DingTalk successfully" msgstr "绑定 钉钉 成功" -#: authentication/views/dingtalk.py:210 authentication/views/dingtalk.py:245 +#: authentication/views/dingtalk.py:212 authentication/views/dingtalk.py:247 msgid "Failed to get user from DingTalk" msgstr "从钉钉获取用户失败" -#: authentication/views/dingtalk.py:252 +#: authentication/views/dingtalk.py:254 msgid "Please login with a password and then bind the DingTalk" msgstr "请使用密码登录,然后绑定钉钉" -#: authentication/views/feishu.py:38 authentication/views/feishu.py:165 +#: authentication/views/feishu.py:39 authentication/views/feishu.py:167 msgid "FeiShu Error" msgstr "飞书错误" -#: authentication/views/feishu.py:66 +#: authentication/views/feishu.py:67 msgid "FeiShu is already bound" msgstr "飞书已经绑定" -#: authentication/views/feishu.py:107 +#: authentication/views/feishu.py:108 msgid "FeiShu query user failed" msgstr "飞书查询用户失败" -#: authentication/views/feishu.py:116 +#: authentication/views/feishu.py:117 msgid "The FeiShu is already bound to another user" msgstr "该飞书已经绑定其他用户" -#: authentication/views/feishu.py:123 +#: authentication/views/feishu.py:124 msgid "Binding FeiShu successfully" msgstr "绑定 飞书 成功" -#: authentication/views/feishu.py:167 +#: authentication/views/feishu.py:169 msgid "Failed to get user from FeiShu" msgstr "从飞书获取用户失败" @@ -3409,31 +3419,31 @@ msgstr "退出登录成功" msgid "Logout success, return login page" msgstr "退出登录成功,返回到登录页面" -#: authentication/views/wecom.py:42 +#: authentication/views/wecom.py:43 msgid "WeCom Error, Please contact your system administrator" msgstr "企业微信错误,请联系系统管理员" -#: authentication/views/wecom.py:45 authentication/views/wecom.py:201 +#: authentication/views/wecom.py:46 authentication/views/wecom.py:203 msgid "WeCom Error" msgstr "企业微信错误" -#: authentication/views/wecom.py:144 +#: authentication/views/wecom.py:145 msgid "WeCom query user failed" msgstr "企业微信查询用户失败" -#: authentication/views/wecom.py:153 +#: authentication/views/wecom.py:154 msgid "The WeCom is already bound to another user" msgstr "该企业微信已经绑定其他用户" -#: authentication/views/wecom.py:160 +#: authentication/views/wecom.py:161 msgid "Binding WeCom successfully" msgstr "绑定 企业微信 成功" -#: authentication/views/wecom.py:203 authentication/views/wecom.py:238 +#: authentication/views/wecom.py:205 authentication/views/wecom.py:240 msgid "Failed to get user from WeCom" msgstr "从企业微信获取用户失败" -#: authentication/views/wecom.py:245 +#: authentication/views/wecom.py:247 msgid "Please login with a password and then bind the WeCom" msgstr "请使用密码登录,然后绑定企业微信" @@ -3605,11 +3615,11 @@ msgstr "多对多反向是不被允许的" msgid "Is referenced by other objects and cannot be deleted" msgstr "被其他对象关联,不能删除" -#: common/exceptions.py:48 +#: common/exceptions.py:51 msgid "This action require confirm current user" msgstr "此操作需要确认当前用户" -#: common/exceptions.py:56 +#: common/exceptions.py:59 msgid "Unexpect error occur" msgstr "发生意外错误" @@ -4221,7 +4231,7 @@ msgstr "LDAP 同步设置组织为当前组织,请切换其他组织后再进 msgid "The organization have resource ({}) cannot be deleted" msgstr "组织存在资源 ({}) 不能被删除" -#: orgs/apps.py:7 rbac/tree.py:123 +#: orgs/apps.py:7 rbac/tree.py:125 msgid "App organizations" msgstr "组织管理" @@ -4547,25 +4557,25 @@ msgid "My assets" msgstr "我的资产" #: rbac/tree.py:56 terminal/models/applet/applet.py:52 -#: terminal/models/applet/applet.py:298 terminal/models/applet/host.py:29 +#: terminal/models/applet/applet.py:300 terminal/models/applet/host.py:29 #: terminal/serializers/applet.py:15 msgid "Applet" msgstr "远程应用" -#: rbac/tree.py:124 +#: rbac/tree.py:126 msgid "Ticket comment" msgstr "工单评论" -#: rbac/tree.py:125 settings/serializers/feature.py:58 +#: rbac/tree.py:127 settings/serializers/feature.py:58 #: tickets/models/ticket/general.py:307 msgid "Ticket" msgstr "工单管理" -#: rbac/tree.py:126 +#: rbac/tree.py:128 msgid "Common setting" msgstr "一般设置" -#: rbac/tree.py:127 +#: rbac/tree.py:129 msgid "View permission tree" msgstr "查看授权树" @@ -4623,38 +4633,50 @@ msgid "Can change auth setting" msgstr "认证设置" #: settings/models.py:162 +msgid "Can change auth ops" +msgstr "任务中心设置" + +#: settings/models.py:163 +msgid "Can change auth ticket" +msgstr "工单设置" + +#: settings/models.py:164 +msgid "Can change auth announcement" +msgstr "公告设置" + +#: settings/models.py:165 msgid "Can change vault setting" msgstr "可以更改 vault 设置" -#: settings/models.py:163 +#: settings/models.py:166 msgid "Can change system msg sub setting" msgstr "消息订阅设置" -#: settings/models.py:164 +#: settings/models.py:167 msgid "Can change sms setting" msgstr "短信设置" -#: settings/models.py:165 +#: settings/models.py:168 msgid "Can change security setting" msgstr "安全设置" -#: settings/models.py:166 +#: settings/models.py:169 msgid "Can change clean setting" msgstr "定期清理" -#: settings/models.py:167 +#: settings/models.py:170 msgid "Can change interface setting" msgstr "界面设置" -#: settings/models.py:168 +#: settings/models.py:171 msgid "Can change license setting" msgstr "许可证设置" -#: settings/models.py:169 +#: settings/models.py:172 msgid "Can change terminal setting" msgstr "终端设置" -#: settings/models.py:170 +#: settings/models.py:173 msgid "Can change other setting" msgstr "其它设置" @@ -6020,7 +6042,7 @@ msgstr "命令存储" msgid "Invalid" msgstr "无效" -#: terminal/api/component/storage.py:119 terminal/tasks.py:141 +#: terminal/api/component/storage.py:119 terminal/tasks.py:142 msgid "Test failure: {}" msgstr "测试失败: {}" @@ -6029,7 +6051,7 @@ msgid "Test successful" msgstr "测试成功" #: terminal/api/component/storage.py:124 terminal/notifications.py:240 -#: terminal/tasks.py:145 +#: terminal/tasks.py:146 msgid "Test failure: Account invalid" msgstr "测试失败: 账号无效" @@ -6224,7 +6246,7 @@ msgstr "只支持自定义平台" msgid "Missing type in platform.yml" msgstr "在 platform.yml 中缺少类型" -#: terminal/models/applet/applet.py:300 terminal/models/applet/host.py:35 +#: terminal/models/applet/applet.py:302 terminal/models/applet/host.py:35 #: terminal/models/applet/host.py:137 msgid "Hosting" msgstr "宿主机" @@ -6778,23 +6800,23 @@ msgstr "周期清理终端状态" msgid "Clean orphan session" msgstr "清除离线会话" -#: terminal/tasks.py:61 +#: terminal/tasks.py:62 msgid "Upload session replay to external storage" msgstr "上传会话录像到外部存储" -#: terminal/tasks.py:90 +#: terminal/tasks.py:91 msgid "Run applet host deployment" msgstr "运行应用机部署" -#: terminal/tasks.py:100 +#: terminal/tasks.py:101 msgid "Install applet" msgstr "安装应用" -#: terminal/tasks.py:111 +#: terminal/tasks.py:112 msgid "Generate applet host accounts" msgstr "收集远程应用上的账号" -#: terminal/tasks.py:123 +#: terminal/tasks.py:124 msgid "Check command replay storage connectivity" msgstr "检查命令及录像存储可连接性 " @@ -6821,6 +6843,10 @@ msgstr "没有端口可以使用,检查并修改配置文件中 Magnus 监听 msgid "All available port count: {}, Already use port count: {}" msgstr "所有可用端口数量:{},已使用端口数量:{}" +#: tickets/api/ticket.py:88 tickets/models/ticket/general.py:288 +msgid "Applicant" +msgstr "申请人" + #: tickets/apps.py:7 msgid "Tickets" msgstr "工单管理" @@ -6849,10 +6875,6 @@ msgstr "已拒绝" msgid "Closed" msgstr "关闭的" -#: tickets/const.py:46 -msgid "Approve" -msgstr "同意" - #: tickets/const.py:50 msgid "One level" msgstr "1 级" @@ -6983,6 +7005,10 @@ msgstr "运行的命令" msgid "Command filter acl" msgstr "命令过滤器" +#: tickets/models/ticket/command_confirm.py:23 +msgid "Apply Command Ticket" +msgstr "命令复核工单" + #: tickets/models/ticket/general.py:76 msgid "Ticket step" msgstr "工单步骤" @@ -6995,10 +7021,6 @@ msgstr "工单受理人" msgid "Title" msgstr "标题" -#: tickets/models/ticket/general.py:288 -msgid "Applicant" -msgstr "申请人" - #: tickets/models/ticket/general.py:292 msgid "TicketFlow" msgstr "工单流程" @@ -7031,10 +7053,18 @@ msgstr "登录资产" 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 "工单基本信息" @@ -7121,36 +7151,32 @@ msgid "Ticket information" msgstr "工单信息" #: tickets/templates/tickets/approve_check_password.html:29 -#: tickets/views/approve.py:40 +#: tickets/views/approve.py:40 tickets/views/approve.py:77 msgid "Ticket approval" msgstr "工单审批" -#: tickets/templates/tickets/approve_check_password.html:45 +#: tickets/templates/tickets/approve_check_password.html:44 msgid "Approval" msgstr "同意" -#: tickets/templates/tickets/approve_check_password.html:54 -msgid "Go Login" -msgstr "去登录" - #: tickets/views/approve.py:41 msgid "" "This ticket does not exist, the process has ended, or this link has expired" msgstr "工单不存在,或者工单流程已经结束,或者此链接已经过期" -#: tickets/views/approve.py:70 +#: tickets/views/approve.py:69 msgid "Click the button below to approve or reject" msgstr "点击下方按钮同意或者拒绝" -#: tickets/views/approve.py:72 +#: tickets/views/approve.py:78 msgid "After successful authentication, this ticket can be approved directly" msgstr "认证成功后,工单可直接审批" -#: tickets/views/approve.py:97 +#: tickets/views/approve.py:95 msgid "Illegal approval action" msgstr "无效的审批动作" -#: tickets/views/approve.py:110 +#: tickets/views/approve.py:108 msgid "This user is not authorized to approve this ticket" msgstr "此用户无权审批此工单" @@ -7937,7 +7963,7 @@ msgstr "已同步" msgid "Released" msgstr "已释放" -#: xpack/plugins/cloud/manager.py:53 +#: xpack/plugins/cloud/manager.py:54 msgid "Account unavailable" msgstr "账号无效" @@ -8030,14 +8056,12 @@ msgid "Task strategy" msgstr "任务策略" #: xpack/plugins/cloud/models.py:285 -msgid "Exact" -msgstr "" +msgid "Equal" +msgstr "等于" #: xpack/plugins/cloud/models.py:286 -#, fuzzy -#| msgid "No" -msgid "Not" -msgstr "否" +msgid "Not Equal" +msgstr "不等于" #: xpack/plugins/cloud/models.py:287 msgid "In" @@ -8446,7 +8470,7 @@ msgstr "许可证导入成功" msgid "License is invalid" msgstr "无效的许可证" -#: xpack/plugins/license/meta.py:10 xpack/plugins/license/models.py:140 +#: xpack/plugins/license/meta.py:10 xpack/plugins/license/models.py:141 msgid "License" msgstr "许可证" @@ -8465,9 +8489,3 @@ msgstr "企业专业版" #: xpack/plugins/license/models.py:86 msgid "Ultimate edition" msgstr "企业旗舰版" - -#~ msgid "Equal" -#~ msgstr "等于" - -#~ msgid "Not equal" -#~ msgstr "不等于" diff --git a/apps/tickets/models/ticket/command_confirm.py b/apps/tickets/models/ticket/command_confirm.py index f261bb147..62103eb1e 100644 --- a/apps/tickets/models/ticket/command_confirm.py +++ b/apps/tickets/models/ticket/command_confirm.py @@ -18,3 +18,6 @@ class ApplyCommandTicket(Ticket): 'acls.CommandFilterACL', on_delete=models.SET_NULL, null=True, verbose_name=_('Command filter acl') ) + + class Meta: + verbose_name = _('Apply Command Ticket') diff --git a/apps/tickets/models/ticket/login_asset_confirm.py b/apps/tickets/models/ticket/login_asset_confirm.py index ffcbf869e..ce2f7f6fd 100644 --- a/apps/tickets/models/ticket/login_asset_confirm.py +++ b/apps/tickets/models/ticket/login_asset_confirm.py @@ -22,3 +22,6 @@ class ApplyLoginAssetTicket(Ticket): return self.connection_token.is_active = True self.connection_token.save() + + class Meta: + verbose_name = _('Apply Login Asset Ticket') diff --git a/apps/tickets/models/ticket/login_confirm.py b/apps/tickets/models/ticket/login_confirm.py index 024761ac7..7b17dd1f8 100644 --- a/apps/tickets/models/ticket/login_confirm.py +++ b/apps/tickets/models/ticket/login_confirm.py @@ -10,3 +10,6 @@ class ApplyLoginTicket(Ticket): apply_login_ip = models.GenericIPAddressField(verbose_name=_('Login IP'), null=True) apply_login_city = models.CharField(max_length=64, verbose_name=_('Login city'), null=True) apply_login_datetime = models.DateTimeField(verbose_name=_('Login datetime'), null=True) + + class Meta: + verbose_name = _('Apply Login Ticket')