diff --git a/apps/locale/core/ja/LC_MESSAGES/django.po b/apps/locale/core/ja/LC_MESSAGES/django.po index 04e0a5b28..968052f73 100644 --- a/apps/locale/core/ja/LC_MESSAGES/django.po +++ b/apps/locale/core/ja/LC_MESSAGES/django.po @@ -250,9 +250,9 @@ msgstr "ユーザー %s がパスワードを閲覧/導き出しました" #: assets/models/asset/common.py:350 assets/models/cmd_filter.py:36 #: audits/models.py:58 authentication/models/connection_token.py:36 #: perms/models/asset_permission.py:69 perms/serializers/permission.py:36 -#: terminal/backends/command/models.py:17 terminal/models/session/session.py:31 -#: terminal/notifications.py:155 terminal/serializers/command.py:17 -#: terminal/serializers/session.py:26 +#: terminal/backends/command/models.py:17 +#: terminal/models/session/session.py:31 terminal/notifications.py:155 +#: terminal/serializers/command.py:17 terminal/serializers/session.py:26 #: terminal/templates/terminal/_msg_command_warning.html:4 #: terminal/templates/terminal/_msg_session_sharing.html:4 #: tickets/models/ticket/apply_asset.py:16 xpack/plugins/cloud/models.py:256 @@ -286,7 +286,8 @@ msgstr "ソース ID" #: accounts/models/account.py:61 #: accounts/serializers/automations/change_secret.py:107 #: accounts/serializers/automations/change_secret.py:127 -#: acls/serializers/base.py:124 acls/templates/acls/asset_login_reminder.html:7 +#: 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:59 authentication/api/connection_token.py:405 #: ops/models/base.py:18 perms/models/asset_permission.py:75 @@ -294,7 +295,8 @@ msgstr "ソース ID" #: terminal/models/session/session.py:33 #: terminal/templates/terminal/_msg_command_warning.html:8 #: terminal/templates/terminal/_msg_session_sharing.html:8 -#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:89 +#: tickets/models/ticket/command_confirm.py:13 +#: xpack/plugins/cloud/models.py:89 msgid "Account" msgstr "アカウント" @@ -603,9 +605,11 @@ msgstr "パスワードルール" #: ops/serializers/job.py:18 orgs/models.py:82 #: perms/models/asset_permission.py:61 rbac/models/role.py:29 #: settings/models.py:33 settings/models.py:181 settings/serializers/msg.py:82 -#: terminal/models/applet/applet.py:33 terminal/models/component/endpoint.py:12 +#: terminal/models/applet/applet.py:33 +#: terminal/models/component/endpoint.py:12 #: terminal/models/component/endpoint.py:95 -#: terminal/models/component/storage.py:26 terminal/models/component/task.py:13 +#: terminal/models/component/storage.py:26 +#: terminal/models/component/task.py:13 #: terminal/models/component/terminal.py:84 #: terminal/models/virtualapp/provider.py:10 #: terminal/models/virtualapp/virtualapp.py:19 tickets/api/ticket.py:87 @@ -668,8 +672,7 @@ msgstr "ユーザーと同じユーザー名" #: accounts/models/virtual.py:36 msgid "Non-asset account, Input username/password on connect" -msgstr "" -"アセットアカウントではない場合、接続時にユーザー名/パスワードを入力します" +msgstr "アセットアカウントではない場合、接続時にユーザー名/パスワードを入力します" #: accounts/models/virtual.py:37 msgid "The account username name same with user on connect" @@ -679,9 +682,7 @@ msgstr "接続時にユーザー名と同じユーザー名を使用します" msgid "" "Connect asset without using a username and password, and it only supports " "web-based and custom-type assets" -msgstr "" -"ユーザー名とパスワードを使用せずにアセットに接続します。Webベースとカスタムタ" -"イプのアセットのみをサポートします" +msgstr "ユーザー名とパスワードを使用せずにアセットに接続します。Webベースとカスタムタイプのアセットのみをサポートします" #: accounts/notifications.py:11 accounts/notifications.py:36 msgid "Notification of account backup route task results" @@ -691,9 +692,7 @@ msgstr "アカウントバックアップルートタスクの結果の通知" msgid "" "{} - The account backup passage task has been completed. See the attachment " "for details" -msgstr "" -"{} -アカウントバックアップの通過タスクが完了しました。詳細は添付ファイルをご" -"覧ください" +msgstr "{} -アカウントバックアップの通過タスクが完了しました。詳細は添付ファイルをご覧ください" #: accounts/notifications.py:24 msgid "" @@ -701,9 +700,8 @@ msgid "" "password has not been set - please go to personal information -> Basic file " "encryption password for preference settings" msgstr "" -"{} -アカウントのバックアップ通過タスクが完了しました: 暗号化パスワードが設定" -"されていません-個人情報にアクセスしてください-> プリファレンス設定の基本的な" -"ファイル暗号化パスワードの設定" +"{} -アカウントのバックアップ通過タスクが完了しました: 暗号化パスワードが設定されていません-個人情報にアクセスしてください-> " +"プリファレンス設定の基本的なファイル暗号化パスワードの設定" #: accounts/notifications.py:55 msgid "Notification of implementation result of encryption change plan" @@ -721,8 +719,8 @@ msgid "" "has not been set - please go to personal information -> file encryption " "password to set the encryption password" msgstr "" -"{} -暗号化変更タスクが完了しました: 暗号化パスワードが設定されていません-個人" -"情報にアクセスしてください-> ファイル暗号化パスワードを設定してください" +"{} -暗号化変更タスクが完了しました: 暗号化パスワードが設定されていません-個人情報にアクセスしてください-> " +"ファイル暗号化パスワードを設定してください" #: accounts/notifications.py:79 msgid "Gather account change information" @@ -753,9 +751,9 @@ msgstr "カテゴリ" #: assets/serializers/asset/common.py:123 assets/serializers/platform.py:120 #: assets/serializers/platform.py:139 audits/serializers.py:53 #: audits/serializers.py:170 -#: authentication/serializers/connect_token_secret.py:126 ops/models/job.py:144 -#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:39 -#: terminal/models/component/storage.py:57 +#: authentication/serializers/connect_token_secret.py:126 +#: ops/models/job.py:144 perms/serializers/user_permission.py:27 +#: terminal/models/applet/applet.py:39 terminal/models/component/storage.py:57 #: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29 #: terminal/serializers/session.py:21 terminal/serializers/storage.py:264 #: terminal/serializers/storage.py:276 tickets/models/comment.py:26 @@ -818,17 +816,19 @@ msgstr "ID" #: accounts/serializers/account/account.py:451 acls/serializers/base.py:116 #: acls/templates/acls/asset_login_reminder.html:5 #: acls/templates/acls/user_login_reminder.html:5 -#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54 -#: audits/models.py:90 audits/models.py:172 audits/models.py:269 -#: audits/serializers.py:171 authentication/models/connection_token.py:32 +#: assets/models/cmd_filter.py:24 assets/models/label.py:16 +#: audits/models.py:54 audits/models.py:90 audits/models.py:172 +#: audits/models.py:269 audits/serializers.py:171 +#: authentication/models/connection_token.py:32 #: authentication/models/sso_token.py:16 #: notifications/models/notification.py:12 #: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:63 #: perms/serializers/permission.py:32 rbac/builtin.py:124 #: rbac/models/rolebinding.py:49 rbac/serializers/rolebinding.py:17 -#: terminal/backends/command/models.py:16 terminal/models/session/session.py:29 -#: terminal/models/session/sharing.py:34 terminal/notifications.py:156 -#: terminal/notifications.py:205 terminal/serializers/command.py:16 +#: terminal/backends/command/models.py:16 +#: terminal/models/session/session.py:29 terminal/models/session/sharing.py:34 +#: terminal/notifications.py:156 terminal/notifications.py:205 +#: terminal/serializers/command.py:16 #: terminal/templates/terminal/_msg_command_warning.html:6 #: terminal/templates/terminal/_msg_session_sharing.html:6 #: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1004 @@ -877,8 +877,7 @@ msgid "" "Tip: If no username is required for authentication, fill in `null`, If AD " "account, like `username@domain`" msgstr "" -"ヒント: 認証にユーザー名が必要ない場合は、`null`を入力します。ADアカウントの" -"場合は、`username@domain`のようになります。" +"ヒント: 認証にユーザー名が必要ない場合は、`null`を入力します。ADアカウントの場合は、`username@domain`のようになります。" #: accounts/serializers/account/template.py:13 msgid "Password length" @@ -939,10 +938,8 @@ msgid "" "asset secret > Login secret > Manual input.
For security, please set " "config CACHE_LOGIN_PASSWORD_ENABLED to true" msgstr "" -"現在、AD/LDAPからのログインのみをサポートしています。シークレットの優先順位: " -"資産シークレット内の同じアカウント > ログインシークレット > 手動入力.
" -"セキュリティのために、「config CACHE_LOGIN_PASSWORD_ENABLED」をtrueに設定して" -"ください。 " +"現在、AD/LDAPからのログインのみをサポートしています。シークレットの優先順位: 資産シークレット内の同じアカウント > ログインシークレット > " +"手動入力.
セキュリティのために、「config CACHE_LOGIN_PASSWORD_ENABLED」をtrueに設定してください。 " #: accounts/serializers/automations/base.py:23 #: assets/serializers/automations/base.py:21 @@ -1053,10 +1050,9 @@ msgstr "アカウントの削除" #: accounts/utils.py:52 msgid "" -"If the password starts with {{` and ends with }} `, then the password is not " -"allowed." -msgstr "" -"パスワードが`{{`で始まり、`}}`で終わる場合、パスワードは許可されません。" +"If the password starts with {{` and ends with }} `, then the password is not" +" allowed." +msgstr "パスワードが`{{`で始まり、`}}`で終わる場合、パスワードは許可されません。" #: accounts/utils.py:59 msgid "private key invalid or passphrase error" @@ -1217,9 +1213,9 @@ msgid "" "10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64 (Domain name " "support)" msgstr "" -"* はすべて一致することを示します。例: 192.168.10.1、192.168.1.0/24、" -"10.1.1.1-10.1.1.20、2001:db8:2de::e13、2001:db8:1a:1110:::/64 (ドメイン名サ" -"ポート)" +"* はすべて一致することを示します。例: " +"192.168.10.1、192.168.1.0/24、10.1.1.1-10.1.1.20、2001:db8:2de::e13、2001:db8:1a:1110:::/64" +" (ドメイン名サポート)" #: acls/serializers/base.py:41 assets/serializers/asset/host.py:19 msgid "IP/Host" @@ -1247,8 +1243,8 @@ msgid "" "With * indicating a match all. Such as: 192.168.10.1, 192.168.1.0/24, " "10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64 " msgstr "" -"* はすべて一致することを示します。例: 192.168.10.1、192.168.1.0/24、" -"10.1.1.1-10.1.1.20、2001:db8:2de::e13、2001:db8:1a:1110::/64" +"* はすべて一致することを示します。例: " +"192.168.10.1、192.168.1.0/24、10.1.1.1-10.1.1.20、2001:db8:2de::e13、2001:db8:1a:1110::/64" #: acls/serializers/rules/rules.py:33 #: authentication/templates/authentication/_msg_oauth_bind.html:12 @@ -1273,8 +1269,7 @@ msgid "" "authorized operation. If you suspect that this is an unauthorized access, " "please take appropriate measures immediately." msgstr "" -"ユーザーは資産にログインしています。許可されたアクションであることを確認して" -"ください。不正アクセスが疑われる場合は、すぐに適切な措置を取ってください。" +"ユーザーは資産にログインしています。許可されたアクションであることを確認してください。不正アクセスが疑われる場合は、すぐに適切な措置を取ってください。" #: acls/templates/acls/asset_login_reminder.html:12 #: acls/templates/acls/user_login_reminder.html:13 @@ -1296,12 +1291,10 @@ msgstr "ユーザーエージェント" #: acls/templates/acls/user_login_reminder.html:11 msgid "" "The user has just successfully logged into the system. Please ensure that " -"this is an authorized operation. If you suspect that this is an unauthorized " -"access, please take appropriate measures immediately." +"this is an authorized operation. If you suspect that this is an unauthorized" +" access, please take appropriate measures immediately." msgstr "" -"ユーザーはシステムに正常にログインしたばかりです。許可されたアクションである" -"ことを確認してください。不正アクセスが疑われる場合は、すぐに適切な措置を取っ" -"てください。" +"ユーザーはシステムに正常にログインしたばかりです。許可されたアクションであることを確認してください。不正アクセスが疑われる場合は、すぐに適切な措置を取ってください。" #: applications/apps.py:9 msgid "Applications" @@ -1322,9 +1315,7 @@ msgstr "アプリケーションを一致させることができます" #: assets/api/asset/asset.py:179 msgid "Cannot create asset directly, you should create a host or other" -msgstr "" -"資産を直接作成することはできません。ホストまたはその他を作成する必要がありま" -"す" +msgstr "資産を直接作成することはできません。ホストまたはその他を作成する必要があります" #: assets/api/domain.py:64 msgid "Number required" @@ -1495,9 +1486,7 @@ msgid "" "account username
- ${HOME} The home directory of the connected account " "
- ${USER} The username of the user" msgstr "" -"SFTPルートディレクトリ、サポート変数:
-${ACCOUNT}接続されたアカウントの" -"ユーザー名
-${HOME}接続されたアカウントのホームディレクトリ
-${USER}" -"ユーザーのユーザー名" +"SFTPルートディレクトリ、サポート変数:
-${ACCOUNT}接続されたアカウントのユーザー名
-${HOME}接続されたアカウントのホームディレクトリ
-${USER}ユーザーのユーザー名" #: assets/const/protocol.py:66 msgid "Console" @@ -1577,9 +1566,7 @@ msgstr "安全モード" msgid "" "When safe mode is enabled, some operations will be disabled, such as: New " "tab, right click, visit other website, etc." -msgstr "" -"安全モードが有効になっている場合、新しいタブ、右クリック、他のウェブサイトへ" -"のアクセスなど、一部の操作が無効になります" +msgstr "安全モードが有効になっている場合、新しいタブ、右クリック、他のウェブサイトへのアクセスなど、一部の操作が無効になります" #: assets/const/protocol.py:229 assets/models/asset/web.py:9 #: assets/serializers/asset/info/spec.py:16 @@ -2061,9 +2048,7 @@ msgstr "%(value)s は偶数ではありません" msgid "" "Batch update platform in assets, skipping assets that do not meet platform " "type" -msgstr "" -"プラットフォームタイプがスキップされた資産に合致しない、資産内の一括更新プ" -"ラットフォーム" +msgstr "プラットフォームタイプがスキップされた資産に合致しない、資産内の一括更新プラットフォーム" #: assets/serializers/asset/common.py:124 assets/serializers/platform.py:141 #: authentication/serializers/connect_token_secret.py:30 @@ -2106,11 +2091,10 @@ msgstr "デフォルト・データベース" #: assets/serializers/asset/gpt.py:20 msgid "" -"If the server cannot directly connect to the API address, you need set up an " -"HTTP proxy. e.g. http(s)://host:port" +"If the server cannot directly connect to the API address, you need set up an" +" HTTP proxy. e.g. http(s)://host:port" msgstr "" -"サーバーが API アドレスに直接接続できない場合は、HTTP プロキシを設定する必要" -"があります。例: http(s)://host:port" +"サーバーが API アドレスに直接接続できない場合は、HTTP プロキシを設定する必要があります。例: http(s)://host:port" #: assets/serializers/asset/gpt.py:24 msgid "HTTP proxy" @@ -2210,9 +2194,7 @@ msgstr "アドレスからのポート" msgid "" "This protocol is primary, and it must be set when adding assets. " "Additionally, there can only be one primary protocol." -msgstr "" -"このプロトコルはプライマリであり、資産を追加するときに設定する必要がありま" -"す。また、プライマリプロトコルは1つしかありません" +msgstr "このプロトコルはプライマリであり、資産を追加するときに設定する必要があります。また、プライマリプロトコルは1つしかありません" #: assets/serializers/platform.py:67 msgid "This protocol is required, and it must be set when adding assets." @@ -2222,14 +2204,11 @@ msgstr "このプロトコルは必須であり、資産を追加するときに msgid "" "This protocol is default, when adding assets, it will be displayed by " "default." -msgstr "" -"このプロトコルはデフォルトです。資産を追加するときに、デフォルトで表示されま" -"す" +msgstr "このプロトコルはデフォルトです。資産を追加するときに、デフォルトで表示されます" #: assets/serializers/platform.py:73 msgid "This protocol is public, asset will show this protocol to user" -msgstr "" -"このプロトコルは公開されており、資産はこのプロトコルをユーザーに表示します" +msgstr "このプロトコルは公開されており、資産はこのプロトコルをユーザーに表示します" #: assets/serializers/platform.py:122 msgid "Help text" @@ -2285,10 +2264,9 @@ msgstr "ノード下のアセット数を確認する" #: assets/tasks/nodes_amount.py:28 msgid "" -"The task of self-checking is already running and cannot be started repeatedly" -msgstr "" -"セルフチェックのタスクはすでに実行されており、繰り返し開始することはできませ" -"ん" +"The task of self-checking is already running and cannot be started " +"repeatedly" +msgstr "セルフチェックのタスクはすでに実行されており、繰り返し開始することはできません" #: assets/tasks/nodes_amount.py:33 msgid "Periodic check the amount of assets under the node" @@ -2328,7 +2306,8 @@ msgid "Audits" msgstr "監査" #: audits/backends/db.py:16 -msgid "The text content is too long. Use Elasticsearch to store operation logs" +msgid "" +"The text content is too long. Use Elasticsearch to store operation logs" msgstr "文章の内容が長すぎる。Elasticsearchで操作履歴を保存する" #: audits/backends/db.py:91 @@ -2408,8 +2387,8 @@ msgstr "閉じる" #: audits/const.py:43 settings/serializers/terminal.py:6 #: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:174 -#: terminal/models/virtualapp/provider.py:14 terminal/serializers/session.py:52 -#: terminal/serializers/session.py:66 +#: terminal/models/virtualapp/provider.py:14 +#: terminal/serializers/session.py:52 terminal/serializers/session.py:66 msgid "Terminal" msgstr "ターミナル" @@ -2447,7 +2426,8 @@ msgid "Job audit log" msgstr "ジョブ監査ログ" #: audits/models.py:56 audits/models.py:100 audits/models.py:175 -#: terminal/models/session/session.py:38 terminal/models/session/sharing.py:113 +#: terminal/models/session/session.py:38 +#: terminal/models/session/sharing.py:113 msgid "Remote addr" msgstr "リモートaddr" @@ -2666,9 +2646,7 @@ msgstr "この操作には、MFAを検証する必要があります" #: authentication/api/connection_token.py:260 msgid "Reusable connection token is not allowed, global setting not enabled" -msgstr "" -"再使用可能な接続トークンの使用は許可されていません。グローバル設定は有効に" -"なっていません" +msgstr "再使用可能な接続トークンの使用は許可されていません。グローバル設定は有効になっていません" #: authentication/api/connection_token.py:374 msgid "Anonymous account is not supported for this asset" @@ -2707,9 +2685,7 @@ msgstr "ユーザーにマッチしなかった" msgid "" "The user is from {}, please go to the corresponding system to change the " "password" -msgstr "" -"ユーザーは {}からです。対応するシステムにアクセスしてパスワードを変更してくだ" -"さい。" +msgstr "ユーザーは {}からです。対応するシステムにアクセスしてパスワードを変更してください。" #: authentication/api/password.py:67 #: authentication/templates/authentication/login.html:361 @@ -2740,8 +2716,7 @@ msgstr "無効なトークンヘッダー。記号文字列にはスペースを #: authentication/backends/drf.py:59 msgid "" "Invalid token header. Sign string should not contain invalid characters." -msgstr "" -"無効なトークンヘッダー。署名文字列に無効な文字を含めることはできません。" +msgstr "無効なトークンヘッダー。署名文字列に無効な文字を含めることはできません。" #: authentication/backends/drf.py:72 msgid "Invalid token or cache refreshed." @@ -2840,34 +2815,27 @@ msgid "" "You can also try {times_try} times (The account will be temporarily locked " "for {block_time} minutes)" msgstr "" -"入力したユーザー名またはパスワードが正しくありません。再度入力してください。 " -"{times_try} 回試すこともできます (アカウントは {block_time} 分の間一時的に" -"ロックされます)" +"入力したユーザー名またはパスワードが正しくありません。再度入力してください。 {times_try} 回試すこともできます (アカウントは " +"{block_time} 分の間一時的にロックされます)" #: authentication/errors/const.py:47 authentication/errors/const.py:55 msgid "" "The account has been locked (please contact admin to unlock it or try again " "after {} minutes)" -msgstr "" -"アカウントがロックされています (管理者に連絡してロックを解除するか、 {} 分後" -"にもう一度お試しください)" +msgstr "アカウントがロックされています (管理者に連絡してロックを解除するか、 {} 分後にもう一度お試しください)" #: authentication/errors/const.py:51 msgid "" "The address has been locked (please contact admin to unlock it or try again " "after {} minutes)" -msgstr "" -"IP がロックされています (管理者に連絡してロックを解除するか、{} 分後に再試行" -"してください)" +msgstr "IP がロックされています (管理者に連絡してロックを解除するか、{} 分後に再試行してください)" #: authentication/errors/const.py:59 #, python-brace-format msgid "" -"{error}, You can also try {times_try} times (The account will be temporarily " -"locked for {block_time} minutes)" -msgstr "" -"{error},{times_try} 回も試すことができます (アカウントは {block_time} 分の間" -"一時的にロックされます)" +"{error}, You can also try {times_try} times (The account will be temporarily" +" locked for {block_time} minutes)" +msgstr "{error},{times_try} 回も試すことができます (アカウントは {block_time} 分の間一時的にロックされます)" #: authentication/errors/const.py:63 msgid "MFA required" @@ -2950,8 +2918,7 @@ msgstr "ログインする前にパスワードを変更する必要がありま #: authentication/errors/redirect.py:101 authentication/mixins.py:337 msgid "Your password has expired, please reset before logging in" -msgstr "" -"パスワードの有効期限が切れました。ログインする前にリセットしてください。" +msgstr "パスワードの有効期限が切れました。ログインする前にリセットしてください。" #: authentication/forms.py:45 msgid "{} days auto login" @@ -2992,8 +2959,7 @@ msgstr "カスタム MFA 検証コード" #: authentication/mfa/custom.py:56 msgid "MFA custom global enabled, cannot disable" -msgstr "" -"カスタム MFA はグローバルに有効になっており、無効にすることはできません" +msgstr "カスタム MFA はグローバルに有効になっており、無効にすることはできません" #: authentication/mfa/otp.py:7 msgid "OTP code invalid, or server time error" @@ -3059,9 +3025,7 @@ msgstr "無効なユーザーです" msgid "" "The administrator has enabled 'Only allow login from user source'. \n" " The current user source is {}. Please contact the administrator." -msgstr "" -"管理者は「ユーザーソースからのみログインを許可」をオンにしており、現在のユー" -"ザーソースは {} です。管理者に連絡してください。" +msgstr "管理者は「ユーザーソースからのみログインを許可」をオンにしており、現在のユーザーソースは {} です。管理者に連絡してください。" #: authentication/mixins.py:273 msgid "The MFA type ({}) is not enabled" @@ -3332,9 +3296,7 @@ msgstr "ログイン時間" msgid "" "If you suspect that the login behavior is abnormal, please modify the " "account password in time." -msgstr "" -"ログイン動作が異常であると疑われる場合は、時間内にアカウントのパスワードを変" -"更してください。" +msgstr "ログイン動作が異常であると疑われる場合は、時間内にアカウントのパスワードを変更してください。" #: authentication/templates/authentication/_msg_oauth_bind.html:6 msgid "Your account has just been bound to" @@ -3348,9 +3310,7 @@ msgstr "操作が独自のものでない場合は、パスワードをバイン msgid "" "Please click the link below to reset your password, if not your request, " "concern your account security" -msgstr "" -"下のリンクをクリックしてパスワードをリセットしてください。リクエストがない場" -"合は、アカウントのセキュリティに関係します。" +msgstr "下のリンクをクリックしてパスワードをリセットしてください。リクエストがない場合は、アカウントのセキュリティに関係します。" #: authentication/templates/authentication/_msg_reset_password.html:10 msgid "Click here reset password" @@ -3395,9 +3355,7 @@ msgstr "ブラウザ" msgid "" "If the password update was not initiated by you, your account may have " "security issues" -msgstr "" -"パスワードの更新が開始されなかった場合、アカウントにセキュリティ上の問題があ" -"る可能性があります" +msgstr "パスワードの更新が開始されなかった場合、アカウントにセキュリティ上の問題がある可能性があります" #: authentication/templates/authentication/_msg_rest_password_success.html:14 #: authentication/templates/authentication/_msg_rest_public_key_success.html:14 @@ -3412,9 +3370,7 @@ msgstr "公開鍵が正常に更新されました" msgid "" "If the public key update was not initiated by you, your account may have " "security issues" -msgstr "" -"公開鍵の更新が開始されなかった場合、アカウントにセキュリティ上の問題がある可" -"能性があります" +msgstr "公開鍵の更新が開始されなかった場合、アカウントにセキュリティ上の問題がある可能性があります" #: authentication/templates/authentication/auth_fail_flash_message_standalone.html:28 #: templates/flash_message_standalone.html:28 tickets/const.py:17 @@ -3425,9 +3381,7 @@ msgstr "キャンセル" msgid "" "Configuration file has problems and cannot be logged in. Please contact the " "administrator or view latest docs" -msgstr "" -"設定ファイルに問題があり、ログインできません。管理者に連絡するか、最新のド" -"キュメントを参照してください。" +msgstr "設定ファイルに問題があり、ログインできません。管理者に連絡するか、最新のドキュメントを参照してください。" #: authentication/templates/authentication/login.html:277 msgid "If you are administrator, you can update the config resolve it, set" @@ -3473,9 +3427,7 @@ msgstr "コピー成功" msgid "" "This page is not served over HTTPS. Please use HTTPS to ensure security of " "your credentials." -msgstr "" -"このページはHTTPSで提供されていません。HTTPSを使用して、資格情報のセキュリ" -"ティを確保してください。" +msgstr "このページはHTTPSで提供されていません。HTTPSを使用して、資格情報のセキュリティを確保してください。" #: authentication/templates/authentication/passkey.html:173 msgid "Do you want to retry ?" @@ -3701,13 +3653,12 @@ msgstr "Secret Keyを使用したフィールドの暗号化" #: common/db/fields.py:573 msgid "" -"Invalid JSON data for JSONManyToManyField, should be like {'type': 'all'} or " -"{'type': 'ids', 'ids': []} or {'type': 'attrs', 'attrs': [{'name': 'ip', " +"Invalid JSON data for JSONManyToManyField, should be like {'type': 'all'} or" +" {'type': 'ids', 'ids': []} or {'type': 'attrs', 'attrs': [{'name': 'ip', " "'match': 'exact', 'value': '1.1.1.1'}}" msgstr "" -"JSON言語多对多字段无效,应为 #「タイプ」:「すべて」#「すべて」或 " -"{'type':'ids','ids':[]}或 #タイプ:属性、属性:[#名前:ip、照合:正確、" -"値:1.1.1.1}" +"JSON言語多对多字段无效,应为 #「タイプ」:「すべて」#「すべて」或 {'type':'ids','ids':[]}或 " +"#タイプ:属性、属性:[#名前:ip、照合:正確、値:1.1.1.1}" #: common/db/fields.py:580 msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\"" @@ -3773,9 +3724,7 @@ msgstr "無効 excel 書類" msgid "" "{} - The encryption password has not been set - please go to personal " "information -> file encryption password to set the encryption password" -msgstr "" -"{} - 暗号化パスワードが設定されていません-個人情報->ファイル暗号化パスワード" -"に暗号化パスワードを設定してください" +msgstr "{} - 暗号化パスワードが設定されていません-個人情報->ファイル暗号化パスワードに暗号化パスワードを設定してください" #: common/exceptions.py:15 #, python-format @@ -3977,16 +3926,13 @@ msgid "" "configure nginx for url distribution, If you see this page, " "prove that you are not accessing the nginx listening port. Good luck." msgstr "" -"
Lunaは個別にデプロイされたプログラムです。Luna、kokoをデプロイする必要" -"があります。urlディストリビューションにnginxを設定します。
この" -"ページが表示されている場合は、nginxリスニングポートにアクセスしていないことを" -"証明してください。頑張ってください。" +"
" +"Lunaは個別にデプロイされたプログラムです。Luna、kokoをデプロイする必要があります。urlディストリビューションにnginxを設定します。
" +" このページが表示されている場合は、nginxリスニングポートにアクセスしていないことを証明してください。頑張ってください。" #: jumpserver/views/other.py:70 msgid "Websocket server run on port: {}, you should proxy it on nginx" -msgstr "" -"Websocket サーバーはport: {}で実行されます。nginxでプロキシする必要がありま" -"す。" +msgstr "Websocket サーバーはport: {}で実行されます。nginxでプロキシする必要があります。" #: jumpserver/views/other.py:84 msgid "" @@ -3994,10 +3940,8 @@ msgid "" "configure nginx for url distribution, If you see this page, " "prove that you are not accessing the nginx listening port. Good luck." msgstr "" -"
Kokoは個別にデプロイされているプログラムです。Kokoをデプロイする必要が" -"あります。URL配布用にnginxを設定します。
このページが表示されて" -"いる場合は、nginxリスニングポートにアクセスしていないことを証明してください。" -"頑張ってください。" +"
Kokoは個別にデプロイされているプログラムです。Kokoをデプロイする必要があります。URL配布用にnginxを設定します。
" +" このページが表示されている場合は、nginxリスニングポートにアクセスしていないことを証明してください。頑張ってください。" #: labels/models.py:36 msgid "Resource ID" @@ -4005,7 +3949,7 @@ msgstr "リソースID" #: labels/models.py:41 msgid "Labeled resource" -msgstr "" +msgstr "関連リソース" #: labels/serializers.py:22 msgid "Resource count" @@ -4075,9 +4019,7 @@ msgstr "重複したファイルが存在する" #, python-brace-format msgid "" "File size exceeds maximum limit. Please select a file smaller than {limit}MB" -msgstr "" -"ファイルサイズが最大制限を超えています。{limit}MB より小さいファイルを選択し" -"てください。" +msgstr "ファイルサイズが最大制限を超えています。{limit}MB より小さいファイルを選択してください。" #: ops/api/playbook.py:39 msgid "Currently playbook is being used in a job" @@ -4185,7 +4127,7 @@ msgstr "SQLServer" #: ops/const.py:56 ops/const.py:68 msgid "Raw" -msgstr "" +msgstr "Raw" #: ops/const.py:64 msgid "MariaDB" @@ -4465,8 +4407,7 @@ msgstr "現在の組織 ({}) は削除できません" msgid "" "LDAP synchronization is set to the current organization. Please switch to " "another organization before deleting" -msgstr "" -"LDAP 同期は現在の組織に設定されます。削除する前に別の組織に切り替えてください" +msgstr "LDAP 同期は現在の組織に設定されます。削除する前に別の組織に切り替えてください" #: orgs/api.py:77 msgid "The organization have resource ({}) cannot be deleted" @@ -4481,7 +4422,8 @@ msgstr "アプリ組織" #: rbac/serializers/rolebinding.py:44 settings/serializers/auth/ldap.py:63 #: terminal/templates/terminal/_msg_command_warning.html:21 #: terminal/templates/terminal/_msg_session_sharing.html:14 -#: tickets/models/ticket/general.py:302 tickets/serializers/ticket/ticket.py:60 +#: tickets/models/ticket/general.py:302 +#: tickets/serializers/ticket/ticket.py:60 msgid "Organization" msgstr "組織" @@ -4758,8 +4700,7 @@ msgstr "全ての組織" msgid "" "User last role in org, can not be delete, you can remove user from org " "instead" -msgstr "" -"ユーザーの最後のロールは削除できません。ユーザーを組織から削除できます。" +msgstr "ユーザーの最後のロールは削除できません。ユーザーを組織から削除できます。" #: rbac/models/rolebinding.py:197 msgid "Organization role binding" @@ -4874,9 +4815,7 @@ msgstr "{}に送信されたテストメールを確認してください" #: settings/api/ldap.py:101 msgid "" "Users are not synchronized, please click the user synchronization button" -msgstr "" -"ユーザーは同期されていません。「ユーザーを同期」ボタンをクリックしてくださ" -"い。" +msgstr "ユーザーは同期されていません。「ユーザーを同期」ボタンをクリックしてください。" #: settings/api/ldap.py:137 msgid "Get ldap users is None" @@ -5111,11 +5050,11 @@ msgstr "ユーザー属性マッピング" #: settings/serializers/auth/ldap.py:59 msgid "" -"User attr map present how to map LDAP user attr to jumpserver, username,name," -"email is jumpserver attr" +"User attr map present how to map LDAP user attr to jumpserver, " +"username,name,email is jumpserver attr" msgstr "" -"ユーザー属性マッピングは、LDAPのユーザー属性をjumpserverユーザーにマッピング" -"する方法、username, name,emailはjumpserverのユーザーが必要とする属性です" +"ユーザー属性マッピングは、LDAPのユーザー属性をjumpserverユーザーにマッピングする方法、username, " +"name,emailはjumpserverのユーザーが必要とする属性です" #: settings/serializers/auth/ldap.py:77 msgid "Connect timeout (s)" @@ -5197,11 +5136,11 @@ msgstr "Ssl検証を無視する" #: settings/serializers/auth/oidc.py:38 msgid "" -"User attr map present how to map OpenID user attr to jumpserver, username," -"name,email is jumpserver attr" +"User attr map present how to map OpenID user attr to jumpserver, " +"username,name,email is jumpserver attr" msgstr "" -"ユーザー属性マッピングは、OpenIDのユーザー属性をjumpserverユーザーにマッピン" -"グする方法、username, name,emailはjumpserverのユーザーが必要とする属性です" +"ユーザー属性マッピングは、OpenIDのユーザー属性をjumpserverユーザーにマッピングする方法、username, " +"name,emailはjumpserverのユーザーが必要とする属性です" #: settings/serializers/auth/oidc.py:41 msgid "Enable PKCE" @@ -5276,9 +5215,7 @@ msgid "" "The hostname can using passkey auth, If not set, will use request host and " "the request host in DOMAINS, If multiple domains, use comma to separate" msgstr "" -"パスキー認証を使用できるホスト名、設定されていない場合は、リクエストホストと" -"DOMAINSのリクエストホストを使用します。複数のドメインの場合は、カンマで区切り" -"ます" +"パスキー認証を使用できるホスト名、設定されていない場合は、リクエストホストとDOMAINSのリクエストホストを使用します。複数のドメインの場合は、カンマで区切ります" #: settings/serializers/auth/passkey.py:22 msgid "FIDO server name" @@ -5382,13 +5319,11 @@ msgstr "ビジネス・タイプ(Service id)" #: settings/serializers/auth/sms.py:80 #, python-brace-format msgid "" -"Template need contain {code} and Signature + template length does not exceed " -"67 words. For example, your verification code is {code}, which is valid for " -"5 minutes. Please do not disclose it to others." +"Template need contain {code} and Signature + template length does not exceed" +" 67 words. For example, your verification code is {code}, which is valid for" +" 5 minutes. Please do not disclose it to others." msgstr "" -"テンプレートには{code}を含める必要があり、署名+テンプレートの長さは67ワード未" -"満です。たとえば、認証コードは{code}で、有効期間は5分です。他の人には言わない" -"でください。" +"テンプレートには{code}を含める必要があり、署名+テンプレートの長さは67ワード未満です。たとえば、認証コードは{code}で、有効期間は5分です。他の人には言わないでください。" #: settings/serializers/auth/sms.py:89 #, python-brace-format @@ -5413,8 +5348,7 @@ msgstr "SSO Token認証の有効化" #: settings/serializers/auth/sso.py:17 msgid "Other service can using SSO token login to JumpServer without password" -msgstr "" -"他のサービスはパスワードなしでJumpServerへのSSOトークンログインを使用できます" +msgstr "他のサービスはパスワードなしでJumpServerへのSSOトークンログインを使用できます" #: settings/serializers/auth/sso.py:20 msgid "SSO auth key TTL" @@ -5438,8 +5372,7 @@ msgid "" "External URL, email links or other system callbacks are used to access it, " "eg: http://dev.jumpserver.org:8080" msgstr "" -"外部URL、メールリンクまたは他のシステムコールバックにアクセスするには、" -"http://dev.jumpserver.org:8080などを使用します" +"外部URL、メールリンクまたは他のシステムコールバックにアクセスするには、http://dev.jumpserver.org:8080などを使用します" #: settings/serializers/basic.py:18 msgid "User guide url" @@ -5518,8 +5451,7 @@ msgid "" "Session, record, command will be delete if more than duration, only in " "database, OSS will not be affected." msgstr "" -"この期間を超えるセッション、録音、およびコマンド レコードは削除されます (デー" -"タベースのバックアップに影響し、OSS などには影響しません)" +"この期間を超えるセッション、録音、およびコマンド レコードは削除されます (データベースのバックアップに影響し、OSS などには影響しません)" #: settings/serializers/feature.py:18 msgid "Subject" @@ -5552,13 +5484,12 @@ msgstr "保持されている過去のアカウントの数" #: settings/serializers/feature.py:62 msgid "" "If the specific value is less than 999, the system will automatically " -"perform a task every night: check and delete historical accounts that exceed " -"the predetermined number. If the value reaches or exceeds 999, no historical " -"account deletion will be performed." +"perform a task every night: check and delete historical accounts that exceed" +" the predetermined number. If the value reaches or exceeds 999, no " +"historical account deletion will be performed." msgstr "" -"特定の値が 999 未満の場合、システムは毎晩自動的にタスクを実行します。つまり、" -"所定の数を超える履歴アカウントを確認して削除します。 値が 999 以上の場合、履" -"歴アカウントの削除は実行されません。" +"特定の値が 999 未満の場合、システムは毎晩自動的にタスクを実行します。つまり、所定の数を超える履歴アカウントを確認して削除します。 値が 999 " +"以上の場合、履歴アカウントの削除は実行されません。" #: settings/serializers/feature.py:71 msgid "Chat AI" @@ -5654,9 +5585,7 @@ msgstr "ユーザーを送信" #: settings/serializers/msg.py:33 msgid "Tips: Send mail account, default SMTP account as the send account" -msgstr "" -"ヒント: 送信メールアカウント、送信アカウントとしてのデフォルトのSMTPアカウン" -"ト" +msgstr "ヒント: 送信メールアカウント、送信アカウントとしてのデフォルトのSMTPアカウント" #: settings/serializers/msg.py:36 msgid "Test recipient" @@ -5697,11 +5626,9 @@ msgstr "ユーザーメール件名の作成" #: settings/serializers/msg.py:62 msgid "" -"Tips: When creating a user, send the subject of the email (eg:Create account " -"successfully)" -msgstr "" -"ヒント: ユーザーを作成するときに、メールの件名を送信します (例: アカウントを" -"正常に作成)" +"Tips: When creating a user, send the subject of the email (eg:Create account" +" successfully)" +msgstr "ヒント: ユーザーを作成するときに、メールの件名を送信します (例: アカウントを正常に作成)" #: settings/serializers/msg.py:66 msgid "Create user honorific" @@ -5709,8 +5636,7 @@ msgstr "ユーザー敬語の作成" #: settings/serializers/msg.py:67 msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)" -msgstr "" -"ヒント: ユーザーを作成するときは、メールの敬語を送信します (例: こんにちは)" +msgstr "ヒント: ユーザーを作成するときは、メールの敬語を送信します (例: こんにちは)" #: settings/serializers/msg.py:71 msgid "Create user email content" @@ -5721,9 +5647,7 @@ msgstr "ユーザーのメールコンテンツを作成する" msgid "" "Tips: When creating a user, send the content of the email, support " "{username} {name} {email} label" -msgstr "" -"ヒント:ユーザーの作成時にパスワード設定メールの内容を送信し、{username}{name}" -"{email}ラベルをサポートします。" +msgstr "ヒント:ユーザーの作成時にパスワード設定メールの内容を送信し、{username}{name}{email}ラベルをサポートします。" #: settings/serializers/msg.py:77 msgid "Tips: Email signature (eg:jumpserver)" @@ -5740,9 +5664,7 @@ msgstr "グループ化されていないノードを表示" #: settings/serializers/other.py:12 msgid "Perm single to ungroup node" msgstr "" -"グループ化されていないノードに個別に許可された資産を配置し、資産が存在する" -"ノードが表示されないようにしますが、そのノードが許可されていないという質問に" -"質問" +"グループ化されていないノードに個別に許可された資産を配置し、資産が存在するノードが表示されないようにしますが、そのノードが許可されていないという質問に質問" #: settings/serializers/security.py:17 msgid "User password expiration (day)" @@ -5754,10 +5676,8 @@ msgid "" "will expire failure;The password expiration reminder mail will be automatic " "sent to the user by system within 5 days (daily) before the password expires" msgstr "" -"ユーザーがその期間中にパスワードを更新しなかった場合、ユーザーパスワードの有" -"効期限が切れます。パスワードの有効期限が切れる前の5日 (毎日) 以内に、パスワー" -"ドの有効期限が切れるリマインダーメールがシステムからユーザーに自動的に送信さ" -"れます。" +"ユーザーがその期間中にパスワードを更新しなかった場合、ユーザーパスワードの有効期限が切れます。パスワードの有効期限が切れる前の5日 (毎日) " +"以内に、パスワードの有効期限が切れるリマインダーメールがシステムからユーザーに自動的に送信されます。" #: settings/serializers/security.py:26 msgid "Number of repeated historical passwords" @@ -5767,9 +5687,7 @@ msgstr "繰り返された履歴パスワードの数" msgid "" "Tip: When the user resets the password, it cannot be the previous n " "historical passwords of the user" -msgstr "" -"ヒント: ユーザーがパスワードをリセットすると、ユーザーの前のnの履歴パスワード" -"にすることはできません" +msgstr "ヒント: ユーザーがパスワードをリセットすると、ユーザーの前のnの履歴パスワードにすることはできません" #: settings/serializers/security.py:34 msgid "Password minimum length" @@ -5799,9 +5717,7 @@ msgstr "特別な" msgid "" "If the user has failed to log in for a limited number of times, no login is " "allowed during this time interval." -msgstr "" -"ユーザーが限られた回数だけログインできなかった場合、この時間間隔ではログイン" -"はできません。" +msgstr "ユーザーが限られた回数だけログインできなかった場合、この時間間隔ではログインはできません。" #: settings/serializers/security.py:63 msgid "Limit the number of user login failures" @@ -5835,9 +5751,7 @@ msgstr "単一デバイスログインのみ" msgid "" "After the user logs in on the new device, other logged-in devices will " "automatically log out" -msgstr "" -"ユーザーが新しいデバイスにログインすると、ログインしている他のデバイスは自動" -"的にログアウトします。" +msgstr "ユーザーが新しいデバイスにログインすると、ログインしている他のデバイスは自動的にログアウトします。" #: settings/serializers/security.py:95 msgid "Only exist user login" @@ -5850,9 +5764,8 @@ msgid "" "are allowed to log in and automatically create users (if the user does not " "exist)" msgstr "" -"有効にすると、存在しないユーザーはログインできなくなります。無効にすると、" -"ローカル認証方法を除く他の認証方法のユーザーはログインでき、ユーザーが自動的" -"に作成されます (ユーザーが存在しない場合)。" +"有効にすると、存在しないユーザーはログインできなくなります。無効にすると、ローカル認証方法を除く他の認証方法のユーザーはログインでき、ユーザーが自動的に作成されます" +" (ユーザーが存在しない場合)。" #: settings/serializers/security.py:103 msgid "Only from source login" @@ -5860,14 +5773,13 @@ msgstr "ソースログインからのみ" #: settings/serializers/security.py:105 msgid "" -"If it is enabled, the user will only authenticate to the source when logging " -"in; if it is disabled, the user will authenticate all the enabled " +"If it is enabled, the user will only authenticate to the source when logging" +" in; if it is disabled, the user will authenticate all the enabled " "authentication methods in a certain order when logging in, and as long as " "one of the authentication methods is successful, they can log in directly" msgstr "" -"これが有効な場合、ユーザーはログイン時にソースに対してのみ認証されます。無効" -"な場合、ユーザーはログイン時に、いずれかの認証方法が成功する限り、有効なすべ" -"ての認証方法を特定の順序で認証します。 、直接ログインできます" +"これが有効な場合、ユーザーはログイン時にソースに対してのみ認証されます。無効な場合、ユーザーはログイン時に、いずれかの認証方法が成功する限り、有効なすべての認証方法を特定の順序で認証します。" +" 、直接ログインできます" #: settings/serializers/security.py:116 msgid "Not enabled" @@ -5917,8 +5829,7 @@ msgstr "ログインページのMFA" #: settings/serializers/security.py:144 msgid "Eu security regulations(GDPR) require MFA to be on the login page" -msgstr "" -"Euセキュリティ規制 (GDPR) では、MFAがログインページにある必要があります" +msgstr "Euセキュリティ規制 (GDPR) では、MFAがログインページにある必要があります" #: settings/serializers/security.py:148 msgid "Verify code TTL (second)" @@ -5936,9 +5847,7 @@ msgstr "ログイン動的コードの有効化" msgid "" "The password and additional code are sent to a third party authentication " "system for verification" -msgstr "" -"パスワードと追加コードは、検証のためにサードパーティの認証システムに送信され" -"ます" +msgstr "パスワードと追加コードは、検証のためにサードパーティの認証システムに送信されます" #: settings/serializers/security.py:158 msgid "Enable Login captcha" @@ -5954,13 +5863,11 @@ msgstr "リモートログイン保護" #: settings/serializers/security.py:164 msgid "" -"The system determines whether the login IP address belongs to a common login " -"city. If the account is logged in from a common login city, the system sends " -"a remote login reminder" +"The system determines whether the login IP address belongs to a common login" +" city. If the account is logged in from a common login city, the system " +"sends a remote login reminder" msgstr "" -"システムは、ログインIPアドレスが共通のログイン都市に属しているかどうかを判断" -"します。アカウントが共通のログイン都市からログインしている場合、システムはリ" -"モートログインリマインダーを送信します" +"システムは、ログインIPアドレスが共通のログイン都市に属しているかどうかを判断します。アカウントが共通のログイン都市からログインしている場合、システムはリモートログインリマインダーを送信します" #: settings/serializers/security.py:170 msgid "Unused user timeout (day)" @@ -5970,9 +5877,7 @@ msgstr "未使用のユーザータイムアウト(日)" msgid "" "Detect infrequent users daily and disable them if they exceed the " "predetermined time limit." -msgstr "" -"毎日、頻度の低いユーザーを検出し、予め決められた時間制限を超えた場合は無効に" -"します。" +msgstr "毎日、頻度の低いユーザーを検出し、予め決められた時間制限を超えた場合は無効にします。" #: settings/serializers/security.py:191 msgid "Enable watermark" @@ -6009,8 +5914,7 @@ msgstr "セッション共有" #: settings/serializers/security.py:209 msgid "Enabled, Allows user active session to be shared with other users" -msgstr "" -"ユーザーのアクティブなセッションを他のユーザーと共有できるようにします。" +msgstr "ユーザーのアクティブなセッションを他のユーザーと共有できるようにします。" #: settings/serializers/security.py:215 msgid "Insecure command alert" @@ -6029,7 +5933,8 @@ msgstr "複数のユーザーを使用して、分割" msgid "[%s] %s" msgstr "[%s] %s" -#: settings/serializers/terminal.py:9 terminal/models/virtualapp/provider.py:11 +#: settings/serializers/terminal.py:9 +#: terminal/models/virtualapp/provider.py:11 msgid "Hostname" msgstr "ホスト名" @@ -6045,9 +5950,7 @@ msgstr "ターミナルレジスタの有効化" msgid "" "Allow terminal register, after all terminal setup, you should disable this " "for security" -msgstr "" -"ターミナルレジスタを許可し、すべてのターミナルセットアップの後、セキュリティ" -"のためにこれを無効にする必要があります" +msgstr "ターミナルレジスタを許可し、すべてのターミナルセットアップの後、セキュリティのためにこれを無効にする必要があります" #: settings/serializers/terminal.py:27 msgid "Password auth" @@ -6062,8 +5965,7 @@ msgid "" "Tips: If use other auth method, like AD/LDAP, you should disable this to " "avoid being able to log in after deleting" msgstr "" -"ヒント: AD/LDAPなどの他の認証方法を使用する場合は、サードパーティ製システムの" -"削除後にこの項目を無効にする必要があります, ログインも可能" +"ヒント: AD/LDAPなどの他の認証方法を使用する場合は、サードパーティ製システムの削除後にこの項目を無効にする必要があります, ログインも可能" #: settings/serializers/terminal.py:34 msgid "List sort by" @@ -6204,9 +6106,7 @@ msgstr "インポート" #: templates/_csv_import_modal.html:12 msgid "Download the imported template or use the exported CSV file format" -msgstr "" -"インポートしたテンプレートをダウンロードするか、エクスポートしたCSVファイル形" -"式を使用する" +msgstr "インポートしたテンプレートをダウンロードするか、エクスポートしたCSVファイル形式を使用する" #: templates/_csv_import_modal.html:13 msgid "Download the import template" @@ -6222,9 +6122,7 @@ msgstr "ファイルを選択してください" #: templates/_csv_update_modal.html:12 msgid "Download the update template or use the exported CSV file format" -msgstr "" -"更新テンプレートをダウンロードするか、エクスポートしたCSVファイル形式を使用す" -"る" +msgstr "更新テンプレートをダウンロードするか、エクスポートしたCSVファイル形式を使用する" #: templates/_csv_update_modal.html:13 msgid "Download the update template" @@ -6265,8 +6163,7 @@ msgid "" " " msgstr "" "\n" -" アカウントが期限切れになったので、管理者に連絡してくださ" -"い。 " +" アカウントが期限切れになったので、管理者に連絡してください。 " #: templates/_message.html:13 msgid "Your account will at" @@ -6280,13 +6177,11 @@ msgstr "期限切れです。" #, python-format msgid "" "\n" -" Your password has expired, please click this link update password.\n" +" Your password has expired, please click this link update password.\n" " " msgstr "" "\n" -" パスワードが期限切れになりましたので、クリックしてください " -" リンク パスワードの更新\n" +" パスワードが期限切れになりましたので、クリックしてください リンク パスワードの更新\n" " " #: templates/_message.html:30 @@ -6297,39 +6192,33 @@ msgstr "あなたのパスワードは" #, python-format msgid "" "\n" -" please click this " -"link to update your password.\n" +" please click this link to update your password.\n" " " msgstr "" "\n" -" クリックしてください リンク パスワードの更新\n" +" クリックしてください リンク パスワードの更新\n" " " #: templates/_message.html:43 #, python-format msgid "" "\n" -" Your information was incomplete. Please click this link to complete your information.\n" +" Your information was incomplete. Please click this link to complete your information.\n" " " msgstr "" "\n" -" あなたの情報が不完全なので、クリックしてください。 リンク 補完\n" +" あなたの情報が不完全なので、クリックしてください。 リンク 補完\n" " " #: templates/_message.html:56 #, python-format msgid "" "\n" -" Your ssh public key not set or expired. Please click this link to update\n" +" Your ssh public key not set or expired. Please click this link to update\n" " " msgstr "" "\n" -" SSHキーが設定されていないか無効になっている場合は、 リンク 更新\n" +" SSHキーが設定されていないか無効になっている場合は、 リンク 更新\n" " " #: templates/_mfa_login_field.html:28 @@ -6360,9 +6249,8 @@ msgid "" "JumpServer Client, currently used to launch the client, now only support " "launch RDP SSH client, The Telnet client will next" msgstr "" -"JumpServerクライアントは、現在特定のクライアントプログラムの接続資産を喚起す" -"るために使用されており、現在はRDP SSHクライアントのみをサポートしています。" -"「Telnetは将来的にサポートする" +"JumpServerクライアントは、現在特定のクライアントプログラムの接続資産を喚起するために使用されており、現在はRDP " +"SSHクライアントのみをサポートしています。「Telnetは将来的にサポートする" #: templates/resource_download.html:33 msgid "Microsoft" @@ -6376,9 +6264,7 @@ msgstr "公式" msgid "" "macOS needs to download the client to connect RDP asset, which comes with " "Windows" -msgstr "" -"MacOSは、Windowsに付属のRDPアセットを接続するためにクライアントをダウンロード" -"する必要があります" +msgstr "MacOSは、Windowsに付属のRDPアセットを接続するためにクライアントをダウンロードする必要があります" #: templates/resource_download.html:44 msgid "Windows Remote application publisher tools" @@ -6388,9 +6274,7 @@ msgstr "Windowsリモートアプリケーション発行者ツール" msgid "" "OpenSSH is a program used to connect remote applications in the Windows " "Remote Application Publisher" -msgstr "" -"OpenSSHはリモートアプリケーションをWindowsリモートアプリケーションで接続する" -"プログラムです" +msgstr "OpenSSHはリモートアプリケーションをWindowsリモートアプリケーションで接続するプログラムです" #: templates/resource_download.html:53 msgid "Offline video player" @@ -6795,7 +6679,8 @@ msgstr "セッション再生をダウンロードできます" msgid "Account id" msgstr "アカウント ID" -#: terminal/models/session/session.py:36 terminal/models/session/sharing.py:118 +#: terminal/models/session/session.py:36 +#: terminal/models/session/sharing.py:118 msgid "Login from" msgstr "ログイン元" @@ -6848,8 +6733,8 @@ msgstr "アクションパーミッション" msgid "Origin" msgstr "ソース" -#: terminal/models/session/sharing.py:42 terminal/models/session/sharing.py:100 -#: terminal/notifications.py:261 +#: terminal/models/session/sharing.py:42 +#: terminal/models/session/sharing.py:100 terminal/notifications.py:261 msgid "Session sharing" msgstr "セッション共有" @@ -6962,21 +6847,16 @@ msgstr "コア サービス アドレス" #: terminal/serializers/applet_host.py:38 msgid "" " \n" -" Tips: The application release machine communicates with the Core " -"service. \n" -" If the release machine and the Core service are on the same network " -"segment, \n" -" it is recommended to fill in the intranet address, otherwise fill in " -"the current site URL \n" +" Tips: The application release machine communicates with the Core service. \n" +" If the release machine and the Core service are on the same network segment, \n" +" it is recommended to fill in the intranet address, otherwise fill in the current site URL \n" "
\n" " eg: https://172.16.10.110 or https://dev.jumpserver.com\n" " " msgstr "" -"ヒント: アプリケーション リリース マシンは、コア サービスと通信します。リリー" -"ス マシンとコア サービスが同じネットワーク セグメント上にある場合は、イントラ" -"ネット アドレスを入力することをお勧めします。それ以外の場合は、現在のサイト " -"URL を入力します。
例: https://172.16.10.110 または https://dev." -"jumpserver.com" +"ヒント: アプリケーション リリース マシンは、コア サービスと通信します。リリース マシンとコア サービスが同じネットワーク " +"セグメント上にある場合は、イントラネット アドレスを入力することをお勧めします。それ以外の場合は、現在のサイト URL を入力します。
例: " +"https://172.16.10.110 または https://dev.jumpserver.com" #: terminal/serializers/applet_host.py:46 terminal/serializers/storage.py:208 msgid "Ignore Certificate Verification" @@ -7006,9 +6886,7 @@ msgstr "最大切断時間(ミリ秒)" msgid "" "Tips: Set the maximum duration for keeping a disconnected session active on " "the server (log off the session after 60000 milliseconds)." -msgstr "" -"ヒント:サーバー上で切断されたセッションがアクティブな状態で維持される最大時" -"間を設定します(60000ミリ秒後にセッションをログオフ)。" +msgstr "ヒント:サーバー上で切断されたセッションがアクティブな状態で維持される最大時間を設定します(60000ミリ秒後にセッションをログオフ)。" #: terminal/serializers/applet_host.py:60 msgid "RDS Remote App Logoff Time Limit (ms)" @@ -7016,11 +6894,10 @@ msgstr "RDSリモートアプリケーションのログアウト時間制限( #: terminal/serializers/applet_host.py:62 msgid "" -"Tips: Set the logoff time for RemoteApp sessions after closing all RemoteApp " -"programs (0 milliseconds, log off the session immediately)." +"Tips: Set the logoff time for RemoteApp sessions after closing all RemoteApp" +" programs (0 milliseconds, log off the session immediately)." msgstr "" -"ヒント:すべてのRemoteAppプログラムを閉じた後、RemoteAppセッションのログオフ" -"時間を設定します(0ミリ秒、セッションを即座にログオフ)。" +"ヒント:すべてのRemoteAppプログラムを閉じた後、RemoteAppセッションのログオフ時間を設定します(0ミリ秒、セッションを即座にログオフ)。" #: terminal/serializers/applet_host.py:71 terminal/serializers/terminal.py:47 #: terminal/serializers/virtualapp_provider.py:13 @@ -7029,17 +6906,13 @@ msgstr "ロードステータス" #: terminal/serializers/applet_host.py:85 msgid "" -"These accounts are used to connect to the published application, the account " -"is now divided into two types, one is dedicated to each account, each user " +"These accounts are used to connect to the published application, the account" +" is now divided into two types, one is dedicated to each account, each user " "has a private account, the other is public, when the application does not " -"support multiple open and the special has been used, the public account will " -"be used to connect" +"support multiple open and the special has been used, the public account will" +" be used to connect" msgstr "" -"これらのアカウントは、公開されたアプリケーションに接続するために使用されま" -"す。アカウントは現在、2つのタイプに分類されています。1つは、各アカウントに専" -"用のアカウントで、各ユーザーにはプライベートアカウントがあります。もう1つは公" -"開されています。アプリケーションが複数のオープンをサポートしていない場合、お" -"よび特別なものが使用されている場合、公開アカウントが使用されます。" +"これらのアカウントは、公開されたアプリケーションに接続するために使用されます。アカウントは現在、2つのタイプに分類されています。1つは、各アカウントに専用のアカウントで、各ユーザーにはプライベートアカウントがあります。もう1つは公開されています。アプリケーションが複数のオープンをサポートしていない場合、および特別なものが使用されている場合、公開アカウントが使用されます。" #: terminal/serializers/applet_host.py:92 msgid "The number of public accounts created automatically" @@ -7051,9 +6924,8 @@ msgid "" "please set the configuration item CACHE_LOGIN_PASSWORD_ENABLED=true and " "restart the service to enable it." msgstr "" -"同じアカウントを使用してホストに接続します。セキュリティ上の理由から、構成項" -"目 CACHE_LOGIN_PASSWORD_ENABLED=true を設定してサービスを再起動して有効にして" -"ください。" +"同じアカウントを使用してホストに接続します。セキュリティ上の理由から、構成項目 CACHE_LOGIN_PASSWORD_ENABLED=true " +"を設定してサービスを再起動して有効にしてください。" #: terminal/serializers/command.py:19 msgid "Session ID" @@ -7099,9 +6971,7 @@ msgstr "Oracle がリッスンするポート範囲" msgid "" "Oracle proxy server listen port is dynamic, Each additional Oracle database " "instance adds a port listener" -msgstr "" -"Oracle プロキシサーバーがリッスンするポートは動的です。追加の Oracle データ" -"ベースインスタンスはポートリスナーを追加します" +msgstr "Oracle プロキシサーバーがリッスンするポートは動的です。追加の Oracle データベースインスタンスはポートリスナーを追加します" #: terminal/serializers/endpoint.py:38 msgid "" @@ -7109,22 +6979,19 @@ msgid "" "access address of the current browser will be used (the default endpoint " "does not allow modification of the host)" msgstr "" -"アセットに接続するときにアクセスされるホスト アドレス。空の場合は、現在のブラ" -"ウザのアクセス アドレスが使用されます (デフォルトのエンドポイントではホストの" -"変更は許可されません)。" +"アセットに接続するときにアクセスされるホスト アドレス。空の場合は、現在のブラウザのアクセス アドレスが使用されます " +"(デフォルトのエンドポイントではホストの変更は許可されません)。" #: terminal/serializers/endpoint.py:64 msgid "" -"The assets within this IP range, the following endpoint will be used for the " -"connection" +"The assets within this IP range, the following endpoint will be used for the" +" connection" msgstr "このIP範囲内のアセットは、以下のエンドポイントを使用して接続されます" #: terminal/serializers/endpoint.py:65 msgid "" "If asset IP addresses under different endpoints conflict, use asset labels" -msgstr "" -"異なるエンドポイントの下に競合するアセットIPがある場合は、アセットタグを使用" -"して実装します" +msgstr "異なるエンドポイントの下に競合するアセットIPがある場合は、アセットタグを使用して実装します" #: terminal/serializers/endpoint.py:69 msgid "Asset IP" @@ -7296,16 +7163,13 @@ msgid "" "administrator to open more ports." msgstr "" "利用可能なポートと一致しません。データベースの数が、データベース プロキシ " -"サービスによって開かれたポートの数を超えた可能性があります。さらにポートを開" -"くには、管理者に連絡してください。" +"サービスによって開かれたポートの数を超えた可能性があります。さらにポートを開くには、管理者に連絡してください。" #: terminal/utils/db_port_mapper.py:113 msgid "" -"No ports can be used, check and modify the limit on the number of ports that " -"Magnus listens on in the configuration file." -msgstr "" -"使用できるポートがありません。設定ファイルで Magnus がリッスンするポート数の" -"制限を確認して変更してください. " +"No ports can be used, check and modify the limit on the number of ports that" +" Magnus listens on in the configuration file." +msgstr "使用できるポートがありません。設定ファイルで Magnus がリッスンするポート数の制限を確認して変更してください. " #: terminal/utils/db_port_mapper.py:115 msgid "All available port count: {}, Already use port count: {}" @@ -7375,9 +7239,7 @@ msgstr "チケットはすでに閉じています" msgid "" "Created by the ticket ticket title: {} ticket applicant: {} ticket " "processor: {} ticket ID: {}" -msgstr "" -"チケットのタイトル: {} チケット申請者: {} チケットプロセッサ: {} チケットID: " -"{}" +msgstr "チケットのタイトル: {} チケット申請者: {} チケットプロセッサ: {} チケットID: {}" #: tickets/handlers/base.py:85 msgid "Change field" @@ -7631,9 +7493,7 @@ msgstr "承認" #: tickets/views/approve.py:41 msgid "" "This ticket does not exist, the process has ended, or this link has expired" -msgstr "" -"このワークシートが存在しないか、ワークシートが終了したか、このリンクが無効に" -"なっています" +msgstr "このワークシートが存在しないか、ワークシートが終了したか、このリンクが無効になっています" #: tickets/views/approve.py:69 msgid "Click the button below to approve or reject" @@ -7721,8 +7581,7 @@ msgid "" "in. you can also directly bind in \"personal information -> quick " "modification -> change MFA Settings\"!" msgstr "" -"有効にすると、次回のログイン時にマルチファクタ認証バインドプロセスに入りま" -"す。(個人情報->クイック修正->MFAマルチファクタ認証の設定)で直接バインド!" +"有効にすると、次回のログイン時にマルチファクタ認証バインドプロセスに入ります。(個人情報->クイック修正->MFAマルチファクタ認証の設定)で直接バインド!" #: users/forms/profile.py:61 msgid "* Enable MFA to make the account more secure." @@ -7730,12 +7589,11 @@ msgstr "* アカウントをより安全にするためにMFAを有効にしま #: users/forms/profile.py:70 msgid "" -"In order to protect you and your company, please keep your account, password " -"and key sensitive information properly. (for example: setting complex " +"In order to protect you and your company, please keep your account, password" +" and key sensitive information properly. (for example: setting complex " "password, enabling MFA)" msgstr "" -"あなたとあなたの会社を保護するために、アカウント、パスワード、キーの機密情報" -"を適切に保管してください。(例: 複雑なパスワードの設定、MFAの有効化)" +"あなたとあなたの会社を保護するために、アカウント、パスワード、キーの機密情報を適切に保管してください。(例: 複雑なパスワードの設定、MFAの有効化)" #: users/forms/profile.py:77 msgid "Finish" @@ -7951,6 +7809,7 @@ msgid "" "remote computer to fit the window size of the client computer when the " "window is resized." msgstr "" +"ウィンドウサイズを調整したときに、クライアントコンピューターがリモートコンピューター上の内容をクライアントコンピューターのウィンドウサイズに合うように拡大または縮小するかどうかを決定します。" # msgid "" # "Determines whether the client computer should scale the content on the " @@ -8055,11 +7914,8 @@ msgstr "名前が一意ではない" #: users/signal_handlers.py:32 msgid "" "The administrator has enabled \"Only allow existing users to log in\", \n" -" and the current user is not in the user list. Please contact the " -"administrator." -msgstr "" -"管理者は「既存のユーザーのみログインを許可」をオンにしており、現在のユーザー" -"はユーザーリストにありません。管理者に連絡してください。" +" and the current user is not in the user list. Please contact the administrator." +msgstr "管理者は「既存のユーザーのみログインを許可」をオンにしており、現在のユーザーはユーザーリストにありません。管理者に連絡してください。" #: users/tasks.py:25 msgid "Check password expired" @@ -8093,8 +7949,7 @@ msgstr "アカウントの有効期限は" msgid "" "In order not to affect your normal work, please contact the administrator " "for confirmation." -msgstr "" -"通常の作業に影響を与えないように、確認のために管理者に連絡してください。" +msgstr "通常の作業に影響を与えないように、確認のために管理者に連絡してください。" #: users/templates/users/_msg_password_expire_reminder.html:7 msgid "Your password will expire in" @@ -8104,9 +7959,7 @@ msgstr "パスワードは" msgid "" "For your account security, please click on the link below to update your " "password in time" -msgstr "" -"アカウントのセキュリティについては、下のリンクをクリックしてパスワードを時間" -"内に更新してください" +msgstr "アカウントのセキュリティについては、下のリンクをクリックしてパスワードを時間内に更新してください" #: users/templates/users/_msg_password_expire_reminder.html:11 msgid "Click here update password" @@ -8114,8 +7967,7 @@ msgstr "ここをクリック更新パスワード" #: users/templates/users/_msg_password_expire_reminder.html:16 msgid "If your password has expired, please click the link below to" -msgstr "" -"パスワードの有効期限が切れている場合は、以下のリンクをクリックしてください" +msgstr "パスワードの有効期限が切れている場合は、以下のリンクをクリックしてください" #: users/templates/users/_msg_reset_mfa.html:7 msgid "Your MFA has been reset by site administrator" @@ -8223,11 +8075,9 @@ msgstr "ワンタイムパスワード認証子のバインド" #: users/templates/users/user_otp_enable_bind.html:13 msgid "" -"Use the MFA Authenticator application to scan the following qr code for a 6-" -"bit verification code" -msgstr "" -"MFA Authenticatorアプリケーションを使用して、次のqrコードを6ビット検証コード" -"でスキャンします。" +"Use the MFA Authenticator application to scan the following qr code for a " +"6-bit verification code" +msgstr "MFA Authenticatorアプリケーションを使用して、次のqrコードを6ビット検証コードでスキャンします。" #: users/templates/users/user_otp_enable_bind.html:22 #: users/templates/users/user_verify_mfa.html:27 @@ -8242,9 +8092,7 @@ msgstr "アプリのインストール" msgid "" "Download and install the MFA Authenticator application on your phone or " "applet of WeChat" -msgstr "" -"携帯電話またはWeChatのアプレットにMFA Authenticatorアプリケーションをダウン" -"ロードしてインストールします" +msgstr "携帯電話またはWeChatのアプレットにMFA Authenticatorアプリケーションをダウンロードしてインストールします" #: users/templates/users/user_otp_enable_install_app.html:18 msgid "Android downloads" @@ -8258,9 +8106,7 @@ msgstr "IPhoneのダウンロード" msgid "" "After installation, click the next step to enter the binding page (if " "installed, go to the next step directly)." -msgstr "" -"インストール後、次のステップをクリックしてバインディングページに入ります (イ" -"ンストールされている場合は、次のステップに直接進みます)。" +msgstr "インストール後、次のステップをクリックしてバインディングページに入ります (インストールされている場合は、次のステップに直接進みます)。" #: users/templates/users/user_password_verify.html:8 #: users/templates/users/user_password_verify.html:9 @@ -8275,8 +8121,7 @@ msgstr "認証" msgid "" "The account protection has been opened, please complete the following " "operations according to the prompts" -msgstr "" -"アカウント保護が開始されました。プロンプトに従って次の操作を完了してください" +msgstr "アカウント保護が開始されました。プロンプトに従って次の操作を完了してください" #: users/templates/users/user_verify_mfa.html:17 msgid "Open MFA Authenticator and enter the 6-bit dynamic code" @@ -8288,8 +8133,7 @@ msgstr "すでにバインド済み" #: users/views/profile/otp.py:86 msgid "MFA already bound, disable first, then bound" -msgstr "" -"MFAはすでにバインドされており、最初に無効にしてからバインドされています。" +msgstr "MFAはすでにバインドされており、最初に無効にしてからバインドされています。" #: users/views/profile/otp.py:113 msgid "OTP enable success" @@ -8317,11 +8161,9 @@ msgstr "パスワード無効" #: users/views/profile/reset.py:64 msgid "" -"Non-local users can log in only from third-party platforms and cannot change " -"their passwords: {}" -msgstr "" -"ローカル以外のユーザーは、サードパーティ プラットフォームからのログインのみが" -"許可され、パスワードの変更はサポートされていません: {}" +"Non-local users can log in only from third-party platforms and cannot change" +" their passwords: {}" +msgstr "ローカル以外のユーザーは、サードパーティ プラットフォームからのログインのみが許可され、パスワードの変更はサポートされていません: {}" #: users/views/profile/reset.py:185 users/views/profile/reset.py:196 msgid "Token invalid or expired" @@ -8516,7 +8358,8 @@ msgstr "クラウドアカウント" msgid "Test cloud account" msgstr "クラウドアカウントのテスト" -#: xpack/plugins/cloud/models.py:92 xpack/plugins/cloud/serializers/task.py:159 +#: xpack/plugins/cloud/models.py:92 +#: xpack/plugins/cloud/serializers/task.py:159 msgid "Regions" msgstr "リージョン" @@ -8584,7 +8427,8 @@ msgstr "インスタンス" msgid "Sync instance detail" msgstr "同期インスタンスの詳細" -#: xpack/plugins/cloud/models.py:279 xpack/plugins/cloud/serializers/task.py:72 +#: xpack/plugins/cloud/models.py:279 +#: xpack/plugins/cloud/serializers/task.py:72 msgid "Rule relation" msgstr "条件関係" @@ -8640,7 +8484,8 @@ msgstr "ルール一致" msgid "Rule value" msgstr "ルール値" -#: xpack/plugins/cloud/models.py:325 xpack/plugins/cloud/serializers/task.py:75 +#: xpack/plugins/cloud/models.py:325 +#: xpack/plugins/cloud/serializers/task.py:75 msgid "Strategy rule" msgstr "戦略ルール" @@ -8652,7 +8497,8 @@ msgstr "アクション属性" msgid "Action value" msgstr "アクション値" -#: xpack/plugins/cloud/models.py:349 xpack/plugins/cloud/serializers/task.py:78 +#: xpack/plugins/cloud/models.py:349 +#: xpack/plugins/cloud/serializers/task.py:78 msgid "Strategy action" msgstr "戦略アクション" @@ -8916,9 +8762,8 @@ msgid "" "synchronization task is executed, only the valid IP address will be " "synchronized.
If the port is 0, all IP addresses are valid." msgstr "" -"このポートは、 IP アドレスの有効性を検出するために使用されます。同期タスクが" -"実行されると、有効な IP アドレスのみが同期されます。
ポートが0の場合、す" -"べてのIPアドレスが有効です。" +"このポートは、 IP アドレスの有効性を検出するために使用されます。同期タスクが実行されると、有効な IP アドレスのみが同期されます。 " +"
ポートが0の場合、すべてのIPアドレスが有効です。" #: xpack/plugins/cloud/serializers/account_attrs.py:190 msgid "Hostname prefix" @@ -8948,10 +8793,8 @@ msgid "" "all instances and randomly match IP addresses.
Such as: 192.168.1.0/24, " "10.1.1.1-10.1.1.20" msgstr "" -"IP範囲に一致するインスタンスのみが同期されます。
インスタンスに複数のIPア" -"ドレスが含まれている場合、一致する最初のIPアドレスが作成されたアセットのIPと" -"して使用されます。
デフォルト値の*は、すべてのインスタンスを同期し、IPア" -"ドレスをランダムに一致させることを意味します。
例: " +"IP範囲に一致するインスタンスのみが同期されます。
インスタンスに複数のIPアドレスが含まれている場合、一致する最初のIPアドレスが作成されたアセットのIPとして使用されます。" +"
デフォルト値の*は、すべてのインスタンスを同期し、IPアドレスをランダムに一致させることを意味します。
例: " "192.168.1.0/24,10.1.1.1-10.1.1.20。" #: xpack/plugins/cloud/serializers/task.py:157 diff --git a/apps/locale/lina/ja.json b/apps/locale/lina/ja.json new file mode 100644 index 000000000..146590eb4 --- /dev/null +++ b/apps/locale/lina/ja.json @@ -0,0 +1,1846 @@ +{ + "APIKey": "APIキー", + "AWSChina": "AWS(中国)", + "AWSInt": "AWS(国際)", + "About": "について", + "Accept": "同意する", + "AccessIP": "IP ホワイトリスト", + "AccessKey": "アクセスキー", + "Account": "アカウント情報", + "AccountBackup": "アカウントバックアップ", + "AccountBackupCreate": "アカウントバックアップの作成", + "AccountBackupUpdate": "アカウントバックアップの更新", + "AccountChangeSecret": "アカウントのパスワード変更", + "AccountCreate": "アカウントを作成", + "AccountDeleteConfirmMsg": "アカウントを削除しますか、続行しますか?", + "AccountDetail": "アカウント詳細", + "AccountEnabled": "アカウント切り替えを有効化", + "AccountExportTips": "エクスポート情報には、アカウントの暗号文と機密情報が含まれており、エクスポート形式は暗号化されたzipファイルとなります(暗号化パスワードが設定されていない場合は、個人情報の中でファイル暗号化パスワードを設定してください)。", + "AccountGather": "アカウント回収", + "AccountGatherList": "収集任務", + "AccountGatherTaskCreate": "タスクを作成", + "AccountGatherTaskExecutionList": "タスク実行リスト", + "AccountGatherTaskList": "アカウント収集", + "AccountGatherTaskUpdate": "タスク更新", + "AccountHelpText": "クラウドアカウントはクラウドサービスプロバイダに接続するためのアカウントで、クラウドサービスプロバイダのリソース情報を取得するために使用されます", + "AccountHistoryHelpMessage": "現在のアカウントの履歴バージョン", + "AccountKey": "フィールドの変更", + "AccountList": "クラウドアカウント", + "AccountName": "アカウント名", + "AccountPolicy": "アカウントポリシー", + "AccountPushCreate": "アカウントプッシュ作成", + "AccountPushExecutionList": "実行リスト", + "AccountPushList": "アカウントプッシュ", + "AccountPushUpdate": "アカウントプッシュ更新", + "AccountStorage": "アカウントストレージ", + "AccountTemplate": "アカウントテンプレート", + "AccountTemplateUpdateSecretHelpText": "テンプレートで作成されたアカウントのリストが表示されます。暗号文を更新すると、テンプレートで作成したアカウントの暗号文も更新されます", + "AccountUpdate": "アカウントを更新", + "AccountUsername": "アカウント(ユーザー名)", + "Accounts": "アカウント管理", + "AccountsHelp": "全アカウント: 資産に追加された全アカウント;
指定アカウント:指定した資産下のアカウントのユーザー名;
手動アカウント: ユーザー名/パスワード ログイン時に手動で入力;
同名アカウント: 認証許可を受けたユーザー名と同名のアカウント;", + "Acl": "アクセス制御", + "Acls": "アクセス制御", + "Action": "アクション", + "ActionCount": "アクション数", + "ActionSetting": "アクション設定", + "Actions": "権限", + "ActionsTips": "各権限はプロトコルにより異なり、アイコンをクリックして詳細を表示", + "Activate": "活性化", + "ActivateSuccessMsg": "活性化成功", + "Active": "活動中", + "ActiveAsset": "最近ログインされた", + "ActiveAssetRanking": "ログイン資産ランキング", + "ActiveSelected": "選択したアイテムをアクティブにする", + "ActiveUser": "最近ログインした", + "ActiveUserAssetsRatioTitle": "パーセンテージ統計", + "Activity": "アクティビティ", + "AdDomain": "ADドメイン名", + "AdDomainHelpText": "ドメインユーザーのログイン用のADドメイン名を提供", + "Add": "新規追加", + "AddAccount": "アカウントの追加", + "AddAccountResult": "アカウントの一括追加結果", + "AddAllMembersWarningMsg": "すべてのメンバーを追加しますか?", + "AddAsset": "資産の追加", + "AddAssetToNode": "ノードへのアセットの追加", + "AddAssetToThisPermission": "資産の追加", + "AddDatabaseAppToThisPermission": "データベースアプリケーションを追加", + "AddFailMsg": "追加失敗", + "AddK8sAppToThisPermission": "Kubernetesアプリケーションを追加", + "AddNode": "ノードの追加", + "AddNodeToThisPermission": "ノードの追加", + "AddOrgMembers": "組織のメンバーを追加", + "AddPassKey": "Passkey(通行キー)を追加", + "AddRemoteAppToThisPermission": "リモートアプリケーションの追加", + "AddRolePermissions": "作成/更新成功後、詳細に権限を追加", + "AddSuccessMsg": "成功を追加", + "AddSystemUser": "システムユーザーを追加", + "AddSystemUserToThisPermission": "システムユーザーの追加", + "AddUserGroupToThisPermission": "ユーザーグループ追加", + "AddUserToThisPermission": "ユーザーの追加", + "Address": "アドレス", + "Addressee": "受信者", + "AdhocDetail": "コマンド詳細", + "AdhocManage": "コマンド管理", + "AdhocUpdate": "コマンドを更新", + "Admin": "管理者", + "AdminUser": "特権ユーザー", + "AdminUserCreate": "管理ユーザーの作成", + "AdminUserDetail": "ユーザー詳細管理", + "AdminUserList": "ユーザー管理", + "AdminUserListHelpMessage": "特権ユーザーは既存の資産であり、高度な権限を持つシステムユーザー、例えば root や `NOPASSWD: ALL` sudo 権限を持つユーザーです。 JumpServerはこのユーザーを用いて `システムユーザーのプッシュ`、`資産のハードウェア情報の取得`などを行います。", + "AdminUserUpdate": "管理ユーザーの更新", + "Admin_usersAmount": "特権ユーザー", + "Advanced": "詳細設定", + "AfterChange": "変更後", + "AjaxError404": "404 リクエストエラー", + "AlibabaCloud": "アリババクラウド", + "Alive": "オンライン", + "Aliyun": "アリババクラウド", + "All": "すべて", + "AllAccountTip": "すべてのアカウントが資産に追加されました", + "AllAccounts": "全てのアカウント", + "AllClickRead": "全て既読", + "AllMembers": "全メンバー", + "AllOrganization": "組織リスト", + "AllowInvalidCert": "証明書のチェックを無視", + "Announcement": "お知らせ", + "AnonymousAccount": "匿名アカウント", + "AnonymousAccountTip": "アセットへの接続時にユーザー名とパスワードを使用せず、Webタイプとカスタムタイプのアセットのみがサポートされます", + "ApiKey": "APIキー", + "ApiKeyList": "APIキーでリクエストヘッダーに署名し認証します。各リクエストのヘッダーは異なり、トークン方式に比べてより安全です。ドキュメントの参照をお願いいたします。
リスクの漏洩を低減するため、Secretは生成時にのみ表示できます。各ユーザーは最大10を作成することができます。", + "ApiKeyWarning": "AccessKeyの漏洩リスクを減らすため、Secretは作成時にのみ提供され、後続の照会はできませんので、適切に保存してください。", + "App": "アプリケーション", + "AppAmount": "アプリケーションの数", + "AppAuth": "App認証", + "AppEndpoint": "アプリケーションアクセスアドレス", + "AppList": "アプリリスト", + "AppName": "アプリケーション名", + "AppOps": "タスクセンター", + "AppPath": "アプリケーションパス", + "AppProvider": "アプリケーションプロバイダー", + "AppProviderDetail": "アプリケーションプロバイダーの詳細", + "AppType": "アプリケーションタイプ", + "App_permsAmount": "アプリケーション権限付与", + "AppletCreate": "リモートアプリケーション作成", + "AppletDetail": "リモートアプリケーション", + "AppletHelpText": "アップロード過程で、アプリケーションが存在しない場合は、新たに作成。既に存在する場合は、アプリケーションの更新を行う。", + "AppletHostCreate": "リモートアプリケーションリリースマシンの追加", + "AppletHostDetail": "リモートアプリケーションリリースマシンの詳細", + "AppletHostDomainHelpText": "ここはSystem組織のウェブドメインです", + "AppletHostSelectHelpMessage": "コマンドフィルタ", + "AppletHostUpdate": "リモートアプリケーションの公開マシンを更新", + "AppletHosts": "アプリ公開マシーン", + "Applets": "リモートアプリケーション", + "Applicant": "申請者", + "Application": "カンマで区切られたアプリケーション名のグループを入力してください", + "ApplicationAccount": "アプリケーションアカウント", + "ApplicationDetail": "アプリケーション詳細", + "ApplicationPermission": "アプリ認証", + "ApplicationPermissionCreate": "アプリ認証ルールを作成", + "ApplicationPermissionDetail": "アプリケーション認証の詳細", + "ApplicationPermissionRules": "アプリケーション認証ルール", + "ApplicationPermissionUpdate": "アプリケーション権限ルールの更新", + "Applications": "アプリケーション管理", + "ApplicationsAmount": "アプリケーション", + "ApplyAsset": "アセットの申し込み", + "ApplyFromCMDFilterRule": "コマンドフィルタルール", + "ApplyFromSession": "セッション", + "ApplyInfo": "申請情報", + "ApplyRunAsset": "実行を申請する資産", + "ApplyRunCommand": "実行を申請するコマンド", + "ApplyRunSystemUser": "実行の申請を行うシステムユーザー", + "ApplyRunUser": "実行を申請するユーザー", + "Apply_loginAccount": "ログインアカウントの申請", + "Apply_loginAsset": "ログイン資産申請", + "Apply_loginUser": "ログインユーザー申請", + "Apply_login_systemUser": "システムユーザーへのログインを申請", + "Appoint": "指定", + "ApprovaLevel": "承認情報", + "ApprovalLevel": "審査レベル", + "ApprovalProcess": "承認プロセス", + "Approved": "同意済み", + "ApproverNumbers": "承認者の数", + "AppsCount": "アプリケーション数", + "AppsList": "アプリ一覧", + "ApsaraStack": "アリババクラウド専用クラウド", + "Asset": "資産", + "AssetAccount": "アカウントリスト", + "AssetAccountDetail": "アカウント詳細", + "AssetAclCreate": "アセットログインルールの作成", + "AssetAclDetail": "アセットログインルール詳細", + "AssetAclList": "資産ログイン", + "AssetAclUpdate": "アセットログインルールの更新", + "AssetAddress": "アセット(IP/ホスト名)", + "AssetAmount": "資産の数", + "AssetAndNode": "資産/ノード", + "AssetBulkUpdateTips": "ネットワークデバイス、クラウドサービス、web、ドメインの一括更新はサポートされていません", + "AssetChangeSecretCreate": "アカウント作成・パスワード変更", + "AssetChangeSecretUpdate": "アカウントパスワードの更新", + "AssetCount": "資産の数量", + "AssetCreate": "資産を作成", + "AssetData": "資産データ", + "AssetDetail": "資産詳細", + "AssetHistoryAccount": "資産の履歴アカウント", + "AssetList": "アセットリスト", + "AssetListHelpMessage": "左側には資産ツリーがあり、右クリックでツリーノードを新規作成、削除、変更することができます。資産の権限もノードの形式で組織されており、右側にはそのノードに属する資産が表示されます。\n", + "AssetLoginACLHelpMsg": "アセットにログインする際、ユーザーのログインIPと時間帯を審査して、アセットにログインできるかどうかを判断します", + "AssetName": "アセット名", + "AssetNumber": "資産番号", + "AssetPermission": "アセット認証", + "AssetPermissionCreate": "アセット認証ルールの作成", + "AssetPermissionDetail": "資産の承認詳細", + "AssetPermissionHelpMsg": "資産の権限許可により、特定のユーザーや資産を選択し、ユーザーがアクセスするために資産の権限を設定します。権限許可が完了すると、ユーザーはこれらの資産を簡単に閲覧することができます。さらに特定の権限ビットを設定して、ユーザーが資産に対する権限範囲を更に定義することができます。", + "AssetPermissionList": "資産権限リスト", + "AssetPermissionRules": "アセット認証ルール", + "AssetPermissionUpdate": "資産認証ルールを更新", + "AssetProtocolHelpText": "資産サポートプロトコルはプラットフォームの制限を受けています。設定ボタンをクリックすると、プロトコルの設定が表示されます。更新が必要な場合は、プラットフォームを更新してください。", + "AssetRatio": "資産割合統計", + "AssetResultDetail": "資産結果", + "AssetTree": "資産ツリー", + "AssetUpdate": "アセット更新", + "AssetUserList": "資産ユーザー", + "Asset_ipGroup": "アセットIP", + "Asset_permsAmount": "資産の認可", + "Assets": "資産管理", + "AssetsAmount": "資産", + "AssetsTotal": "アセット合計", + "AssignedInfo": "承認情報", + "AssignedMe": "私の承認待ち", + "AssignedTicketList": "私の承認待ち", + "Assignee": "処理者", + "Assignees": "処理待ちユーザ", + "AssociateApplication": "関連アプリケーション", + "AssociateAssets": "関連アセット", + "AssociateNodes": "関連ノード", + "AssociateSystemUsers": "システムユーザーとの連携", + "AttrName": "プロパティ名", + "AttrValue": "属性値", + "Auditor": "監査人", + "Audits": "監査台", + "Auth": "認証設定", + "AuthCASAttrMap": "ユーザ属性のマッピング", + "AuthLdap": "LDAP認証を有効にする", + "AuthLdapBindDn": "DNバインド", + "AuthLdapBindPassword": "パスワード", + "AuthLdapSearchFilter": "可能なオプションは(cnまたはuidまたはsAMAccountName=%(user)s)", + "AuthLdapSearchOu": "OUを|で区切る", + "AuthLdapServerUri": "LDAPアドレス", + "AuthLdapUserAttrMap": "ユーザー属性マッピングは、LDAPのユーザー属性がjumpserverユーザーにどのようにマッピングされるかを指しています。username, name,emailはjumpserverの属性です", + "AuthLimit": "ログイン制限", + "AuthMethod": "認証方法", + "AuthSAML2AdvancedSettings": "詳細設定", + "AuthSAML2MetadataUrl": "IDPメタデータURL", + "AuthSAML2Xml": "IDP metadata XML", + "AuthSAMLCertHelpText": "証明書キーをアップロードし保存した後、SPメタデータを確認", + "AuthSAMLKeyHelpText": "SP証明書とキーは、IDPとの通信を暗号化するために使用されます", + "AuthSaml2UserAttrMapHelpText": "左側のキーはSAML2のユーザ属性で、右側の値は認証プラットフォームのユーザ属性です", + "AuthSecurity": "認証の安全性", + "AuthSetting": "認証設定", + "AuthSettings": "認証設定", + "AuthUserAttrMap": "ユーザ属性マッピング", + "AuthUserAttrMapHelpText": "左側のキーはJumpServerのユーザー属性、右側の値は認証プラットフォームのユーザー属性", + "AuthUsername": "ユーザー名認証を使用", + "Authentication": "認証", + "Author": "著者", + "Auto": "自動", + "AutoCreate": "自動作成", + "AutoEnabled": "自動化を有効にする", + "AutoGenerateKey": "ランダムにパスワードを生成", + "AutoPush": "自動プッシュ", + "Automations": "自動化", + "AverageTimeCost": "平均費用時間", + "Azure": "Azure(中国)", + "AzureInt": "Azure(国際)", + "Backup": "バックアップ", + "BadConflictErrorMsg": "更新中です、後ほどお試しください", + "BadRequestErrorMsg": "リクエストエラー、入力内容を確認してください", + "BadRoleErrorMsg": "操作権限がないため、リクエストエラー", + "BaiduCloud": "百度クラウド", + "BasePlatform": "基盤プラットフォーム", + "BasePort": "リッスンポート", + "Basic": "基本設定", + "BasicInfo": "基本情報", + "BasicSetting": "基本設定", + "BasicTools": "基本的なツール", + "BatchActivate": "一括でアクティベート", + "BatchApproval": "バルク承認", + "BatchCommand": "バルクコマンド", + "BatchCommandNotExecuted": "バッチコマンド未実行", + "BatchConsent": "一括同意", + "BatchDelete": "一括削除", + "BatchDisable": "一括無効化", + "BatchProcessing": "バッチ処理(選択 {Number} 項目)", + "BatchReject": "一括拒否", + "BatchRemoval": "一括削除", + "BatchScript": "一括スクリプト", + "BatchUpdate": "一括更新", + "Become": "Become", + "BeforeChange": "変更前", + "Beian": "登録", + "BelongAll": "同時に含む", + "BelongTo": "任意に含む", + "Bind": "バインド", + "BindLabel": "関連タグ", + "BindResource": "関連リソース", + "BindSuccess": "バインディング成功", + "BlockedIPS": "ロックされたIP", + "Bucket": "バケット名", + "Builtin": "組み込み", + "BuiltinTree": "タイプツリー", + "BuiltinVariable": "組み込み変数", + "BulkClearErrorMsg": "一括クリア失敗", + "BulkCreateStrategy": "要件を満たさないアカウントを作成する際、例:不適切なキータイプ、一意のキー制約については、上記の戦略を選択できます。", + "BulkDeleteErrorMsg": "一括削除に失敗:", + "BulkDeleteSuccessMsg": "一括削除成功", + "BulkDeploy": "一括デプロイ", + "BulkOffline": "一括でオフライン", + "BulkRemoveErrorMsg": "一括削除失敗: ", + "BulkRemoveSuccessMsg": "一括削除に成功", + "BulkSyncDelete": "一括同期削除", + "BulkSyncErrorMsg": "一括同期失敗:", + "BulkTransfer": "一括転送", + "BulkUnblock": "一括ロック解除", + "BulkUpdatePlatformHelpText": "アセットのオリジナルのプラットフォームタイプが選択したプラットフォームタイプと同じ場合のみ更新されます。更新前後のプラットフォームタイプが異なる場合は更新されません。", + "CACertificate": "CA サート", + "CAS": "CAS", + "CASSetting": "CAS 設定", + "CMPP2": "CMPP v2.0", + "CTYunPrivate": "天翼プライベートクラウド", + "CalculationResults": "cron 式エラー", + "CanDragSelect": "マウスをドラッグして時間帯を選択可能", + "Cancel": "キャンセル", + "CancelCollection": "お気に入り解除", + "CannotAccess": "現在のページにアクセスできません", + "Cas": "CAS設定", + "Category": "カテゴリ", + "CeleryTaskLog": "Celeryタスクのログ", + "Certificate": "証明書", + "CertificateKey": "クライアントキー", + "ChangeField": "変更フィールド", + "ChangePassword": "パスワードを変更", + "ChangeReceiver": "メッセージ受信者の変更", + "ChangeSecretParams": "パスワード変更パラメータ", + "ChangeViewHelpText": "異なるビューを切り替えるクリック", + "Charset": "文字セット", + "Chat": "チャット", + "ChatAI": "スマートQ&A", + "ChatHello": "こんにちは!何かお手伝いできることはありますか?", + "ChdirHelpText": "デフォルトの実行ディレクトリはユーザーのホームディレクトリ", + "CheckAssetsAmount": "アセット数の検証", + "CheckViewAcceptor": "受理人を見るためにクリック", + "ChinaRed": "チャイナレッド", + "Chrome": "Chrome", + "ChromePassword": "ログインパスワード", + "ChromeTarget": "目標URL", + "ChromeUsername": "ログインアカウント", + "ClassicGreen": "クラシックグリーン", + "CleanHelpText": "定期的にクリーニングタスクが実行されます。 毎日午前2時に実行され、クリーニング後のデータは回復できません", + "Cleaning": "定期的なクリーニング", + "Clear": "クリア", + "ClearScreen": "クリアスクリーン", + "ClearSecret": "暗号文のクリア", + "ClearSelection": "選択のクリア", + "ClearSuccessMsg": "成功したクリア", + "ClickCopy": "コピーをクリック", + "Clickhouse": "ClickHouse", + "ClientCertificate": "クライアント証明書", + "ClipBoard": "クリップボード", + "ClipboardCopy": "クリップボードコピー", + "ClipboardCopyPaste": "クリップボードからのコピーペースト", + "ClipboardPaste": "クリップボードから貼り付け", + "Clone": "クローン", + "CloneFrom": "複製元", + "Close": "閉じる", + "CloseConfirm": "閉じることを確認する", + "CloseConfirmMessage": "ファイルが変更されました、保存しますか?", + "CloseStatus": "完了しました", + "Closed": "完了", + "Cloud": "クラウドアプリケーション", + "CloudCenter": "クラウド管理センター", + "CloudCreate": "アセット作成-クラウドプラットフォーム", + "CloudPlatform": "クラウドプラットフォーム", + "CloudSource": "同期元", + "CloudSync": "クラウド同期", + "CloudUpdate": "資産更新-クラウドプラットフォーム", + "Clouds": "クラウドプラットフォーム", + "Cluster": "クラスター", + "ClusterHelpTextMessage": "例:https://172.16.8.8:8443", + "CmdFilter": "コマンドフィルター", + "CollapseSidebar": "サイドバーを折りたたむ", + "CollectHardwareInfo": "ハードウェア情報の収集を有効にする", + "CollectionSucceed": "お気に入りに追加成功", + "Command": "コマンド", + "Command filter": "は正当なJSONではありません。", + "CommandConfirm": "コマンドレビュー", + "CommandExecutions": "コマンド実行", + "CommandFilterACL": "コマンドフィルター", + "CommandFilterACLHelpMsg": "コマンドフィルタリングを使用して、資産に対するコマンドの送信を制御できます。設定したルールに従って、一部のコマンドは許可され、他の一部のコマンドは禁止されます。", + "CommandFilterAclCreate": "コマンドフィルタルールの作成", + "CommandFilterAclDetail": "コマンドフィルタルールの詳細", + "CommandFilterAclList": "コマンドフィルタ", + "CommandFilterAclUpdate": "コマンドフィルタルールの更新", + "CommandFilterCreate": "コマンドフィルタの作成", + "CommandFilterDetail": "コマンドフィルタ詳細", + "CommandFilterHelpMessage": "システムユーザーは、特定のコマンドの入力を禁止する効果を実現するために、複数のコマンドフィルターにバインドできます。フィルターには複数のルールを設定でき、システムユーザーがアセットに接続するとき、フィルターに設定されたルールの優先順位に従って入力されたコマンドが実行されます。例:最初にマッチしたルールが「許可」の場合、そのコマンドは実行されます。最初にマッチしたルールが「禁止」の場合、そのコマンドは実行を禁止されます。最終的にルールにマッチしない場合は、そのコマンドは許可されます。", + "CommandFilterList": "コマンドフィルター規則", + "CommandFilterRuleContentHelpText": "コマンドは1行につき1つ", + "CommandFilterRulePriorityHelpText": "優先度の範囲は1から100まで、1が最低優先度、100が最高優先度", + "CommandFilterRules": "コマンドフィルター規則", + "CommandFilterRulesCreate": "コマンドフィルタールールを作成", + "CommandFilterRulesUpdate": "コマンドフィルタルールの更新", + "CommandFilterUpdate": "コマンドフィルターの更新", + "CommandGroup": "コマンドグループ", + "CommandGroupCreate": "コマンドグループを作成", + "CommandGroupDetail": "コマンドグループ詳細", + "CommandGroupList": "コマンドグループ", + "CommandGroupUpdate": "コマンドグループを更新", + "CommandStorage": "コマンドの保存", + "CommandStorageUpdate": "コマンドストレージの更新", + "Command_filterList": "コマンドフィルターリスト", + "Commands": "コマンド記録", + "Comment": "メモ", + "CommentHelpText": "注:メモ情報はLunaページのユーザー権限資産ツリーでホバー表示され、一般ユーザーが閲覧できます。機密情報の記入は避けてください。", + "Common": "一般", + "CommonUser": "一般ユーザー", + "CommunityEdition": "コミュニティ版", + "Component": "コンポーネント", + "ComponentMonitor": "コンポーネント監視", + "ConceptContent": "あなたに Python インタープリターのように行動してもらいたい。Python のコードを提供し、あなたがそれを実行する。説明は一切提供しないでください。コードの出力以外には何も回答しないでください。", + "ConceptTitle": "🤔 Python インタープリタ", + "Config": "配置", + "Confirm": "確認", + "ConfirmPassword": "パスワードの確認", + "Connect": "接続", + "ConnectMethod": "接続方法", + "ConnectMethodACLHelpMsg": "接続方法によるフィルタリングを通じて、ユーザーが特定の接続方法を使ってアセットにログインすることを制御することができます。設定したルールに基づき、一部の接続方法は許可され、他の接続方法は禁止されます(全体に適用)。", + "ConnectMethodAclCreate": "接続方法の制御を作成する", + "ConnectMethodAclDetail": "接続方法の詳細", + "ConnectMethodAclList": "接続方法", + "ConnectMethodAclUpdate": "接続方法制御を更新する", + "ConnectUsers": "アカウント接続", + "ConnectWebSocketError": "WebSocketの接続失敗", + "ConnectionDropped": "接続が切断されました", + "ConnectionToken": "接続トークン", + "ConnectionTokenList": "接続トークンは、認証と資産の接続を組み合わせたもので、ユーザーが一回クリックで資産にログインできるようにする認証情報です。現在サポートされているコンポーネントはKoKo、Lion、Magnus、Razorなどです。", + "Connectivity": "接続可能", + "Console": "コンソール", + "Consult": "コンサルティング", + "ContainAttachment": "添付ファイル付き", + "ContainerName": "コンテナ名", + "Containers": "コンテナ", + "Contains": "含む", + "Content": "内容", + "Contents": "内容", + "Continue": "続行", + "ContinueImport": "インポートを続行", + "ConvenientOperate": "便利な操作", + "Copy": "複製", + "CopySuccess": "コピー成功", + "Corporation": "会社", + "Correlation": "関連する", + "Cpu": "CPU", + "Create": "作成", + "CreateAccessKey": "アクセスキーの作成", + "CreateAccountTemplate": "アカウントテンプレートの作成", + "CreateAdhoc": "コマンドを作成", + "CreateBy": "作成者", + "CreateCommandStorage": "コマンドストレージの作成", + "CreateEndpoint": "エンドポイントを作成", + "CreateEndpointRule": "エンドポイントルールの作成", + "CreateErrorMsg": "作成失敗", + "CreateNode": "ノードの作成", + "CreateOrgMsg": "組織詳細内でユーザーを追加してください", + "CreatePlaybook": "Playbookを作成", + "CreateReplayStorage": "オブジェクトストレージを作成", + "CreateSuccessMsg": "インポート成功、合計:{count}", + "CreateUserSetting": "ユーザーコンテンツの作成", + "Created": "作成済み", + "CreatedBy": "作成者", + "CriticalLoad": "重大", + "CronExpression": "crontabの完全な表現", + "CrontabHelpTips": "eg:毎週日曜日 03:05 に実行 <5 3 * * 0>
ヒント: 5桁のLinux crontab式<分 時 日 月 曜日>を使ってください (オンラインツール)
注意: 定期実行と周期実行が同時に設定されている場合は、定期実行が優先", + "CrontabOfCreateUpdatePage": "例えば:毎週日曜日 03:05に実行 <5 3 * * 0>
5位の Linux crontab式 <分 時 日 月 曜日> を使用してください(オンラインツール
定期的に実行と周期的に実行を同時に設定すると、優先して定期的に実行されます", + "CurrentConnections": "現在の接続数", + "CurrentUserVerify": "現在のユーザーの検証", + "Custom": "カスタム", + "CustomCmdline": "実行パラメータ", + "CustomCol": "カスタムリストフィールド", + "CustomCreate": "資産作成-カスタマイズ", + "CustomFields": "カスタム属性", + "CustomFile": "カスタマイズしたファイルを指定されたディレクトリ(data/sms/main.py)に置き、config.txt で SMS_CUSTOM_FILE_MD5=<ファイルmd5値>の設定項目を有効にしてください", + "CustomHelpMessage": "カスタムタイプの資産は、リモートアプリケーションに依存しています。リモートアプリケーションをシステム設定で設定してください", + "CustomParams": "左側はSMSプラットフォームが受け取るパラメーター、右側はJumpServer待ちのフォーマットパラメーター、最終結果は以下の通りです:
{\"phone_numbers\": \"123,134\", \"content\": \"認証コードは: 666666\"}", + "CustomPassword": "ログインパスワード", + "CustomTarget": "目標アドレス", + "CustomTree": "カスタムツリー", + "CustomType": "カスタムタイプ", + "CustomUpdate": "アセット更新-カスタム", + "CustomUser": "カスタムユーザー", + "CustomUsername": "ログインアカウント", + "CycleFromWeek": "周期は週から", + "CyclePerform": "定期実行", + "DBInfo": "データベース情報", + "DangerCommand": "危険なコマンド", + "DangerousCommandNum": "危険なコマンド数", + "Dashboard": "ダッシュボード", + "Database": "データベース", + "DatabaseApp": "データベースアプリケーション", + "DatabaseAppCount": "データベースの利用数", + "DatabaseAppCreate": "データベースアプリケーションの作成", + "DatabaseAppDetail": "データベースの詳細", + "DatabaseAppPermission": "データベースの承認", + "DatabaseAppPermissionCreate": "データベース認証ルールの作成", + "DatabaseAppPermissionDetail": "データベース認証詳細", + "DatabaseAppPermissionUpdate": "データベース認証ルール更新", + "DatabaseAppUpdate": "データベースアプリケーションの更新", + "DatabaseCreate": "資産-データベースの作成", + "DatabaseId": "データベースID", + "DatabasePermissionRules": "データベースの認可ルール", + "DatabasePort": "データベースプロトコルポート", + "DatabaseProtocol": "データベースプロトコル", + "DatabaseUpdate": "資産-データベースの更新", + "Date": "日付", + "DateCreated": "生成時刻", + "DateEnd": "終了日", + "DateExpired": "有効期限", + "DateFinished": "完了日", + "DateJoined": "作成日", + "DateLast24Hours": "最近一日間", + "DateLast3Months": "過去3ヶ月間", + "DateLastHarfYear": "最近半年", + "DateLastLogin": "最終ログイン日", + "DateLastMonth": "最近一か月", + "DateLastRun": "最後に実行した日付", + "DateLastSync": "最終同期日", + "DateLastWeek": "最近一週間", + "DateLastYear": "最近一年間", + "DatePasswordLastUpdated": "最終パスワード更新日", + "DatePasswordUpdated": "パスワードの更新日", + "DateStart": "開始日", + "DateSync": "同期日", + "DateUpdated": "更新日", + "Datetime": "日付", + "Day": "日", + "Db": "データベースアプリケーション", + "DeactiveSelected": "選択したものを無効化", + "DeclassificationLogNum": "パスワード変更ログ数", + "Default": "デフォルト", + "DefaultDatabase": "デフォルトのデータベース", + "DefaultPort": "デフォルトのポート", + "DefaultProtocol": "デフォルトのプロトコル、資産追加時にデフォルトで選択されます", + "Defaults": "デフォルト値", + "Delete": "削除", + "DeleteConfirmMessage": "削除後は復元できません、続行しますか?", + "DeleteErrorMsg": "削除に失敗", + "DeleteFailedMsg": "削除失敗", + "DeleteFile": "ファイルの削除", + "DeleteNode": "ノードの削除", + "DeleteOrgMsg": "ユーザーリスト、ユーザーグループ、アセットリスト、ドメインリスト、管理ユーザー、システムユーザー、タグ管理、アセット認証ルール", + "DeleteOrgTitle": "組織内の以下の情報が削除されていることを確認してください", + "DeleteReleasedAssets": "リリース済み資産の削除", + "DeleteSuccess": "削除成功", + "DeleteSuccessMsg": "削除に成功", + "DeleteWarningMsg": "削除しますか", + "DeliveryTime": "送信時間", + "Deploy": "配置", + "DescribeOfGuide": "JumpServer要塞型システムをご利用いただきありがとうございます、詳しい情報はこちらをクリックしてください", + "Description": "説明", + "DestinationIP": "目的のアドレス", + "DestinationPort": "目的のポート", + "Detail": "詳細", + "Device": "ネットワークデバイス", + "DeviceCreate": "ネットワークデバイスを作成", + "DeviceUpdate": "資産-ネットワークデバイスの更新", + "Digit": "数字", + "DingTalk": "ディングトーク", + "DingTalkTest": "テスト", + "Disable": "無効化", + "DisableSuccessMsg": "無効化成功", + "DisabledAsset": "禁じられている", + "DisabledUser": "無効化された", + "Disk": "ハードディスク", + "DisplayName": "名前", + "DocType": "ドキュメントタイプ", + "Docs": "文書", + "Domain": "ドメイン", + "DomainCreate": "ドメインの作成", + "DomainDetail": "ドメイン詳細", + "DomainEnabled": "ネットワーキングを有効化", + "DomainHelpMessage": "ドメイン機能はハイブリッドクラウドなどの一部の環境で直接接続ができない問題を解決するために追加された機能で、ゲートウェイサーバーを経由してログインを転送する原理です。JMS => ドメインゲートウェイ => 目標とする資産", + "DomainList": "ドメイン一覧", + "DomainUpdate": "ドメインの更新", + "Download": "ダウンロード", + "DownloadCenter": "ダウンロードセンター", + "DownloadFTPFileTip": "現在のアクションはファイルを記録せず、またはファイルサイズが閾値(デフォルトは100M)を超えている、またはまだ対応するストレージに保存されていません", + "DownloadFile": "ファイルのダウンロード", + "DownloadImportTemplateMsg": "作成テンプレートをダウンロード", + "DownloadReplay": "ビデオのダウンロード", + "DownloadUpdateTemplateMsg": "アップデートテンプレートのダウンロード", + "DragUploadFileInfo": "ファイルをここにドラッグするか、ここをクリックしてアップロードしてください", + "DryRun": "テスト実行", + "DuplicateFileExists": "同名のファイルはアップロードできませんので、同名のファイルを削除してください", + "Duration": "期間", + "DynamicUsername": "ダイナミックユーザ名", + "Edit": "編集", + "Edition": "バージョン", + "Email": "メールアドレス", + "EmailContent": "メール内容のカスタマイズ", + "EmailCustomUserCreatedBody": "ヒント:ユーザー作成時に、パスワード設定メールを送信します", + "EmailCustomUserCreatedHonorific": "ヒント:ユーザー作成時に、パスワード設定のメールの敬称を送信します(例:こんにちは)", + "EmailCustomUserCreatedSignature": "ヒント:メールの署名(例えば:jumpserver)", + "EmailCustomUserCreatedSubject": "ヒント:ユーザー作成時に、パスワード設定のメールの件名を送信します(例:ユーザーの作成に成功しました)", + "EmailEmailFrom": "", + "EmailHost": "SMTPホスト", + "EmailHostPassword": "ヒント:一部のメールサービスプロバイダーはTokenの入力が必要です", + "EmailHostUser": "SMTPアカウント", + "EmailPort": "SMTPポート", + "EmailRecipient": "ヒント:テストメールの受信者としてのみ使用", + "EmailSubjectPrefix": "ヒント: 電子メールプロバイダーがいくつかのキーワードをブロックする可能性があります。それらは、例えば「プロキシサーバー」、「JumpServer」などです。", + "EmailTest": "接続テスト", + "EmailUserSSL": "SMTPポートが465の場合、通常はSSLを有効にする必要があります", + "EmailUserTLS": "SMTPポートが587の場合、通常はTLSを有効にする必要があります", + "Empty": "空", + "Enable": "有効", + "EnableKoKoSSHHelpText": "有効化時、資産への接続はSSH Clientの起動方法で表示されます", + "EnableOAuth2Auth": "OAuth2認証の開始", + "EnableVaultStorage": "Vault ストレージを開始", + "EndPoint": "端点", + "Endpoint": "サービスエンドポイント", + "EndpointListHelpMessage": "サーバーエンドポイントは、ユーザーがサービスにアクセスするアドレス(ポート)です。ユーザーがリソースへ接続する際、エンドポイントのルールとリソースのタグに従ってサーバーエンドポイントを選択し、接続を確立し、分散接続を実現します。", + "EndpointRule": "エンドポイントルール", + "EndpointRuleListHelpMessage": "サーバーエンドポイント選択策略については、現在2つをサポートします:
1、エンドポイントルールに基づきエンドポイントを指定(現在のページ);
2、アセットタグによりエンドポイントを選択、タグ名は\"endpoint\"固定、値はエンドポイント名。
2つの方式では、タグマッチングを優先します。なぜなら、IP範囲が重複するかもしれず、タグ方式はルールの補完として存在します。", + "EndpointSuffix": "エンドポイントの接尾辞", + "Endswith": "...で終わる", + "EnsureThisValueIsGreaterThanOrEqualTo1": "この値は1以上であることを確認してください", + "EnsureThisValueIsGreaterThanOrEqualTo3": "この値が3以上であることを確認してください", + "EnsureThisValueIsGreaterThanOrEqualTo5": "この値が5以上であることを確認してください", + "EnsureThisValueIsGreaterThanOrEqualTo6": "この値が6以上であることを確認してください", + "EnterForSearch": "Enterを押して検索", + "EnterMessage": "質問を入力してEnterキーを押し送信する", + "EnterRunUser": "実行ユーザーの入力", + "EnterRunningPath": "実行パスを入力", + "EnterToContinue": "Enterを押して入力を続けてください", + "EnterUploadPath": "アップロードパスを入力する", + "Enterprise": "エンタープライズ版", + "EnterpriseEdition": "エンタープライズ版", + "Equal": "等しい", + "Error": "エラー", + "ErrorMsg": "エラー", + "EsDisabled": "ノードが利用できません、管理者に連絡してください", + "EsDocType": "es既定のドキュメントタイプ:コマンド", + "EsIndex": "es がデフォルトのindexとしてjumpserverを提供します。デートごとにindexを設定する場合、入力値はindexのプレフィックスになります", + "EsUrl": "特殊文字`#`を含めることはできません;例:http://es_user:es_password@es_host:es_port", + "Every": "毎", + "EveryMonth": "毎月", + "Exclude": "含まれていない", + "ExcludeAsset": "スキップされた資産", + "ExcludeSymbol": "文字排除", + "Execute": "実行", + "ExecuteCycle": "実行周期", + "ExecuteFailedCommand": "コマンド失敗", + "ExecuteOnce": "一度実行", + "Execution": "実行履歴", + "ExecutionDetail": "実行履歴の詳細", + "ExecutionList": "実行リスト", + "ExecutionTimes": "実行回数", + "ExistError": "この要素はすでに存在します", + "Existing": "既に存在", + "ExpectedNextExecuteTime": "次回実行予定時間", + "ExpirationTimeout": "タイムアウト時間(秒)", + "Expire": "期限切れ", + "Expired": "有効期限", + "Export": "エクスポート", + "ExportAll": "すべてエクスポート", + "ExportOnlyFiltered": "検索結果のみをエクスポート", + "ExportOnlySelectedItems": "選択したアイテムのみをエクスポート", + "ExportRange": "エクスポート範囲", + "FAILURE": "失敗", + "FC": "Fusion Compute", + "Failed": "失敗", + "FailedAsset": "失敗した資産", + "FailedConditions": "条件を満たす結果がありません!", + "False": "否", + "Favicon": "ウェブサイトのアイコン", + "FaviconTip": "ヒント:ウェブサイトのアイコン(推奨画像サイズ:16px*16px)", + "Feature": "機能", + "Features": "機能設定", + "FeiShu": "飛書", + "FeiShuTest": "テスト", + "FieldRequiredError": "このフィールドは必須です", + "FileEncryptionPassword": "ファイル暗号化パスワード", + "FileManager": "ファイル管理", + "FileNameTooLong": "ファイル名が長すぎる", + "FileSizeExceedsLimit": "ファイルサイズの制限を超過", + "FileTransfer": "ファイル転送", + "FileTransferNum": "ファイル転送数", + "FileType": "ファイルタイプ", + "Filename": "ファイル名", + "FingerPrint": "指紋", + "Finished": "完了", + "FinishedTicket": "仕事の完了", + "FirstLogin": "初回ログイン", + "FlowDetail": "フロー詳細", + "FlowSetUp": "プロセス設定", + "FormatError": "形式エラー", + "Friday": "金曜日", + "From": "から", + "FromTicket": "ワークオーダーから", + "FtpLog": "FTPログ", + "FullName": "フルネーム", + "FullySynchronous": "アセット完全同期", + "FullySynchronousHelpTips": "アセットの条件がマッチングポリシーを満たさない場合、そのアセットを同期し続けますか?", + "FuzzySearch": "あいまい検索をサポート", + "GCP": "Google Cloud", + "GPTCreate": "資産の作成-GPT", + "GPTUpdate": "アセットの更新-GPT", + "Gateway": "ゲートウェイ", + "GatewayCreate": "ゲートウェイの作成", + "GatewayList": "ゲートウェイリスト", + "GatewayProtocolHelpText": "SSHゲートウェイ、SSH、RDP、VNCのプロキシをサポート", + "GatewayUpdate": "ゲートウェイを更新する", + "GeneralAccounts": "一般アカウント", + "Generate": "生成", + "GenerateAccounts": "アカウントの再生成", + "GenerateSuccessMsg": "アカウント生成成功", + "GetErrorMsg": "取得に失敗", + "Go": "実行", + "GoHomePage": "ホームに行く", + "Goto": "移動", + "GrantedAccounts": "認証済みアカウント", + "GrantedApplications": "許可されたアプリ", + "GrantedAssets": "承認された資産", + "GrantedDatabases": "承認されたデータベース", + "GrantedK8Ss": "認証済みKubernetes", + "GrantedRemoteApps": "認証済みリモートアプリケーション", + "GreatEqualThan": "以上", + "GroupsAmount": "ユーザーグループ", + "GroupsHelpMessage": "既存のユーザーグループを入力してください。複数のユーザーグループはカンマで区切ります。", + "Guide": "ウィザード", + "HandleTicket": "ワークオーダーを処理する際、資産を接続する際に、アプリケーションの公開機はランダムに選択されます(ただし、前回使用したものが優先されます)。特定の資産に固定の公開機を設定したい場合は、<公開機:公開機名>またはのタグを指定できます。
公開機に接続し、アカウントを選択する際、以下の場合にユーザーの同名アカウントまたは専用アカウント(jsで始まる)が選択されます。それ以外の場合は、共有アカウント(jmsで始まる)が使用されます:
  1. 公開機とアプリケーションが同時にサポートされている場合。
  2. 公開機は同時にサポートされており、アプリケーションはサポートされていない場合。ただし、現在のアプリケーションには専用アカウントが使用されていない場合。
  3. 公開機は同時にサポートされておらず、アプリケーションはサポートされているかどうかに関係なく、いずれのアプリケーションも専用アカウントを使用していない場合。
注意:アプリケーションのサポート可否は開発者が決定し、ホストのサポート可否は公開機の設定である単一ユーザーシングルセッションの選択によるものです。", + "Hardware": "ハードウェア情報", + "HardwareInfo": "ハードウェア情報", + "HasImportErrorItemMsg": "インポートに失敗した項目があります、左の x をクリックして失敗原因を確認し、テーブルを編集後、失敗した項目のインポートを続けることができます", + "HasRead": "既読かどうか", + "Help": "ヘルプ", + "HelpDocument": "ドキュメントリンク", + "HelpDocumentTip": "ヘルプ -> ドキュメント のURLを変更できます", + "HelpSupport": "リンクサポート", + "HelpSupportTip": "ウェブサイトのナビゲーションバーを変更することができます。ヘルプ -> サポートのURL", + "HighLoad": "比較的高い", + "HistoricalSessionNum": "過去のセッション数", + "History": "ユーザー管理", + "HistoryDate": "日付", + "HistoryPassword": "過去のパスワード", + "Home": "ホームディレクトリ", + "HomeHelpMessage": "デフォルトホームディレクトリ/home/システムユーザ名:/home/username", + "HomePage": "ホームページ", + "Host": "アセット", + "HostCreate": "資産の作成-ホスト", + "HostDeployment": "リリースマシンのデプロイ", + "HostList": "ホストリスト", + "HostName": "ホスト名", + "HostProtocol": "ホストプロトコル", + "HostUpdate": "資産-ホストを更新", + "Hostname": "ホスト名", + "HostnameGroup": "資産名", + "HostnameStrategy": "資産ホスト名の生成に使用。例:1. インスタンス名 (instanceDemo);2. インスタンス名とIPの一部(後端二位) (instanceDemo-250.1)", + "Hosts": "ホスト", + "Hour": "時間", + "HttpPort": "HTTPポート", + "HuaweiCloud": "Huaweiクラウド", + "HuaweiPrivatecloud": "ファーウェイプライベートクラウド", + "IAgree": "同意します", + "ID": "ID", + "IP": "アカウントキー", + "IP/Host": "IP/ホスト", + "IPLoginLimit": "IPログイン制限", + "IPMatch": "IPマッチング", + "IPNetworkSegment": "IPネットワーク", + "Icon": "アイコン", + "Id": "ID", + "IdeaContent": "あなたにLinuxターミナルとなることを望みます。私はコマンドを入力し、あなたはターミナルに表示されるべき内容を回答します。私はあなたが特定のコードブロック内でだけターミナルの出力を返信することを望んでいます、それ以外ではない。説明を書かないでください。私があなたに何かを伝える必要があるとき、私はテキストを大括弧の中に入れます{注釈テキスト}。", + "IdeaTitle": "🌱 Linux 端末", + "IdpMetadataHelpText": "IDP metadata URL と IDP metadata XMLパラメーターは一つを選ぶだけでよく、IDP metadata URLの優先度が高い", + "IdpMetadataUrlHelpText": "IDPメタデータをリモートアドレスからロード", + "IgnoreCase": "大文字小文字を区別しない", + "ImageName": "画像名", + "Images": "画像", + "Import": "インポート", + "ImportAll": "全てインポート", + "ImportFail": "インポート失敗", + "ImportLdapUserTip": "インポートを行う前にLDAP設定を提出してください", + "ImportLdapUserTitle": "LDAPユーザーリスト", + "ImportLicense": "ライセンスのインポート", + "ImportLicenseTip": "ライセンスをインポートしてください", + "ImportMessage": "対応するタイプのページにデータをインポートしてください", + "ImportOrg": "組織をインポート", + "ImprovePersonalInformation": "個人情報の完全性", + "InActiveAsset": "最近ログインがない", + "InActiveUser": "最近ログインしていない", + "InAssetDetail": "資產詳細でアカウント情報を更新", + "InTotal": "合計", + "Inactive": "無効", + "Include": "含む", + "Index": "索引", + "Info": "情報", + "Inherit": "継承", + "InheritPlatformConfig": "プラットフォームの設定を引き継いでいます。変更する場合は、プラットフォームの設定を変更してください。", + "InitialDeploy": "初期デプロイ", + "Input": "入力", + "InputEmailAddress": "正しいメールアドレスを入力してください", + "InputMessage": "メッセージを入力...", + "InputNumber": "数字タイプを入力してください", + "InputPhone": "携帯電話番号を入力してください", + "InsecureCommandAlert": "危険なコマンド警告", + "InsecureCommandEmailUpdate": "設定についてはこちらをクリック", + "InsecureCommandNotifyToSubscription": "危険コマンド通知はメッセージ購読にアップグレードされ、より多くの通知方式に対応", + "InstanceAddress": "インスタンスアドレス", + "InstanceName": "インスタンス名", + "InstancePlatformName": "インスタンスプラットフォーム名", + "InstantAdhoc": "インスタントコマンド", + "Interface": "ネットワークインターフェース", + "InterfaceSettings": "インターフェース設定", + "IntervalOfCreateUpdatePage": "単位:時", + "Invalid": "無効", + "InvalidJson": "履歴記録", + "Invalidity": "無効", + "Invite": "招待", + "InviteSuccess": "招待成功", + "InviteUser": "ユーザーを招待する", + "InviteUserInOrg": "この組織に参加するようにユーザーを招待し", + "Ip": "IP", + "IpGroup": "IP グループ", + "IpGroupHelpText": "* はすべてをマッチングします。例:192.168.10.1、192.168.1.0/24、10.1.1.1-10.1.1.20、2001:db8:2de::e13、2001:db8:1a:1110::/64", + "Ips": "カンマで分割されたIPアドレスグループを入力してください", + "IsActive": "アクティベーション", + "IsAlwaysUpdate": "資産を最新の状態に保つ", + "IsAlwaysUpdateHelpTips": "同期タスクを毎回実行する時に、資産の情報を同期更新するかどうか、ホスト名、IP、システムプラットフォーム、ネットワークドメイン、ノードなどの情報も含まれます", + "IsEffective": "適用済み", + "IsFinished": "完了済みかどうか", + "IsLocked": "一時停止するかどうか", + "IsSuccess": "成功", + "IsSyncAccountHelpText": "収集が完了したら、収集したアカウントを資産に同期します", + "IsSyncAccountLabel": "アセットへの同期", + "IsValid": "有効", + "JDCloud": "京東雲", + "JMSSSO": "SSOトークンログイン", + "Job": "ジョブ", + "JobCenter": "ジョブセンター", + "JobCreate": "ジョブの作成", + "JobDetail": "ジョブ詳細", + "JobExecutionLog": "ジョブログ", + "JobList": "作業管理", + "JobName": "ジョブ名", + "JobType": "ジョブタイプ", + "JobUpdate": "作業を更新", + "Join": "参加", + "K8s": "Kubernetes", + "K8sPermissionRules": "Kubernetes認証ルール", + "Key": "キー", + "KingSoftCloud": "金山雲", + "KokoSettingUpdate": "Kokoの設定", + "Kubernetes": "Kubernetes", + "KubernetesApp": "Kubernetes", + "KubernetesAppCount": "Kubernetesアプリケーション数", + "KubernetesAppCreate": "Kubernetesの作成", + "KubernetesAppDetail": "Kubernetes詳細", + "KubernetesAppPermission": "Kubernetesの認証", + "KubernetesAppPermissionCreate": "Kubernetes承認ルールの作成", + "KubernetesAppPermissionDetail": "Kubernetes認証詳細", + "KubernetesAppPermissionUpdate": "Kubernetes権限ルールの更新", + "KubernetesAppUpdate": "Kubernetesをアップデート", + "LAN": "ローカルエリアネットワーク", + "LDAPServerInfo": "LDAPサーバ", + "LDAPUser": "LDAP ユーザー", + "LOWER_CASEREQUIRED": "小文字を含める必要があります", + "Label": "タグ", + "LabelCreate": "ラベルを作成", + "LabelInputFormatValidation": "タグの形式が間違っています。正しい形式は:name:value", + "LabelList": "タグリスト", + "LabelUpdate": "タグを更新", + "Language": "言語", + "Last30": "最後の30回", + "Last30Days": "過去30日間", + "Last7Days": "直近7日", + "LastCannotBeDeleteMsg": "最後の項目は削除できません", + "LastDay": "今月の最後の日", + "LastExecutionOutput": "最後に出力を実行", + "LastPublishedTime": "最終公開日時", + "LastRun": "最後に実行", + "LastRunFailedHosts": "最後に失敗したホストの運行", + "LastRunSuccessHosts": "最後に成功したホストを実行", + "LastWeek": "当月の最後の週", + "LastWorking": "最近の営業日", + "LatestSessions": "最新のログイン履歴", + "LatestSessions10": "最近10回のログイン", + "LatestTop10": "TOP 10", + "LatestVersion": "最新バージョン", + "Ldap": "LDAP", + "LdapBulkImport": "ユーザーの読み込み", + "LdapConnectTest": "接続のテスト", + "LdapLoginTest": "ログインをテスト", + "Length": "長さ", + "LessEqualThan": "以下又は同等", + "LevelApproval": "承認レベル", + "License": "許可証", + "LicenseDetail": "ライセンス詳細", + "LicenseExpired": "ライセンスが期限切れ", + "LicenseFile": "ライセンスファイル", + "LicenseForTest": "テスト用途のライセンス。このライセンスはテスト(PoC)およびデモンストレーションにのみ使用されます", + "LicenseReachedAssetAmountLimit": "資産の数量がライセンスの数を超えています", + "LicenseWillBe": "ライセンスがもうすぐ", + "LinuxAdminUser": "Linux特権ユーザ", + "LinuxUserAffiliateGroup": "ユーザー付属グループ", + "LoadStatus": "負荷状況", + "Loading": "ロード中", + "LockedIP": "{count}個のIPをロックしました", + "Log": "ログ", + "LogData": "ログデータ", + "LogOfLoginSuccessNum": "ログイン成功ログの数", + "Logging": "ログ記録", + "Login": "ユーザーログイン", + "LoginAssetConfirm": "資産ログインの審査", + "LoginAssetToday": "今日のアクティブアセット数", + "LoginAssets": "アクティブな資産", + "LoginCity": "ログイン都市", + "LoginConfig": "ログイン設定", + "LoginConfirm": "ログインのレビュー", + "LoginCount": "ログイン回数", + "LoginDate": "ログイン日", + "LoginFailed": "ログイン失敗", + "LoginFrom": "ログイン元", + "LoginIP": "ログインIP", + "LoginImage": "ログインページの画像", + "LoginImageTip": "注意:企業版のユーザーログインページに表示されます(推奨画像サイズ:492*472px)", + "LoginLog": "ログインログ", + "LoginModeHelpMessage": "手動ログインモードを選択した場合、ユーザー名とパスワードは入力不要", + "LoginModel": "ログインモード", + "LoginNum": "ログイン数", + "LoginOption": "ログインオプション", + "LoginOverview": "セッション統計", + "LoginPasswordSetting": "ログインパスワード設定", + "LoginRequiredMsg": "アカウントはログアウトされました、再度ログインしてください", + "LoginSucceeded": "ログインに成功", + "LoginTitle": "ログインページのタイトル", + "LoginTitleTip": "注意:企業版ユーザーのSSHログインKoKoログインページに表示されます(例:JumpServerオープンソース要塞サーバーへようこそ)", + "LoginTo": "ログインした", + "LoginUserRanking": "ログインアカウントのランキング", + "LoginUserToday": "本日のログインアカウント数", + "LoginUsers": "アクティブアカウント", + "Login_confirmUser": "ログインレビュー受付人", + "LogoIndex": "Logo (テキスト付き)", + "LogoIndexTip": "ヒント:管理ページの左上に表示されます(推奨画像サイズ:185px*55px)", + "LogoLogout": "Logo (テキストなし)", + "LogoLogoutTip": "ヒント:企業版のユーザーのWebターミナルページに表示されます(推奨画像サイズ:82px*82px)", + "Logout": "ログアウト", + "LogsAudit": "ログ監査", + "Lowercase": "小文字", + "LunaSettingUpdate": "Luna の設定", + "MFA": "MFA", + "MFAConfirm": "MFA認証", + "MFAErrorMsg": "MFAエラー、ご確認ください", + "MFAOfUserFirstLoginPersonalInformationImprovementPage": "多要素認証を有効にし、アカウントをより安全にします。
有効にすると、次回ログイン時に多要素認証のバインディングプロセスに進みます。また、(個人情報->素早く修正->多要素設定の変更)で直接バインディングすることもできます!", + "MFAOfUserFirstLoginUserGuidePage": "あなたと会社の安全を保護するために、アカウント、パスワード、鍵などの重要な機密情報を適切に保管してください。(例:複雑なパスワードを設定し、多要素認証を有効にする)
メール、携帯電話番号、WeChatなどの個人情報は、ユーザー認証とプラットフォーム内のメッセージ通知にのみ使用します。", + "MFARequireForSecurity": "安全のため、MFAを入力してください", + "MFAVerify": "MFAを検証", + "MIN_LENGTHERROR": "パスワードの最小長さは{0}桁です", + "MailRecipient": "メールの受信者", + "MailSend": "メール送信", + "ManualAccount": "手動アカウント", + "ManualAccountTip": "ログイン時に手動入力 ユーザー名/パスワード", + "ManualExecutePlan": "手動でスケジュールを実行", + "ManualInput": "手動入力", + "ManyChoose": "複数選択可能", + "Mariadb": "MariaDB", + "MarkAsRead": "既読にする", + "Marketplace": "アプリマーケット", + "Match": "マッチング", + "MatchIn": "中に...", + "MatchResult": "マッチング結果", + "MatchedCount": "マッチング結果", + "Material": "開始", + "Members": "メンバー", + "Memory": "メモリ", + "MenuAccounts": "アカウント管理", + "MenuAssets": "資産管理", + "MenuMore": "もっと見る...", + "MenuPermissions": "認証管理", + "MenuUsers": "IP", + "Message": "メッセージ", + "MessageSub": "メッセージの購読", + "MessageSubscription": "メッセージ購読", + "MessageType": "メッセージタイプ", + "Meta": "メタデータ", + "MfaLevel": "多要素認証", + "Min": "分", + "Model": "モデル", + "Modify": "修正", + "ModifySSHKey": "SSH Keyの変更", + "ModifyTheme": "テーマを変更", + "Module": "モジュール", + "Monday": "月曜日", + "Mongodb": "MongoDB", + "Monitor": "モニタリング", + "Month": "月", + "Monthly": "月次", + "More": "他のオプション", + "MoreActions": "その他の操作", + "MoveAssetToNode": "ノードにアセットを移動", + "MsgSubscribe": "メッセージ購読", + "MyApps": "私のアプリケーション", + "MyAssets": "私の資産", + "MyTickets": "私が開始した", + "Mysql": "Mysql", + "MysqlWorkbench": "MySQL Workbench", + "Mysql_workbenchIp": "データベースIP", + "Mysql_workbenchName": "データベース名", + "Mysql_workbenchPassword": "データベースのパスワード", + "Mysql_workbenchPort": "データベースポート", + "Mysql_workbenchUsername": "データベースアカウント", + "NUMBERREQUIRED": "数字が必要", + "Name": "名前", + "NavHelp": "ナビゲーションリンク", + "Navigation": "ナビゲーション", + "NeedAddAppsOrSystemUserErrMsg": "アプリケーションまたはシステムユーザーの追加が必要です", + "NeedReLogin": "再ログインが必要", + "NeedSpecifiedFile": "指定されたフォーマットのファイルをアップロードする必要があります", + "NeedUpdatePasswordNextLogin": "次回ログイン時にパスワードを変更する必要があります", + "Network": "ネットワーク", + "New": "新規作成", + "NewChat": "新規チャット", + "NewCount": "追加", + "NewCron": "Cronの生成", + "NewDirectory": "新しいディレクトリを作成", + "NewFile": "新規ファイル作成", + "NewPassword": "新しいパスワード", + "NewSyncCount": "新規同期", + "No": "いいえ", + "NoAlive": "オフライン", + "NoAnnouncement": "公告はありません", + "NoContent": "内容なし", + "NoData": "データなし", + "NoFiles": "現在ファイルがありません", + "NoInputCommand": "コマンドが入力されていません", + "NoLicense": "一時的に許可がありません", + "NoPermission": "一時的に権限がない", + "NoPermission403": "403 権限がありません", + "NoPermissionVew": "現在のページを表示する権限がありません", + "NoPublished": "未公開", + "NoSQLProtocol": "非リレーショナルデータベース", + "NoSystemUserWasSelected": "システムユーザーが選択されていません", + "NoUnreadMsg": "未読のメッセージはありません", + "Node": "ノード", + "NodeAmount": "ノード数", + "NodeCount": "ノード数", + "NodeInformation": "ノード情報", + "NodeSearchStrategy": "ノード検索戦略", + "NormalLoad": "正常", + "NotAlphanumericUnderscore": "アルファベット、数字、アンダースコアのみ入力可能", + "NotEqual": "等しくない", + "NotParenthesis": "()を含むことはできません", + "NotSet": "未設定", + "NotSpecialEmoji": "特殊な絵文字の入力は許可されません", + "Nothing": "無", + "Notifications": "通知", + "Now": "今", + "Num": "号", + "Number": "番号", + "NumberOfVisits": "アクセス回数", + "OAuth2": "OAuth2", + "OAuth2LogoTip": "注:認証サービスプロバイダ(推奨画像サイズ:64px*64px)", + "OIDC": "OIDC", + "OTP": "MFA (OTP)", + "ObjectNotFoundOrDeletedMsg": "対応するリソースが見つからないか、既に削除されています", + "OfficialWebsite": "公式サイトのリンク", + "OfficialWebsiteTip": "ウェブサイトのナビゲーションバーの ヘルプ -> 公式ウェブサイトのURLを変更できます", + "Offline": "オフライン", + "OfflineSuccessMsg": "オフライン成功", + "OfflineUpload": "オフラインアップロード", + "OldPassword": "旧パスワード", + "OldSSHKey": "以前のSSH公開鍵", + "On/Off": "開始/停止", + "OneAssignee": "一次受付者", + "OneAssigneeType": "一次窓口タイプ", + "OneClickRead": "既読", + "OneClickReadMsg": "現在の情報を既読としてマークしてもよろしいですか?", + "OnlineSession": "オンラインユーザー", + "OnlineSessionHelpMsg": "現在のセッションは現在のユーザーのオンラインセッションであるため、オフラインにすることはできません。現在、Webからのログインユーザーのみが記録されています", + "OnlineSessions": "オンラインセッション数", + "OnlineUserDevices": "オンラインユーザーデバイス", + "OnlineUsers": "オンラインアカウント", + "OnlyCSVFilesTips": "csvファイルのみのインポートをサポート", + "OnlyLatestVersion": "最新バージョンのみ", + "OnlyMailSend": "現在はメール送信のみをサポート", + "OnlySearchCurrentNodePerm": "現在のノードの権限のみを検索", + "Open": "保留中", + "OpenCommand": "コマンドを開く", + "OpenId": "OpenID設定", + "OpenStack": "OpenStack", + "OpenStatus": "審査中", + "OpenTicket": "ワークオーダーを作成", + "OperateLog": "操作ログ", + "OperateRecord": "操作記録", + "OperationLogNum": "操作ログ数", + "Ops": "タスク", + "Options": "オプション", + "Oracle": "Oracle", + "OrgAdmin": "組織管理者", + "OrgAuditor": "組織の監査人", + "OrgName": "認証組織の名称", + "OrgRole": "組織役割", + "OrgRoleHelpText": "組織内でのユーザーの役割・役職", + "OrgRoles": "組織の役割", + "OrgUser": "組織のユーザー", + "OrganizationCreate": "組織を作成", + "OrganizationDetail": "組織の詳細", + "OrganizationList": "組織管理", + "OrganizationLists": "組織リスト", + "OrganizationMembership": "組織のメンバー", + "OrganizationUpdate": "組織の更新", + "Os": "オペレーティングシステム", + "Other": "その他の設定", + "OtherAuth": "その他の認証", + "OtherProtocol": "その他のプロトコル", + "OtherRules": "他のルール", + "Others": "その他", + "Output": "出力", + "Overview": "概観", + "PENDING": "待機中", + "PageNext": "次のページ", + "PagePrev": "前のページ", + "Parameter": "パラメータ", + "Params": "パラメータ", + "ParamsHelpText": "パスワード変更パラメータ設定、現在はマシンタイプのアセットのみ有効です。", + "PassKey": "Passkey", + "Passkey": "Passkey", + "PasskeyAddDisableInfo": "あなたの認証源は {source} です、Passkeyの追加はサポートしていません", + "Passphrase": "秘密鍵のパスワード", + "Password": "パスワード", + "PasswordAccount": "パスワードとアカウント", + "PasswordChangeLog": "パスワード変更ログ", + "PasswordCheckRule": "パスワードの強度ルール", + "PasswordConfirm": "パスワードの認証", + "PasswordExpired": "パスワードが期限切れ", + "PasswordHelpMessage": "パスワードまたは秘密鍵のパスワード", + "PasswordLength": "パスワードの長さ", + "PasswordOrPassphrase": "パスワードまたは暗号化鍵", + "PasswordOrToken": "パスワード / トークン", + "PasswordPlaceholder": "パスワードを入力してください", + "PasswordRecord": "パスワード記録", + "PasswordRequireForSecurity": "安全のためにパスワードを入力してください", + "PasswordRule": "パスワードルール", + "PasswordSecurity": "パスワードセキュリティ", + "PasswordSelector": "パスワード入力フィールドセレクタ", + "PasswordStrategy": "暗号文生成戦略", + "PasswordWillExpiredPrefixMsg": "パスワードはまもなく", + "PasswordWillExpiredSuffixMsg": "パスワードは天数後に期限切れとなります。早急に変更してください。", + "PasswordWithoutSpecialCharHelpText": "特殊文字を含めることはできません", + "Paste": "ペースト", + "Pattern": "モード", + "Pause": "一時停止", + "PauseTaskSendSuccessMsg": "一時停止タスクが発行されました。少し待ってから再度更新してください。", + "Pending": "保留中", + "Periodic": "実行周期", + "PeriodicPerform": "定時実行", + "Perm": "認可", + "PermAccount": "認可アカウント", + "PermName": "認可名", + "PermUserList": "ユーザーに権限を与える", + "PermissionCompany": "権限を与える会社", + "PermissionName": "認証ルール名", + "Permissions": "権限", + "Perms": "権限管理", + "PersonalInformationImprovement": "個人情報の完成", + "Phone": "携帯電話番号", + "Plan": "計画", + "Platform": "システムプラットフォーム", + "PlatformCreate": "システムプラットフォームを作成する", + "PlatformDetail": "システムプラットフォームの詳細", + "PlatformList": "プラットフォームリスト", + "PlatformProtocolConfig": "プラットフォームプロトコルの設定", + "PlatformSimple": "プラットフォーム", + "PlatformUpdate": "システムプラットフォームの更新", + "PlaybookDetail": "プレイブックの詳細", + "PlaybookManage": "Playbook管理", + "PlaybookUpdate": "Playbookを更新する", + "PleaseAgreeToTheTerms": "規約に同意してください", + "PleaseClickLeftApplicationToViewApplicationAccount": "アプリケーションアカウントリスト、左側のアプリケーションをクリックして表示", + "PleaseClickLeftAssetToViewAssetAccount": "アセットアカウントリスト、左側のアセットをクリックして閲覧", + "PleaseClickLeftAssetToViewGatheredUser": "ユーザーリストを集めて、左側のアセットをクリックして確認する", + "PleaseSelect": "選択してください", + "PolicyName": "ポリシー名", + "Port": "ポート", + "Ports": "ポート", + "Postgresql": "PostgreSQL", + "Primary": "主な", + "PrimaryProtocol": "主要なプロトコル、資産の最も変調基本的で一般的なプロトコル、オンリーワンを設定しなければならない", + "Priority": "優先順位", + "PriorityHelpMessage": "1-100、1が最低優先度、100が最高優先度。複数のユーザーに権限を与えるとき、最優先のシステムユーザーがデフォルトのログインユーザーになります", + "PrivateCloud": "プライベートクラウド", + "PrivateKey": "秘密鍵", + "PrivilegeFirst": "優先的に特権アカウントを選択", + "PrivilegeOnly": "特権アカウントのみを選択", + "Privileged": "特権アカウント", + "PrivilegedFirst": "優先権限アカウント", + "PrivilegedOnly": "特権アカウントのみ", + "PrivilegedTemplate": "特権の", + "Product": "製品", + "Profile": "個人情報", + "ProfileSetting": "個人情報設定", + "Project": "プロジェクト名", + "Prompt": "ヒント", + "Proportion": "占有率", + "ProportionOfAssetTypes": "アセットタイプの割合", + "Protocol": "プロトコル", + "Protocols": "契約", + "ProtocolsEnabled": "プロトコルを有効にする", + "ProtocolsGroup": "契約", + "Provider": "クラウドサービスプロバイダ", + "Proxy": "プロキシ", + "Public": "一般的な", + "PublicCloud": "公有クラウド", + "PublicIp": "公開IP", + "PublicKey": "公開鍵", + "PublicProtocol": "公共プロトコルの場合、資産への接続時に表示されます", + "Publish": "公開", + "PublishAllApplets": "すべてのアプリケーションを公開", + "PublishStatus": "公開状態", + "Push": "プッシュ", + "PushAccount": "アカウントをプッシュ", + "PushAllSystemUsersToAsset": "すべてのシステムユーザーを資産にプッシュ", + "PushParams": "プッシュパラメータ", + "PushSelected": "選択したものをプッシュ", + "PushSelectedSystemUsersToAsset": "選択したシステムユーザをアセットにプッシュする", + "PushSystemUserNow": "システムユーザーのプッシュ", + "Qcloud": "テンセントクラウド", + "QcloudLighthouse": "テンセントクラウド(ライトウェイト・アプリケーション・サーバー)", + "QingyunPrivatecloud": "青雲プライベートクラウド", + "Queue": "キュー", + "QuickAccess": "クイックアクセス", + "QuickAdd": "迅速に追加", + "QuickJob": "ショートカットコマンド", + "QuickSelect": "速選択", + "QuickUpdate": "迅速な更新", + "RDBProtocol": "リレーショナルデータベース", + "RUNNING": "実行中", + "Radius": "Radius", + "Ranking": "ランキング", + "Ratio": "比率", + "RazorNotSupport": "RDPクライアントセッション、監視は未対応", + "ReLogin": "再ログイン", + "ReLoginErr": "ログイン時間が5分を超えています。再度ログインしてください。", + "ReLoginTitle": "CAS/SAML による現在のサードパーティログインユーザーで、MFAにバインドされておらず、パスワードの検証もサポートされていません。再ログインしてください。", + "RealTimeData": "リアルタイムデータ", + "Reason": "理由", + "Receivers": "受信者", + "RecentLogin": "最近のログイン", + "RecentSession": "最近のセッション", + "RecentlyUsed": "最近使用したもの", + "RecipientHelpText": "もし受取人 A と B が設定された場合、アカウントの秘密鍵は前後に分割されます", + "RecipientServer": "受信サーバー", + "Reconnect": "再接続", + "Redis": "Redis", + "Refresh": "リフレッシュ", + "RefreshFail": "更新に失敗しました", + "RefreshHardware": "ハードウェア情報の更新", + "RefreshLdapCache": "Ldapキャッシュを更新中、お待ちください", + "RefreshLdapUser": "キャッシュを更新", + "RefreshPermissionCache": "認証キャッシュのリフレッシュ", + "RefreshSuccess": "更新に成功", + "Regex": "正規表現", + "Region": "地域", + "RegularlyPerform": "定期的に実行", + "Reject": "拒否", + "Rejected": "拒否されました", + "RelAnd": "と", + "RelNot": "非", + "RelOr": "または", + "Relation": "関係性", + "ReleasedCount": "リリース完了", + "RelevantApp": "アプリ", + "RelevantAsset": "資産", + "RelevantAssignees": "関連受理者", + "RelevantCommand": "コマンド", + "RelevantSystemUser": "システムユーザー", + "RemoteAddr": "リモートアドレス", + "RemoteApp": "リモートアプリケーション", + "RemoteAppCount": "リモートアプリケーションの数", + "RemoteAppDetail": "リモートアプリケーションの詳細", + "RemoteAppListHelpMessage": "この機能を使用する前に、アプリケーションローダーをアプリケーションサーバーにアップロードし、RemoteAppとして成功裏に公開したことを確認してくださいアプリケーションローダーのダウンロード", + "RemoteAppPermission": "リモートアプリケーション認証", + "RemoteAppPermissionCreate": "リモートアプリケーション認証ルールを作成", + "RemoteAppPermissionDetail": "リモートアプリケーションの認証の詳細", + "RemoteAppPermissionRules": "リモートアプリケーション認証ルール", + "RemoteAppPermissionUpdate": "リモートアプリケーションの認証ルールを更新", + "RemoteAppUpdate": "リモートアプリケーションを更新", + "RemoteApps": "リモートアプリケーション", + "RemoteType": "アプリケーションタイプ", + "Remove": "削除", + "RemoveAssetFromNode": "ノードから資産を削除", + "RemoveErrorMsg": "削除に失敗:", + "RemoveFromCurrentNode": "ノードから削除", + "RemoveFromOrgWarningMsg": "組織から削除しますか?", + "RemoveSuccessMsg": "削除成功", + "RemoveWarningMsg": "本当に削除してもよろしいですか", + "Rename": "名前の変更", + "RenameNode": "ノード名を変更する", + "ReplaceNodeAssetsAdminUser": "ノード資産の管理者を交換する", + "ReplaceNodeAssetsAdminUserWithThis": "アセットの管理者を交代", + "Replay": "再生", + "ReplaySession": "セッションの再生", + "ReplayStorage": "オブジェクトストレージ", + "ReplayStorageCreateUpdateHelpMessage": "注意:現在、SFTPストレージはアカウントバックアップのみをサポートし、ビデオストレージはサポートしていません。", + "ReplayStorageUpdate": "オブジェクトストレージの更新", + "Reply": "返信", + "RequestApplicationPerm": "アプリケーションの認証を申請", + "RequestAssetPerm": "アセット権限の申請", + "RequestPerm": "認証の申請", + "RequestTickets": "ワークオーダー申請", + "Required": "必要な", + "RequiredAssetOrNode": "少なくとも一つのアセットまたはノードを選択してください", + "RequiredContent": "コマンドを入力してください", + "RequiredEntryFile": "このファイルは実行のエントリーファイルとしてあり、存在する必要があります", + "RequiredHasUserNameMapped": "マッピングに含む必要があるusernameフィールド、例 { 'uid': 'username' }", + "RequiredProtocol": "必要な同意、資産を追加する際に必ず選択し、複数設定可能", + "RequiredRunas": "実行ユーザーを入力してください", + "RequiredSystemUserErrMsg": "アカウントを選択してください", + "RequiredUploadFile": "ファイルをアップロードしてください!", + "Reset": "復元", + "ResetAndDownloadSSHKey": "キーをリセットしてダウンロード", + "ResetDingTalk": "ディング(中国のコミュニケーションアプリ)の連携解除", + "ResetDingTalkLoginSuccessMsg": "リセット成功、ユーザーは再度DingTalkにバインドできます", + "ResetDingTalkLoginWarningMsg": "ユーザーの 钉钉 を解除してもよろしいですか?", + "ResetMFA": "MFAリセット", + "ResetMFAWarningMsg": "MFAをリセットしますか?", + "ResetMFAdSuccessMsg": "MFAのリセットに成功し、ユーザーはMFAを再設定できます", + "ResetPassword": "パスワードリセット", + "ResetPasswordSuccessMsg": "ユーザーにパスワードリセットメッセージを送信しました", + "ResetPasswordWarningMsg": "ユーザーパスワードのリセットメールを送信してもよろしいですか", + "ResetPublicKeyAndDownload": "SSHキーをリセットしてダウンロード", + "ResetSSHKey": "SSHキーのリセット", + "ResetSSHKeySuccessMsg": "メール送信タスクが提出されました、ユーザーは後でキーリセットのメールを受け取ります", + "ResetSSHKeyWarningMsg": "SSHキーのリセット通知を送信してもよろしいですか?", + "ResetWechat": "企業WeChatの解除", + "ResetWechatLoginSuccessMsg": "リセット成功、ユーザーは再度企業のWeChatをバインドできます", + "ResetWechatLoginWarningMsg": "企業の WeChat のユーザーを解除することを確認していますか?", + "Resource": "資源", + "ResourceType": "リソースタイプ", + "Resources": "リソース", + "RestoreButton": "デフォルトに戻す", + "RestoreDefault": "デフォルトに戻す", + "RestoreDialogMessage": "デフォルトに戻しますか?", + "RestoreDialogTitle": "あなたは確認していますか", + "Result": "結果", + "Resume": "復元", + "ResumeTaskSendSuccessMsg": "リカバリジョブが出されました、しばらく待ってから、再度更新してご覧ください", + "Retry": "再試行", + "Reviewer": "承認者", + "Revise": "変更", + "RiskLevel": "リスクレベル", + "Role": "役割", + "RoleCreate": "ロールを作成", + "RoleDetail": "キャラクター詳細", + "RoleInfo": "役割情報", + "RoleList": "ロールリスト", + "RolePerms": "ロールの権限", + "RoleUpdate": "ロールを更新", + "RoleUsers": "権限を持つユーザー", + "Rows": "行", + "Rule": "条件", + "RuleCount": "条件数", + "RuleDetail": "ルール詳細", + "RuleRelation": "条件関係", + "RuleRelationHelpTips": "すべての条件が満たされたらのみ、アクションが実行されます。または、一つの条件が満たされたら、アクションが実行されます", + "RuleSetting": "条件設定", + "Rules": "ルール", + "Run": "実行", + "RunAgain": "再実行", + "RunAs": "実行ユーザー", + "RunCommand": "コマンドを実行", + "RunJob": "ジョブ実行", + "RunSucceed": "タスク成功的に実行されました。", + "RunTaskManually": "手動で実行", + "RunTimes": "実行回数", + "RunUser": "実行ユーザー", + "RunasHelpText": "実行スクリプトのユーザー名を入力", + "RunasPolicy": "アカウントポリシー", + "RunasPolicyHelpText": "現在のアセットに指定されたユーザーが存在しない場合、どのアカウント選択策略を採用するか。スキップ:実行しない。特権アカウント優先:特権アカウントがあればそれを選ぶ、なければ通常のアカウントを選ぶ。特権アカウントのみ:特権アカウントからのみ選択し、存在しない場合は実行しない", + "Running": "実行中", + "RunningPath": "実行パス", + "RunningPathHelpText": "スクリプトの実行パスを記入してください、この設定はシェルスクリプトにのみ有効です", + "RunningTimes": "最近5回の実行時間", + "SAML2Auth": "SAML2認証", + "SCP": "シンシンフウクラウドプラットフォーム", + "SFTPHelpMessage": "SFTPの開始パスは、ホームディレクトリとして:HOMEを指定できます。
変数をサポート:${ACCOUNT} 接続アカウント名、${USER} 現在のユーザー名、例 /tmp/${ACCOUNT}", + "SMS": "短信", + "SMSProvider": "SMS提供者", + "SMTP": "メールサーバー", + "SPECIAL_CHARREQUIRED": "特殊文字を含む必要がある", + "SSHKey": "SSH公開鍵", + "SSHKeyOfProfileSSHUpdatePage": "ここにあなたの公開鍵をコピーしてください", + "SSHKeySetting": "SSH公開鍵設定", + "SSHPort": "SSH ポート", + "SSHSecretKey": "SSHキー", + "SSO": "シングルサインオン", + "SUCCESS": "成功", + "SafeCommand": "安全なコマンド", + "SameAccount": "同名のアカウント", + "SameAccountTip": "許可されたユーザ名と同じアカウント", + "SameTypeAccountTip": "同じユーザー名、鍵タイプのアカウントが既に存在します", + "Saturday": "土曜日", + "Save": "保存", + "SaveAdhoc": "コマンドを保存", + "SaveAndAddAnother": "保存して続けて追加", + "SaveCommand": "コマンドを保存", + "SaveCommandSuccess": "コマンドの保管成功", + "SaveSetting": "同期設定", + "SaveSuccess": "保存に成功しました", + "SaveSuccessContinueMsg": "作成成功、内容を更新した後で追加を続けることができます", + "Scope": "カテゴリ", + "Script": "スクリプトリスト", + "ScriptDetail": "スクリプト詳細", + "ScrollToBottom": "下部へスクロール", + "ScrollToTop": "トップへスクロール", + "Search": "検索", + "SearchAncestorNodePerm": "現在のノードとその祖先ノードの権限を同時に検索", + "Secret": "パスワード", + "SecretKey": "キー", + "SecretKeyStrategy": "パスワードポリシー", + "SecretType": "暗号化タイプ", + "Secure": "セキュリティ", + "Security": "セキュリティ設定", + "SecurityCommandExecution": "バッチコマンド", + "SecurityInsecureCommand": "資産に危険なコマンドが実行されたときに、メールで警告通知が送信されます", + "SecurityInsecureCommandEmailReceiver": "複数のメールアドレスの場合は、半角のコンマ','で区切ります", + "SecurityLoginLimitCount": "ログイン失敗の回数制限", + "SecurityLoginLimitTime": "ログイン禁止時刻", + "SecurityMaxIdleTime": "最大接続空き時間", + "SecurityMfaAuth": "マルチファクター認証", + "SecurityPasswordExpirationTime": "パスワード有効期限", + "SecurityPasswordLowerCase": "必ず小文字を含めてください", + "SecurityPasswordMinLength": "パスワードの最小長さ", + "SecurityPasswordNumber": "数字を含む必要があります", + "SecurityPasswordSpecialChar": "特殊文字を含まなければなりません", + "SecurityPasswordUpperCase": "大文字を含める必要がある", + "SecurityServiceAccountRegistration": "コンポーネントの登録", + "SecuritySetting": "セキュリティ設定", + "Select": "選択", + "SelectAccount": "アカウントを選択", + "SelectAdhoc": "コマンド選択", + "SelectAll": "すべて選択", + "SelectAssetsMessage": "左側の資産を選択し、実行するシステムユーザーを選択し、コマンドを一括実行する", + "SelectAtLeastOneAssetOrNodeErrMsg": "資産またはノードを少なくとも一つ選択してください", + "SelectAttrs": "属性の選択", + "SelectByAttr": "属性フィルタ", + "SelectCreateMethod": "作成方法の選択", + "SelectFile": "ファイルを選んでください", + "SelectKeyOrCreateNew": "タグキーを選択するか、新規作成", + "SelectLabelFilter": "タグ検索を選択", + "SelectPlatforms": "プラットフォームを選択", + "SelectProperties": "属性の選択", + "SelectResource": "リソースの選択", + "SelectTemplate": "テンプレートの選択", + "SelectValueOrCreateNew": "タグ値を選択または新しく作成", + "Selected": "選択済み", + "SelectedAssets": "選択済みの資産:", + "Selection": "選択可能", + "Selector": "セレクタ", + "Send": "送信", + "SendVerificationCode": "認証コード送信", + "Sender": "送信者", + "Senior": "アドバンスド", + "SerialNumber": "シリアルナンバー", + "ServerAccountKey": "サービスアカウントキー", + "ServerError": "サーバーエラー", + "ServerTime": "サーバー時間", + "ServiceRatio": "コンポーネントの負荷統計", + "Session": "セッション", + "SessionActiveCount": "オンラインセッション数", + "SessionData": "セッションデータ", + "SessionDetail": "セッション詳細", + "SessionID": "セッションID", + "SessionList": "セッションログ", + "SessionMonitor": "モニタリング", + "SessionOffline": "過去のセッション", + "SessionOnline": "オンラインセッション", + "SessionSecurity": "セッションのセキュリティ", + "SessionState": "セッションの状態", + "SessionTerminate": "セッション切断", + "SessionTrend": "セッショントレンド", + "Sessions": "セッション管理", + "SessionsAudit": "セッション監査", + "SessionsNum": "セッション数", + "Set": "設定済み", + "SetAdDomainNoDisabled": "特権アカウントを使用して資産上に一般アカウントを作成し、ADドメインが設定されている場合は変更できません(Windows)", + "SetDingTalk": "ダイング通知の設定", + "SetFailed": "設定に失敗", + "SetFeiShu": "フェイシュ認証を設定", + "SetMFA": "マルチファクター認証の設定", + "SetPublicKey": "SSH公開鍵を設定", + "SetSlack": "Slack認証の設定", + "SetStatus": "状態の設定", + "SetSuccess": "設定成功", + "SetToDefault": "デフォルトに設定", + "SetToDefaultStorage": "デフォルトストレージに設定", + "SetWeCom": "企業微信認証の設定", + "Setting": "設定", + "SettingInEndpointHelpText": "システム設定/コンポーネント設定/サービスエンドポイントでサービスアドレスとポートを設定", + "Settings": "システム設定", + "Show": "表示", + "ShowAssetAllChildrenNode": "すべての子ノードの資産を表示する", + "ShowAssetOnlyCurrentNode": "現在のノードのアセットのみを表示", + "ShowNodeInfo": "ノード詳細を表示", + "SignChannelNum": "署名チャネル番号", + "SignaturesAndTemplates": "署名とテンプレート", + "SiteMessage": "内部通信", + "SiteMessageList": "内部メール", + "SiteUrl": "現在のサイトURL", + "Skip": "現在の資産を無視する", + "Skipped": "スキップ済み", + "Slack": "Slack", + "Source": "ソース", + "SourceIP": "ソースアドレス", + "SourcePort": "ソースポート", + "Spec": "指定した", + "SpecAccount": "指定アカウント", + "SpecAccountTip": "指定ユーザー名で認証アカウントを選択", + "SpecialSymbol": "特殊文字", + "SpecificInfo": "特別な情報", + "Sqlserver": "SQLServer", + "SshKeyFingerprint": "SSHフィンガープリント", + "SshPort": "SSHポート", + "Sshkey": "sshキー", + "SshkeyAccount": "キーアカウント", + "StartEvery": "スタート、毎", + "Startswith": "...で始まる", + "Stat": "成功/失敗/合計", + "State": "ステータス", + "StateClosed": "閉鎖済み", + "Status": "状態", + "StatusGreen": "最近の状況は良好", + "StatusRed": "前回のタスクの実行に失敗", + "StatusYellow": "最近、実行失敗が発生しています", + "Stop": "停止", + "Storage": "ストレージ", + "StorageConfiguration": "設定を保存", + "Strategy": "ポリシー", + "StrategyCreate": "ポリシーの作成", + "StrategyDetail": "ポリシーの詳細", + "StrategyHelpTips": "ポリシーの優先度に従ってアセットの一意性(プラットフォームなど)を決定し、アセットの属性(ノードなど)が複数設定可能な場合、すべてのポリシーのアクションが実行されます", + "StrategyList": "ポリシーリスト", + "StrategyUpdate": "更新ポリシー", + "SuFrom": "から切り替える", + "Subject": "主題", + "Submit": "提出", + "SubmitSelector": "送信ボタンのセレクタ", + "Subscription": "メッセージ購読", + "SubscriptionID": "サブスクリプション認証ID", + "Success": "成功", + "SuccessAsset": "成功したアセット", + "SuccessfulOperation": "操作成功", + "SudoHelpMessage": "複数のコマンドをカンマで区切ってください。例: /bin/whoami,/sbin/ifconfig", + "Summary(success/total)": "概要(成功/総数)", + "Sunday": "日曜日", + "SuperAdmin": "スーパーユーザー", + "SuperOrgAdmin": "スーパーアドミン+組織アドミン", + "Support": "サポート", + "SupportedProtocol": "サポートされているプロトコル", + "SupportedProtocolHelpText": "アセットがサポートするプロトコルを設定、設定ボタンをクリックしてプロトコルにカスタム設定を追加できます、例えばSFTPディレクトリ、RDP ADドメインなど", + "SwitchPage": "ビューの切替", + "SwitchToUser": "Suユーザー", + "SwitchToUserListTips": "以下のユーザーが資産に接続するとき、現在のシステムユーザーでログインしてスイッチングを行います。", + "SymbolSet": "特別な記号の集合", + "SymbolSetHelpText": "データベースでサポートされている特殊文字のセットを入力してください。生成されたランダムパスワードにデータベースがサポートしていない特殊文字が含まれている場合、パスワード変更プランは失敗します。", + "Sync": "同期", + "SyncDelete": "同期を削除", + "SyncInstanceTaskCreate": "同期タスクの作成", + "SyncInstanceTaskDetail": "同期タスク詳細", + "SyncInstanceTaskHistoryAssetList": "同期インスタンスリスト", + "SyncInstanceTaskHistoryList": "同期履歴リスト", + "SyncInstanceTaskList": "同期タスクリスト", + "SyncInstanceTaskUpdate": "同期タスクの更新", + "SyncProtocolToAsset": "同期プロトコルへアセット", + "SyncSelected": "選択したものを同期", + "SyncSetting": "設定の同期", + "SyncStrategy": "同期ポリシー", + "SyncSuccessMsg": "同期成功", + "SyncTask": "同期タスク", + "SyncUpdateAccountInfo": "アカウント情報の同期更新", + "SyncUser": "ユーザーの同期", + "SyncedCount": "同期済み", + "SystemCpuLoad": "CPU負荷", + "SystemDiskUsedPercent": "ハードディスクの使用率", + "SystemError": "システムエラー", + "SystemMemoryUsedPercent": "メモリ使用率", + "SystemMessageSubscription": "システムメッセージの購読", + "SystemRole": "システムロール", + "SystemRoles": "システムロール", + "SystemSetting": "システム設定", + "SystemTools": "システムツール", + "SystemUser": "システムユーザー", + "SystemUserAmount": "システムユーザー数", + "SystemUserCount": "システムユーザ", + "SystemUserCreate": "システムユーザを作成", + "SystemUserDetail": "システムユーザー詳細", + "SystemUserId": "システムユーザーID", + "SystemUserList": "システムユーザー", + "SystemUserListHelpMessage": "システムユーザーはJumpServerが資産にログインする際に使用するアカウントで、`ssh root@host`のようにrootとしてログインします。資産にログインするためにこのユーザー名(ssh admin@host)を使用しないでください。
特権ユーザーは、すでに存在し、高度な権限を持つシステムユーザーで、JumpServerはこのユーザーを使って`システムユーザーをプッシュ`、`資産ハードウェア情報を取得`するなど。
一般ユーザーは資産上に事前に存在することもできますし、特権ユーザーによって自動的に作成することもできます。", + "SystemUserName": "システムユーザ名", + "SystemUserUpdate": "システムユーザーの更新", + "SystemUsers": "システムユーザ", + "System_usersAmount": "システムユーザ", + "System_users_nameGroup": "システムユーザー名", + "System_users_protocolGroup": "システム利用規約", + "System_users_usernameGroup": "システムユーザー名", + "TableColSettingInfo": "表示したい詳細リストを選んでください。", + "Target": "目標", + "TargetResources": "対象リソース", + "Task": "タスク", + "TaskCenter": "タスクセンター", + "TaskDetail": "タスク詳細", + "TaskDispatch": "タスクが正常に配信されました", + "TaskDone": "タスク完了", + "TaskID": "タスク ID", + "TaskList": "タスクリスト", + "TaskMonitor": "タスク監視", + "TaskName": "タスク名", + "TaskVersions": "各タスクのバージョン", + "Tasks": "作業", + "TechnologyConsult": "テクニカルアドバイザリー", + "TempPassword": "一時パスワードの有効期限は 300 秒で、使用後すぐに失効します", + "Template": "テンプレート管理", + "TemplateAdd": "テンプレートの追加", + "TemplateCreate": "テンプレートを作成", + "TemplateDetail": "テンプレート詳細", + "TemplateHelpText": "テンプレートを選択して追加すると、アセット下に存在しないアカウントが自動的に作成され推送されます", + "TemplateUpdate": "テンプレートを更新", + "Templates": "テンプレート管理", + "TencentCloud": "テンセントクラウド", + "Terminal": "コンポーネント設定", + "TerminalAssetListPageSize": "資産のページあたりの表示数", + "TerminalAssetListSortBy": "アセットリストの並べ替え", + "TerminalDetail": "端末詳細", + "TerminalHeartbeatInterval": "ハートビート間隔", + "TerminalPasswordAuth": "パスワード認証", + "TerminalPublicKeyAuth": "キー認証", + "TerminalSessionKeepDuration": "セッションの保持期間", + "TerminalStat": "CPU/メモリ/ディスク", + "TerminalTelnetRegex": "Telnet成功の正規表現", + "TerminalUpdate": "エンドポイントの更新", + "TerminalUpdateStorage": "エンドポイントストレージの更新", + "Terminate": "最終終了", + "TerminateTaskSendSuccessMsg": "タスクの終了が発行されました。後で更新して確認してください", + "TermsAndConditions": "条項と条件", + "Test": "テスト", + "TestAccountConnective": "テストアカウントの接続性", + "TestAllSystemUsersConnective": "すべてのシステムユーザーの接続性をテストする", + "TestAssetsConnective": "資産の接続可能性テスト", + "TestConnection": "接続テスト", + "TestGatewayHelpMessage": "NATポートマッピングが利用されている場合、SSHの実際のリッスンポートを設定してください", + "TestGatewayTestConnection": "ゲートウェイの接続をテスト", + "TestHelpText": "テストの目的地を入力してください", + "TestLdapLoginSubtitle": "テストログインを行う前にLDAP設定を提出してください", + "TestLdapLoginTitle": "LDAPユーザーログインテスト", + "TestMultiPort": "複数のポートは、で区切られます", + "TestNodeAssetConnectivity": "アセットノードの接続性をテストする", + "TestParam": "パラメータ", + "TestPortErrorMsg": "ポートエラー、再入力してください", + "TestSelected": "選択したものをテスト", + "TestSelectedSystemUsersConnective": "選択したシステムユーザーの接続性をテスト", + "TestSuccessMsg": "テスト成功", + "The": "第", + "ThisPeriodic": "これは周期的なジョブです", + "Thursday": "木曜日", + "Ticket": "作業依頼", + "TicketCreate": "チケットの作成", + "TicketDetail": "ワークオーダーの詳細", + "TicketFlow": "作業指示票フロー", + "TicketFlowCreate": "承認フローの作成", + "TicketFlowUpdate": "承認フロー更新", + "Tickets": "ワークオーダーリスト", + "TicketsDone": "完了したワークオーダー", + "TicketsNew": "チケットの提出", + "TicketsTodo": "保留中のチケット", + "Time": "時間", + "TimeDelta": "実行時間", + "TimeExpression": "タイム表現", + "TimePeriod": "時間帯", + "Timeout": "タイムアウト", + "TimeoutHelpText": "この値が-1の場合、タイムアウト時間を設定しません", + "Timer": "定時実行", + "TimerPeriod": "定期的な実行サイクル", + "TimesWeekUnit": "回/週", + "Title": "タイトル", + "To": "まで", + "Today": "今日", + "TodayFailedConnections": "今日の接続失敗数", + "Token": "トークン", + "TokenHTTPMethod": "トークン取得方法", + "TopAssetsOfWeek": "週間資産 TOP10", + "TopUsersOfWeek": "週刊ユーザー TOP10", + "Total": "合計", + "TotalJobFailed": "失敗したジョブの数", + "TotalJobLog": "タスクの実行総数", + "TotalJobRunning": "実行中のジョブ数", + "TotalVersions": "バージョン数", + "Transfer": "転送", + "True": "はい", + "Tuesday": "火曜日", + "TwoAssignee": "二次受理者", + "TwoAssigneeType": "二級受理人タイプ", + "Type": "タイプ", + "Types": "タイプ", + "UCloud": "UCloud優刻得", + "UPPER_CASEREQUIRED": "大文字を含む必要があります", + "UnSyncCount": "未同期", + "Unbind": "アンバインド", + "UnbindHelpText": "この認証源に対するローカルユーザーで、バインド解除はできません", + "Unblock": "ロック解除", + "UnblockSuccessMsg": "ロック解除成功", + "UnblockUser": "ユーザーのロックを解除", + "UniqueError": "以下の属性は一つだけ設定可能", + "Unknown": "不明", + "UnlockSuccessMsg": "ロック解除成功", + "Unreachable": "接続不可", + "UnselectedAssets": "アセットが選択されていない、または選択したアセットがSSHプロトコルの接続をサポートしていない", + "UnselectedNodes": "ノードが未選択", + "UnselectedOrg": "組織を選択していません", + "UnselectedUser": "選択されていないユーザー", + "UpDownload": "アップロードダウンロード", + "Update": "更新", + "UpdateAccount": "アカウント更新", + "UpdateAccountMsg": "システムユーザのアカウント情報を更新してください", + "UpdateAccountTemplate": "アカウントテンプレートの更新", + "UpdateAssetDetail": "より詳しい情報の設定", + "UpdateAssetUserToken": "アカウント認証情報更新", + "UpdateEndpoint": "エンドポイントの更新", + "UpdateEndpointRule": "エンドポイントルールの更新", + "UpdateErrorMsg": "更新に失敗", + "UpdateMFA": "多要素認証を変更する", + "UpdateNodeAssetHardwareInfo": "ノードの資産ハードウェア情報を更新", + "UpdatePassword": "パスワードを更新する", + "UpdateSSHKey": "SSH公開鍵を更新", + "UpdateSecret": "暗号文を更新", + "UpdateSelected": "選択したものを更新する", + "UpdateSuccessMsg": "更新成功", + "Updated": "更新済み", + "UpdatedBy": "アップデータ", + "Upload": "アップロード", + "UploadCsvLth10MHelpText": "csv/xlsxのみアップロード可能で、10Mを超えてはいけません", + "UploadDir": "アップロードディレクトリ", + "UploadFailed": "アップロード失敗", + "UploadFile": "ファイルのアップロード", + "UploadFileLthHelpText": "{limit}MB以下のファイルのみアップロード可能", + "UploadPlaybook": "Playbookをアップロードする", + "UploadSucceed": "アップロード成功", + "UploadZipTips": "zip形式のファイルをアップロードしてください", + "Uploading": "ファイルのアップロード中", + "Uppercase": "大文字", + "UseParameterDefine": "パラメーターの定義", + "UseProtocol": "使用プロトコル", + "UseSSL": "SSL/TLS の使用", + "User": "ユーザ", + "UserAclDetail": "ユーザーログインルールの詳細", + "UserAclList": "ユーザーのログイン", + "UserAclLists": "ユーザーログインルール", + "UserAssetActivity": "アカウント/資産の活動状況", + "UserCount": "ユーザー数", + "UserCreate": "ユーザーの作成", + "UserData": "アカウント情報", + "UserDetail": "ユーザーの詳細", + "UserFirstLogin": "初回ログイン", + "UserGroupCount": "ユーザーグループの数", + "UserGroupCreate": "ユーザーグループを作成", + "UserGroupDetail": "ユーザーグループ詳細", + "UserGroupList": "ユーザーグループ", + "UserGroupUpdate": "ユーザーグループの更新", + "UserGroups": "ユーザー・グループ", + "UserGuide": "ユーザーガイド", + "UserGuideUrl": "ユーザーガイドURL", + "UserIP": "ログインIP", + "UserInformation": "ユーザー情報", + "UserList": "ユーザーリスト", + "UserLoginACL": "ユーザーログイン", + "UserLoginACLCreate": "ユーザーログインルール作成", + "UserLoginACLDetail": "ユーザーログイン制限", + "UserLoginACLHelpMsg": "ログインシステム時、ユーザーのログインIPと時間帯を審査し、システムへのログインを許可するかどうかを判断する(全体対象)", + "UserLoginACLUpdate": "ユーザーログインルールを更新", + "UserLoginAclCreate": "ユーザーログインコントロールを作成", + "UserLoginAclDetail": "ユーザーログインの詳細", + "UserLoginAclList": "ユーザーログイン", + "UserLoginAclUpdate": "ユーザーログイン制御の更新", + "UserLoginLimit": "ユーザーログイン制限", + "UserLoginTrend": "アカウントログインの傾向", + "UserName": "名前", + "UserNameSelector": "ユーザ名入力フィールドセレクタ", + "UserPage": "ユーザービュー", + "UserProfile": "個人情報", + "UserRatio": "ユーザーの割合統計", + "UserSession": "ユーザーセッション", + "UserSetting": "好みの設定", + "UserSwitch": "ユーザーの切り替え", + "UserSwitchFrom": "切り替え自", + "UserUpdate": "ユーザー更新", + "UserUsername": "ユーザー(ユーザー名)", + "Username": "ユーザー名", + "UsernameGroup": "ユーザ名", + "UsernameHelpMessage": "ユーザ名は動的で、アセットへのログイン時には現在のユーザ名を使用", + "UsernameOfCreateUpdatePage": "ターゲットホスト上のユーザー名。存在する場合は、ユーザーのパスワードを変更。存在しない場合、ユーザーを追加しパスワードを設定。", + "UsernamePlaceholder": "ユーザー名を入力してください", + "Users": "ユーザー", + "UsersAmount": "ユーザー", + "UsersAndUserGroups": "ユーザー/ユーザーグループ", + "UsersTotal": "アカウント総数", + "Valid": "有効", + "Validity": "有効な", + "Value": "値", + "Variable": "変数", + "VariableHelpText": "{{ key }} をコマンドで使用して組み込み変数を読み取ることができます", + "Vault": "パスワードボックス", + "VaultHelpText": "1. セキュリティ上の理由から、設定ファイルでVaultストレージを有効にする必要があります。
2. 有効化後、他の設定を入力し、テストを行います。
3. データ同期を行います。同期は一方向で、ローカルデータベースから遠隔Vaultにのみ同期され、同期が完了するとローカルデータベースではパスワードは保存されませんので、データをバックアップしてください。
4. Vaultの設定を二度目に変更すると、サービスを再起動する必要があります。", + "Vendor": "製造元", + "VerificationCodeSent": "検証コードが送信されました", + "VerifySignTmpl": "認証コードSMSテンプレート", + "Version": "バージョン", + "VersionDetail": "バージョン詳細", + "VersionRunExecution": "実行履歴", + "View": "ビュー", + "ViewBlockedIPSHelpText": "ロックされたIP一覧を表示", + "ViewMore": "もっと見る", + "ViewPerm": "認証の表示", + "ViewSecret": "暗号文を表示", + "VirtualAccountDetail": "仮想アカウント詳細", + "VirtualAccountUpdate": "仮想アカウントの更新", + "VirtualAccounts": "仮想アカウント", + "VirtualApp": "仮想アプリケーション", + "VirtualAppDetail": "仮想アプリケーション詳細", + "VirtualApps": "仮想アプリケーション", + "VmwareClient": "vSphereクライアント", + "VmwarePassword": "ログインパスワード", + "VmwareTarget": "目標アドレス", + "VmwareUsername": "ログインアカウント", + "WeCom": "企業WeChat", + "WeComTest": "テスト", + "WebCreate": "Web資産の作成", + "WebFTP": "ファイル管理", + "WebHelpMessage": "Web型資産はリモートアプリケーションに依存しています、システム設定でリモートアプリケーションを設定してください", + "WebSocketDisconnect": "WebSocketが切断されました", + "WebTerminal": "Web端末", + "WebUpdate": "アセット-Webの更新", + "Wednesday": "水曜日", + "Week": "週", + "WeekAdd": "今週の新規", + "WeekOf": "週の日", + "WeekOrTime": "日付/時間", + "Weekly": "週ごと", + "WildcardsAllowed": "許可されたワイルドカード", + "WindowsAdminUser": "Windows 特権ユーザー", + "WindowsPushHelpText": "Windows資産はキーのプッシュをサポートしていません", + "WordSep": "", + "WorkBench": "ワークベンチ", + "Workbench": "ワークベンチ", + "Workspace": "ワークスペース", + "Yes": "はい", + "ZStack": "ZStack" +} \ No newline at end of file diff --git a/apps/locale/luna/ja.json b/apps/locale/luna/ja.json index c8c409d1b..62d52861e 100644 --- a/apps/locale/luna/ja.json +++ b/apps/locale/luna/ja.json @@ -1,199 +1,201 @@ { - "ACL reject login asset": "アクセス制御ポリシーの制限により、このログインは拒否されました", + "ACL reject login asset": "このログインはアクセス制御ポリシーの制限により拒否されました", "Account info": "アカウント情報", "Account not found": "アカウントが見つかりません", "Account: ": "アカウント: {{value}}", - "Action: ": "アクション: ", - "Advanced option": "上級オプション", - "All sessions": "すべてのセッション", - "Applet": "アプレット", - "Applet connect method": "アプレット接続方法", - "Are you sure to reconnect it?(RDP not support)": "本当に再接続しますか? (RDPは一時的にサポートしていない)", - "Asset disabled": "この資産はすでに無効になっている場合、管理者に連絡してください", - "Asset not found or You have no permission to access it, please refresh asset tree": "アセットが見つからないか、アクセスする権限がありません。アセット ツリーを更新してください", - "Asset tree loading method": "資産ツリーのロード方法の設定", - "Asset: ": "アセット: {{value}}", - "Assignees": "受信者", - "Automatic login next": "次回の自動登録 (右クリック資産接続は再選択できます)", - "Backspace as Ctrl+H": "文字端末backspacas Ctrl H", - "Batch actions": "バッチ操作", - "Batch connect": "バッチ接続", - "Belgian French keyboard layout": "Belgian French (Azerty)", + "Action: ": "操作:", + "Advanced option": "高度なオプション", + "All sessions": "全セッション", + "Applet": "リモートアプリケーション", + "Applet connect method": "リモートアプリケーションの接続方法", + "Are you sure to reconnect it?(RDP not support)": "再接続しますか?(RDPは暫定的にサポートしていません)", + "Asset disabled": "この資産は無効化されています、管理者に連絡してください", + "Asset not found or You have no permission to access it, please refresh asset tree": "資産が見つからないか、あなたがアクセスする権限がない、資産ツリーをリフレッシュしてください", + "Asset tree loading method": "資産ツリーの読み込み方法を設定", + "Asset: ": "資産: {{value}}", + "Assignees": "受付人", + "Automatic login next": "次回は自動ログイン(アセットリンクを右クリックすると再選択できます)", + "Backspace as Ctrl+H": "バックスペースキーをCtrl+Hとして使用", + "Batch actions": "一括操作", + "Batch connect": "一括接続", + "Belgian French keyboard layout": "Belgian French(Azerty)", "CLI": "コマンドライン", - "CLI font size": "文字端末のフォントサイズ", + "CLI font size": "キャラクターターミナルのフォントサイズ", "Cancel": "キャンセル", "Charset": "文字セット", - "Checkbox": "複数選択", - "Choose a User": "ユーザーを選択します", - "Click to copy": "クリックしてコピーする", - "Client": "お客様", - "Clone Connect": "コピーウィンドウ", - "Close": "閉鎖", - "Close All Tabs": "すべてを閉じる", - "Close Current Tab": "現在を閉じる", + "Checkbox": "複数選択 ", + "Choose a User": "ユーザーを選択", + "Click to copy": "クリックしてコピー", + "Client": "クライアント", + "Clone Connect": "ウィンドウをコピー", + "Close": "閉じる", + "Close All Tabs": "全て閉じる", + "Close Current Tab": "現在のウィンドウを閉じる", "Close Left Tabs": "左側を閉じる", - "Close Other Tabs": "その他を閉じる", + "Close Other Tabs": "それ以外を閉じる", "Close Right Tabs": "右側を閉じる", - "Close split connect": "分割表示を閉じる", + "Close split connect": "分割画面を閉じる", "Command Line": "コマンドライン", - "Command line": "命令行", + "Command line": "コマンドラインに接続", "Confirm": "確認", "Connect": "接続", "Connect Method": "接続方法", - "Connect checked": "接続済み", - "Connect command line": "接続コマンドライン", - "Copied": "複製済み", - "Copy link": "リンクをコピーする", + "Connect checked": "選択した接続", + "Connect command line": "コマンドラインへの接続", + "Copied": "コピー済み", + "Copy link": "リンクをコピー", "Current online": "現在オンライン", "Current session": "現在のセッション", "Database": "データベース", - "Database disabled": "このリンク方式をサポートしていない、管理者に連絡してください", - "Database info": "データベース接続情報", - "Database token help text": " クライアントが接続するデータベースの種類のトークンは、コンポーネントによって5分間キャッシュされます。つまり、トークンは使用後すぐに無効になるわけではありませんが、クライアントが切断されてから5分後に無効になります", + "Database connect info": "データベース接続情報", + "Database disabled": "この種類の接続はサポートされていません, 管理者に連絡してください", + "Database info": "データベース情報", + "Database token help text": "データベース型のトークンは5分間キャッシュされます。つまり、トークンを使用してから、すぐには無効にならず、クライアントが切断されてから5分後に、このトークンは完全に無効になります。", "Databases": "データベース", - "Directly": "直接接続", - "Disable auto completion": "自動補完の無効化", - "Disconnect": "リンクを切断", - "Disfavor": "コレクションをキャンセル", + "Directly": "ユーザー名は、指定された資産とアカウントに接続します", + "Disable auto completion": "オートコンプリートを無効にする", + "Disconnect": "接続を切断", + "Disfavor": "お気に入り解除", "Do not close this page": "このページを閉じないでください", - "Document": "ドキュメント", - "Don't prompt again": "次回は提示しない", + "Document": "文書", + "Don't prompt again": "次回から表示しない", "Download": "ダウンロード", - "Download the latest client": "最新クライアントのダウンロード", - "Driver redirect": "ディスクマウント", + "Download the latest client": "最新のクライアントをダウンロード", + "Driver redirect": "ディスクのマウント", "Expand": "展開", - "Expand all": "すべて展開", - "Expand all asset": "現在のノードの下にあるすべてのアセットを展開", - "Expire time": "期限切れ", - "Failed to open address": "アドレスを開くことができませんでした", - "Favorite": "コレクション", + "Expand all": "全て展開", + "Expand all asset": "全ての資産を展開", + "Expire time": "有効期限", + "Failed to open address": "アドレスの開封に失敗", + "Favorite": "お気に入り", "File Manager": "ファイル管理", - "Fold": "折りたたみ", - "Fold all": "すべて折りたたみ", - "Force refresh": "強制更新", + "Fold": "折りたたむ", + "Fold all": "全て折りたたむ", + "Force refresh": "強制的に更新", "Found": "発見", - "French keyboard layout": "French (Azerty)", + "French keyboard layout": "フレンチ(アゼルティ)", "Full Screen": "全画面表示", - "Full screen": "全画面", - "GUI": "グラフィカル", - "General": "基本構成", + "Full screen": "フルスクリーン", + "GUI": "視覚化", + "General": "基本設定", "Help": "ヘルプ", - "Help or download": "ヘルプ → ダウンロード", - "Help text": "します", - "Hide left manager": "左サイドバーを非表示", + "Help or download": "メニューヘルプ → ダウンロード", + "Help text": "説明", + "Hide left manager": "左のサイドバーを隠す", "Host": "ホスト", "Info": "ヒント", - "InstallClientMsg": "JumpServerクライアントがインストールされていない、今ダウンロードしてインストールしますか?", - "Japanese keyboard layout": "Japanese (Qwerty)", + "InstallClientMsg": "JumpServerクライアントがインストールされていません、今すぐダウンロードしてインストールしますか?", + "Japanese keyboard layout": "日本語 (Qwerty)", "Keyboard keys": "Option + Left / Option + Right", "Keyboard layout": "キーボードレイアウト", - "Keyboard switch session": "セッションの切り替え → ショートカットキー", + "Keyboard switch session": "会話を切り替え → ショートカット", "Kubernetes": "Kubernetes", "Language": "言語", - "Last login": "前回ログイン", - "Launch Program": "起動プログラム", - "LeftInfo": "コマンドログをクリックして迅速に定位できるビデオ", - "Load tree async": "アセットツリーの非同期ロード", - "Loading": "ロード中", - "Log out": "ログインを終了", + "Last login": "前回のログイン", + "Launch Program": "プログラムを開始", + "LeftInfo": "コマンドレコードをクリックすると、録画を素早く見つけられます", + "Load tree async": "非同期でアセットツリーを読み込む", + "Loading": "読み込み中", + "Log out": "ログアウト", "Login reminder": "ログインリマインダー", - "Login review approved": "ログイン監査に合格し、アセットを接続しています...", - "LoginExpireMsg": "ログインが期限切れになりました。ログインし直してください", + "Login review approved": "ログイン審査が通過しました, 資産へ接続中...", + "LoginExpireMsg": "ログインが期限切れです。再度ログインしてください。", "Manual accounts": "手動アカウント", - "Module": "ユニット", - "Multi Screen": "マルチスクリーン", - "My applications": "私の応用", - "My assets": "マイ資産", - "Name": "めいしょう", + "Module": "モジュール", + "Multi Screen": "マルチスクリーン表示", + "My applications": "マイアプリ", + "My assets": "私の資産", + "Name": "名前", "Native": "クライアント", - "Need review for login asset": "このログインは手動で確認する必要があります。続行しますか?", - "Need to use": "使用する必要がある", - "No": "いいえ", - "No account available": "アカウントがありません", - "No available connect method": "接続方法がありません", - "No matching found": "マッチがありません", + "Need review for login asset": "今回のログインは人間によるオーディットが必要です、続行しますか?", + "Need to use": "使用が必要", + "No": "否", + "No account available": "使用可能なアカウントがありません", + "No available connect method": "利用可能な接続方法がありません", + "No matching found": "該当する項目はありません", "No permission": "権限がありません", "No protocol available": "利用可能なプロトコルがありません", - "Normal accounts": "通常のログインアカウント", - "Not quick command": "非高速コマンド", - "Open in new window": "新しいウィンドウが開きます", + "Not quick command": "ショートカットコマンドはありません", + "Open in new window": "新しいウィンドウで開く", "Password": "パスワード", - "Password is token password on the table": "パスワードは、テーブルのトークンパスワードです", - "Password is your password login to system": "パスワードは、システムにログインするためのパスワードです", - "Pause": "タスクを一時停止", - "Pause task has been send": "一時停止タスクが送信されました", + "Password is token password on the table": "パスワードは表のトークンパスワードです", + "Password is your password login to system": "パスワードはあなたのログインシステムのパスワードです", + "Pause": "一時停止", + "Pause task has been send": "一時停止タスクは送信されました", "Please choose an account": "ユーザーを選択してください", "Please input password": "パスワードを入力してください", "Port": "ポート", - "Protocol": "プロトコル", + "Protocol": "規約", "Protocol: ": "プロトコル: {{value}}", "RDP Client": "RDPクライアント", "RDP File": "RDPファイル", "RDP client options": "RDPクライアントオプション", - "RDP color quality": "RDP 色品質", - "RDP resolution": "RDP 解像度", - "RDP smart size": "RDP スマート・サイズ", - "Re-use for a long time after opening": "開いた後、長い間再利用する", + "RDP color quality": "RDP色品質", + "RDP resolution": "RDP解像度", + "RDP smart size": "RDPスマートサイズ", + "Re-use for a long time after opening": "有効にした後、この接続情報を長期間、何度でも使用できます", "Reconnect": "再接続", - "Refresh": "リフレッシュ", - "Remember password": "パスワードを覚える", - "Remember select": "選択を覚える", + "Refresh": "更新", + "Remember password": "パスワードを保持", + "Remember select": "選択を記憶", "Remote apps": "リモートアプリケーション", - "Reselect connection method": "資産の接続方法の再選択", - "Resume": "タスクを再開", - "Resume task has been send": "タスクが再開されました", - "Right click asset": "右クリック資産", - "Right click node": "右クリックノード", - "Right mouse quick paste": "右クイック貼り付け", - "Run it by client": "クライアントで実行する", + "Reselect connection method": "接続方法を再選択可能", + "Resume": "回復", + "Resume task has been send": "復旧タスクが送信されました", + "Right click asset": "資産を右クリック → 接続", + "Right click node": "ノードを右クリック→全て展開", + "Right mouse quick paste": "右クリックで速やかにペースト", + "Run it by client": "クライアントで実行", "SQL Client": "SQLクライアント", - "Save command": "保存コマンド", - "Save success": "保存に成功", + "Save command": "コマンドを保存", + "Save success": "保存が成功しました", "Search": "検索", - "Select account": "システムユーザーの選択", + "Select account": "アカウントを選択", "Send command": "コマンドを送信", - "Send text to all ssh terminals": "すべてのssh端末にテキストを送信します", - "Set reusable": "再利用可能な", + "Send text to all ssh terminals": "全てのssh端末にテキストを送信", + "Set reusable": "再利用を開始", "Setting": "設定", - "Settings or basic settings": "設定 → 基本設定", - "Show left manager": "左サイドバーを表示", + "Settings or basic settings": "メニュー設定 → 基本設定", + "Show left manager": "左側のバーを表示", "Skip": "スキップ", - "Skip manual password": "手動パスワードウィンドウをスキップします", - "Special account": "特別なアカウント", - "Special accounts": "特別ログインアカウント", - "Speed": "スピード", - "Split connect": "スクリーン接続", - "Split connect number": "1つのセッションで最大3つの画面分割接続をサポート", - "Split vertically": "垂直分割", - "Start Time: ": "開始時間: {{value}}", - "Stop": "Stop", + "Skip manual password": "手動パスワードウィンドウをスキップ", + "Special accounts": "特別なアカウント", + "Speed": "速度", + "Split connect": "スプリット画面で接続", + "Split connect number": "1セッションに最大3つの分割接続が可能", + "Split vertically": "垂直分割スクリーン", + "Start Time: ": "開始時間:{{value}}", + "Stop": "停止", "Support": "サポート", - "Swiss French keyboard layout": "Swiss French (Qwertz)", - "Switch to input command": "入力コマンドに切り替え", - "Switch to quick command": "クイックコマンドに切り替え", + "Swiss French keyboard layout": "スイスフレンチ(Qwertz)", + "Switch to input command": "コマンド入力に切り替え", + "Switch to quick command": "ショートカットコマンドに切り替え", "Tab List": "ウィンドウリスト", - "The connection method is invalid, please refresh the page": "接続方法が無効です。ページを更新してください", - "Ticket review closed for login asset": "このログイン レビューは終了しており、アセットを接続できません", - "Ticket review pending for login asset": "ログイン アプリケーションが送信され、承認者が確認するのを待っています。リンクをコピーして承認者に送信することもできます。", - "Ticket review rejected for login asset": "このログイン レビューは拒否されたため、アセットを接続できません", + "The connection method is invalid, please refresh the page": "接続方法が無効になりました、ページを更新してください", + "Ticket review approved for login asset": "このログイン審査は通過しました, 資産に接続しますか?", + "Ticket review closed for login asset": "このログイン監査は閉じられ、リソースに接続できません", + "Ticket review pending for login asset": "ログイン申請が提出され、審査者の審査を待っています。リンクをコピーして彼に送ることもできます", + "Ticket review rejected for login asset": "今回のログイン審査は拒否され、資産に接続できません", "Tips": "ヒント", - "Token expired": "トークンの有効期限が切れました", - "Tool download": "ツールダウンロード", - "Turkey keyboard layout": "Turkish-Q (Qwerty)", + "Token expired": "トークンの有効期限が切れました、再接続してください", + "Tool download": "ツールのダウンロード", + "Turkey keyboard layout": "Turkish-Q(Qwerty)", "Type tree": "タイプツリー", - "UK English keyboard layout": "UK English (Qwerty)", + "UK English keyboard layout": "イギリス英語 (Qwerty)", "US English keyboard layout": "US English (Qwerty)", + "User": "ユーザー", "User: ": "ユーザー: {{value}}", "Username": "ユーザー名", - "Username@Domain": "ユーザー名 @ ADドメイン", + "Username@Domain": "ユーザ名@ADドメイン", "Users": "ユーザー", - "Using token": "トークンを使用する", + "Using token": "トークンを使用", "View": "ビュー", "VirtualApp": "仮想アプリケーション", "Web Terminal": "Web端末", - "Website": "公式サイト", + "Website": "公式ウェブサイト", + "With secret accounts": "ホストアカウント", "Yes": "はい", - "asset": "資産", + "asset": "アセット", "cols": "列数", "confirm": "確認", "connect info": "接続情報", diff --git a/apps/locale/translate/__init__.py b/apps/locale/translate/__init__.py index cf7e61a1d..9eb0a4841 100644 --- a/apps/locale/translate/__init__.py +++ b/apps/locale/translate/__init__.py @@ -1,3 +1,12 @@ import os LOCALE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + +RED = "\033[91m" +BLUE = "\033[94m" +CYAN = "\033[96m" +RESET = "\033[0m" +GREEN = "\033[92m" +WHITE = "\033[97m" +YELLOW = "\033[93m" +MAGENTA = "\033[95m" diff --git a/apps/locale/translate/main.py b/apps/locale/translate/main.py index 8217afdab..74a248092 100644 --- a/apps/locale/translate/main.py +++ b/apps/locale/translate/main.py @@ -1,7 +1,7 @@ import asyncio import os -from apps.locale.translate import LOCALE_DIR +from apps.locale.translate import LOCALE_DIR, RED from apps.locale.translate.manager import OtherTranslateManager, CoreTranslateManager from apps.locale.translate.utils import OpenAITranslate @@ -25,7 +25,7 @@ class Translate: _dir = os.path.join(LOCALE_DIR, dir_name) zh_file = os.path.join(_dir, 'zh', 'LC_MESSAGES', 'django.po') if not os.path.exists(zh_file): - print(f'File: {zh_file} not exists.') + print(f'{RED}File: {zh_file} not exists.{RED}') return await CoreTranslateManager(_dir, self.oai_trans).run() @@ -34,7 +34,7 @@ class Translate: _dir = os.path.join(LOCALE_DIR, dir_name) zh_file = os.path.join(_dir, 'zh.json') if not os.path.exists(zh_file): - print(f'File: {zh_file} not exists.') + print(f'{RED}File: {zh_file} not exists.{RED}\n') return await OtherTranslateManager(_dir, self.oai_trans).run() diff --git a/apps/locale/translate/manager/base.py b/apps/locale/translate/manager/base.py index 4d3f715d6..fd5ca2987 100644 --- a/apps/locale/translate/manager/base.py +++ b/apps/locale/translate/manager/base.py @@ -1,6 +1,10 @@ import asyncio import os +from tqdm import tqdm + +from apps.locale.translate import RED, GREEN, RESET + class BaseTranslateManager: bulk_size = 30 @@ -12,6 +16,7 @@ class BaseTranslateManager: def __init__(self, dir_path, oai_trans_instance): self.oai_trans = oai_trans_instance self._dir = dir_path + self.dir_name = os.path.basename(self._dir) if not os.path.exists(self._dir): os.makedirs(self._dir) @@ -37,16 +42,25 @@ class BaseTranslateManager: translated_texts = translated_text.split(self.SEPARATOR) return dict(zip(keys, translated_texts)) except Exception as e: - print(f"Error during translation task: {e}") + print(f"{RED}Error during translation task: {e}{RED}") return {} async def bulk_translate(self, need_trans_dict, target_lang): split_data = self.split_dict_into_chunks(need_trans_dict, self.bulk_size) tasks = [self.create_translate_task(batch, target_lang) for batch in split_data] - translated_results = await asyncio.gather(*tasks) + number_of_tasks = len(tasks) translated_dict = {} - for result in translated_results: - translated_dict.update(result) + bar_format = "{l_bar}%s{bar}%s{r_bar}" % (GREEN, RESET) + desc = f"{target_lang} translate" + with tqdm( + total=number_of_tasks, ncols=100, + desc=desc, bar_format=bar_format + ) as pbar: + for task in asyncio.as_completed(tasks): + pbar.set_description_str(f"{GREEN}{desc}{RESET}") + result = await task + translated_dict.update(result) + pbar.update(1) return translated_dict diff --git a/apps/locale/translate/manager/core.py b/apps/locale/translate/manager/core.py index 266c5f2bc..ab5d7d46f 100644 --- a/apps/locale/translate/manager/core.py +++ b/apps/locale/translate/manager/core.py @@ -2,6 +2,7 @@ import os import polib +from apps.locale.translate import RED, MAGENTA, GREEN from .base import BaseTranslateManager @@ -21,14 +22,14 @@ class CoreTranslateManager(BaseTranslateManager): try: for entry in trans_po.untranslated_entries() + trans_po.fuzzy_entries(): if entry.msgid not in data: - print(f'msgid: {entry.msgid} not in data.') + print(f'{MAGENTA}msgid: {entry.msgid} not in data.{MAGENTA}') continue entry.flags = [] entry.previous_msgid = None entry.msgstr = data[entry.msgid] trans_po.save() except Exception as e: - print(f'File save error: {e}') + print(f'{RED}File save error: {e}{RED}') async def run(self): po_file_path = os.path.join(self._dir, 'zh', 'LC_MESSAGES', 'django.po') @@ -39,9 +40,9 @@ class CoreTranslateManager(BaseTranslateManager): po_file_path = os.path.join(self._dir, file_prefix, 'LC_MESSAGES', 'django.po') trans_po = polib.pofile(po_file_path) need_trans_dict = self.get_need_trans_dict(zh_dict, trans_po) - print(f'File: {file_prefix}.json need to translate: {len(need_trans_dict)}') + print(f'{GREEN}Translate: {self.dir_name} {file_prefix} ' + f'django.po need to translate {len(need_trans_dict)}{GREEN}\n') if not need_trans_dict: - print(f'File: {file_prefix}.json is already translated.') continue translated_dict = await self.bulk_translate(need_trans_dict, target_lang) self.save_translations_to_po(translated_dict, trans_po) diff --git a/apps/locale/translate/manager/other.py b/apps/locale/translate/manager/other.py index 4a498dcda..158d8d19a 100644 --- a/apps/locale/translate/manager/other.py +++ b/apps/locale/translate/manager/other.py @@ -1,6 +1,7 @@ import json import os +from apps.locale.translate import RED, GREEN from .base import BaseTranslateManager @@ -20,7 +21,7 @@ class OtherTranslateManager(BaseTranslateManager): with open(file_path, 'r', encoding='utf-8') as f: return json.load(f) except Exception as e: - print(f'File: {file_path} load error: {e}') + print(f'{RED}File: {file_path} load error: {e}{RED}') return {} def save_dict_as_json(self, data, file_prefix='ja'): @@ -29,7 +30,7 @@ class OtherTranslateManager(BaseTranslateManager): with open(file_path, 'w', encoding='utf-8') as f: json.dump(data, f, ensure_ascii=False, sort_keys=True, indent=4) except Exception as e: - print(f'File: {file_path} save error: {e}') + print(f'{RED}File: {file_path} save error: {e}{RED}') async def run(self): zh_dict = self.load_json_as_dict() @@ -37,9 +38,9 @@ class OtherTranslateManager(BaseTranslateManager): for file_prefix, target_lang in self.LANG_MAPPER.items(): other_dict = self.load_json_as_dict(file_prefix) need_trans_dict = self.get_need_trans_dict(zh_dict, other_dict) - print(f'File: {file_prefix}.json need to translate: {len(need_trans_dict)}') + print(f'{GREEN}Translate: {self.dir_name} {file_prefix} need to translate ' + f'{len(need_trans_dict)}{GREEN}\n') if not need_trans_dict: - print(f'File: {file_prefix}.json is already translated.') continue translated_dict = await self.bulk_translate(need_trans_dict, target_lang) other_dict.update(translated_dict) diff --git a/apps/locale/translate/utils.py b/apps/locale/translate/utils.py index adefe19ba..391a41d06 100644 --- a/apps/locale/translate/utils.py +++ b/apps/locale/translate/utils.py @@ -2,8 +2,8 @@ from openai import AsyncOpenAI class OpenAITranslate: - def __init__(self, key: str | None = None): - self.client = AsyncOpenAI(api_key=key) + def __init__(self, key: str | None = None, base_url: str | None = None): + self.client = AsyncOpenAI(api_key=key, base_url=base_url) async def translate_text(self, text, target_lang="English") -> str | None: try: diff --git a/poetry.lock b/poetry.lock index f3378db0e..579edd025 100644 --- a/poetry.lock +++ b/poetry.lock @@ -7827,4 +7827,4 @@ reference = "tsinghua" [metadata] lock-version = "2.0" python-versions = "^3.11" -content-hash = "86fd825091e6032ad4a48f595a627555822618f8a1a0ed1f314f024e54d190d0" +content-hash = "5474eb8b2e55c714fc812ea637bf83fe40c5acaadebccc10072e30101ab9ba13" diff --git a/pyproject.toml b/pyproject.toml index ee7a8b12c..68e86ca27 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -147,6 +147,7 @@ mistune = "2.0.3" openai = "^1.3.7" xlsxwriter = "^3.1.9" polib = "^1.2.0" +tqdm = "^4.66.1" [tool.poetry.group.xpack.dependencies]