mirror of https://github.com/jumpserver/jumpserver
fix: 修改sftp账号备份文件名及任务日志提示
parent
0f9223331c
commit
9babe977d8
|
@ -12,13 +12,17 @@ from accounts.serializers import AccountSecretSerializer
|
|||
from accounts.models.automations.backup_account import AccountBackupAutomation
|
||||
from assets.const import AllTypes
|
||||
from common.utils.file import encrypt_and_compress_zip_file, zip_files
|
||||
from common.utils.timezone import local_now_display
|
||||
from common.utils.timezone import local_now_filename, local_now_display
|
||||
from terminal.models.component.storage import ReplayStorage
|
||||
from users.models import User
|
||||
|
||||
PATH = os.path.join(os.path.dirname(settings.BASE_DIR), 'tmp')
|
||||
|
||||
|
||||
class RecipientsNotFound(Exception):
|
||||
pass
|
||||
|
||||
|
||||
class BaseAccountHandler:
|
||||
@classmethod
|
||||
def unpack_data(cls, serializer_data, data=None):
|
||||
|
@ -70,7 +74,7 @@ class AssetAccountHandler(BaseAccountHandler):
|
|||
@staticmethod
|
||||
def get_filename(plan_name):
|
||||
filename = os.path.join(
|
||||
PATH, f'{plan_name}-{local_now_display()}-{time.time()}.xlsx'
|
||||
PATH, f'{plan_name}-{local_now_filename()}-{time.time()}.xlsx'
|
||||
)
|
||||
return filename
|
||||
|
||||
|
@ -146,7 +150,7 @@ class AccountBackupHandler:
|
|||
wb.save(filename)
|
||||
files.append(filename)
|
||||
timedelta = round((time.time() - time_start), 2)
|
||||
print('步骤完成: 用时 {}s'.format(timedelta))
|
||||
print('创建备份文件完成: 用时 {}s'.format(timedelta))
|
||||
return files
|
||||
|
||||
def send_backup_mail(self, files, recipients):
|
||||
|
@ -155,7 +159,7 @@ class AccountBackupHandler:
|
|||
recipients = User.objects.filter(id__in=list(recipients))
|
||||
print(
|
||||
'\n'
|
||||
'\033[32m>>> 发送备份邮件\033[0m'
|
||||
'\033[32m>>> 开始发送备份邮件\033[0m'
|
||||
''
|
||||
)
|
||||
plan_name = self.plan_name
|
||||
|
@ -164,7 +168,7 @@ class AccountBackupHandler:
|
|||
attachment_list = []
|
||||
else:
|
||||
password = user.secret_key.encode('utf8')
|
||||
attachment = os.path.join(PATH, f'{plan_name}-{local_now_display()}-{time.time()}.zip')
|
||||
attachment = os.path.join(PATH, f'{plan_name}-{local_now_filename()}-{time.time()}.zip')
|
||||
encrypt_and_compress_zip_file(attachment, password, files)
|
||||
attachment_list = [attachment, ]
|
||||
AccountBackupExecutionTaskMsg(plan_name, user).publish(attachment_list)
|
||||
|
@ -178,13 +182,14 @@ class AccountBackupHandler:
|
|||
recipients = ReplayStorage.objects.filter(id__in=list(recipients))
|
||||
print(
|
||||
'\n'
|
||||
'\033[31m>>> 发送备份文件到sftp服务器\033[0m'
|
||||
'\033[32m>>> 开始发送备份文件到sftp服务器\033[0m'
|
||||
''
|
||||
)
|
||||
plan_name = self.plan_name
|
||||
for rec in recipients:
|
||||
attachment = os.path.join(PATH, f'{plan_name}-{local_now_display()}-{time.time()}.zip')
|
||||
attachment = os.path.join(PATH, f'{plan_name}-{local_now_filename()}-{time.time()}.zip')
|
||||
if password:
|
||||
print('\033[32m>>> 使用加密密码对文件进行加密中\033[0m')
|
||||
password = password.encode('utf8')
|
||||
encrypt_and_compress_zip_file(attachment, password, files)
|
||||
else:
|
||||
|
@ -199,12 +204,12 @@ class AccountBackupHandler:
|
|||
self.execution.reason = reason[:1024]
|
||||
self.execution.is_success = is_success
|
||||
self.execution.save()
|
||||
print('已完成对任务状态的更新')
|
||||
print('\n已完成对任务状态的更新\n')
|
||||
|
||||
@staticmethod
|
||||
def step_finished(is_success):
|
||||
if is_success:
|
||||
print('任务执行完成')
|
||||
print('任务执行成功')
|
||||
else:
|
||||
print('任务执行失败')
|
||||
|
||||
|
@ -241,8 +246,9 @@ class AccountBackupHandler:
|
|||
'\033[31m>>> 该备份任务未分配sftp服务器\033[0m'
|
||||
''
|
||||
)
|
||||
return
|
||||
raise RecipientsNotFound('Not Found Recipients')
|
||||
if obj_recipients_part_one and obj_recipients_part_two:
|
||||
print('\033[32m>>> 账号的密钥将被拆分成前后两部分发送\033[0m')
|
||||
files = self.create_excel(section='front')
|
||||
self.send_backup_obj_storage(files, obj_recipients_part_one, zip_encrypt_password)
|
||||
|
||||
|
@ -262,8 +268,9 @@ class AccountBackupHandler:
|
|||
'\033[31m>>> 该备份任务未分配收件人\033[0m'
|
||||
''
|
||||
)
|
||||
return
|
||||
raise RecipientsNotFound('Not Found Recipients')
|
||||
if recipients_part_one and recipients_part_two:
|
||||
print('\033[32m>>> 账号的密钥将被拆分成前后两部分发送\033[0m')
|
||||
files = self.create_excel(section='front')
|
||||
self.send_backup_mail(files, recipients_part_one)
|
||||
|
||||
|
@ -286,4 +293,4 @@ class AccountBackupHandler:
|
|||
finally:
|
||||
print('\n任务结束: {}'.format(local_now_display()))
|
||||
timedelta = round((time.time() - time_start), 2)
|
||||
print('用时: {}'.format(timedelta))
|
||||
print('用时: {}s'.format(timedelta))
|
||||
|
|
|
@ -13,7 +13,7 @@ from accounts.serializers import ChangeSecretRecordBackUpSerializer
|
|||
from assets.const import HostTypes
|
||||
from common.utils import get_logger
|
||||
from common.utils.file import encrypt_and_compress_zip_file
|
||||
from common.utils.timezone import local_now_display
|
||||
from common.utils.timezone import local_now_filename
|
||||
from users.models import User
|
||||
from ..base.manager import AccountBasePlaybookManager
|
||||
from ...utils import SecretGenerator
|
||||
|
@ -199,7 +199,7 @@ class ChangeSecretManager(AccountBasePlaybookManager):
|
|||
|
||||
name = self.execution.snapshot['name']
|
||||
path = os.path.join(os.path.dirname(settings.BASE_DIR), 'tmp')
|
||||
filename = os.path.join(path, f'{name}-{local_now_display()}-{time.time()}.xlsx')
|
||||
filename = os.path.join(path, f'{name}-{local_now_filename()}-{time.time()}.xlsx')
|
||||
if not self.create_file(recorders, filename):
|
||||
return
|
||||
|
||||
|
@ -207,7 +207,7 @@ class ChangeSecretManager(AccountBasePlaybookManager):
|
|||
attachments = []
|
||||
if user.secret_key:
|
||||
password = user.secret_key.encode('utf8')
|
||||
attachment = os.path.join(path, f'{name}-{local_now_display()}-{time.time()}.zip')
|
||||
attachment = os.path.join(path, f'{name}-{local_now_filename()}-{time.time()}.zip')
|
||||
encrypt_and_compress_zip_file(attachment, password, [filename])
|
||||
attachments = [attachment]
|
||||
ChangeSecretExecutionTaskMsg(name, user).publish(attachments)
|
||||
|
|
|
@ -5,7 +5,6 @@ from django.db import migrations, models
|
|||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('authentication', '0023_auto_20231010_1101'),
|
||||
]
|
||||
|
@ -14,6 +13,6 @@ class Migration(migrations.Migration):
|
|||
migrations.AddField(
|
||||
model_name='accesskey',
|
||||
name='ip_group',
|
||||
field=models.JSONField(default=authentication.models.access_key.defatult_ip_group, verbose_name='IP group'),
|
||||
field=models.JSONField(default=authentication.models.access_key.default_ip_group, verbose_name='IP group'),
|
||||
),
|
||||
]
|
||||
|
|
|
@ -12,14 +12,14 @@ def default_secret():
|
|||
return random_string(36)
|
||||
|
||||
|
||||
def defatult_ip_group():
|
||||
def default_ip_group():
|
||||
return ["*"]
|
||||
|
||||
|
||||
class AccessKey(models.Model):
|
||||
id = models.UUIDField(verbose_name='AccessKeyID', primary_key=True, default=uuid.uuid4, editable=False)
|
||||
secret = models.CharField(verbose_name='AccessKeySecret', default=default_secret, max_length=36)
|
||||
ip_group = models.JSONField(default=defatult_ip_group, verbose_name=_('IP group'))
|
||||
ip_group = models.JSONField(default=default_ip_group, verbose_name=_('IP group'))
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name='User',
|
||||
on_delete=common.db.models.CASCADE_SIGNAL_SKIP, related_name='access_keys')
|
||||
is_active = models.BooleanField(default=True, verbose_name=_('Active'))
|
||||
|
|
|
@ -20,6 +20,10 @@ def local_now_display(fmt='%Y-%m-%d %H:%M:%S'):
|
|||
return local_now().strftime(fmt)
|
||||
|
||||
|
||||
def local_now_filename():
|
||||
return local_now().strftime('%Y%m%d-%H%M%S')
|
||||
|
||||
|
||||
def local_now_date_display(fmt='%Y-%m-%d'):
|
||||
return local_now().strftime(fmt)
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5a5207051b4a959f750ebd48c770a552c460f864547aea8d6bb62d8920e24e32
|
||||
size 164428
|
||||
oid sha256:eb8cb8f322ccd54d1caea9727d92a82b061757eca5551b140c2035a12fd05dc6
|
||||
size 164068
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-03 18:29+0800\n"
|
||||
"POT-Creation-Date: 2023-11-13 14:19+0800\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -24,7 +24,7 @@ msgstr "パラメータ 'action' は [{}] でなければなりません。"
|
|||
|
||||
#: accounts/const/account.py:6
|
||||
#: accounts/serializers/automations/change_secret.py:32
|
||||
#: assets/models/_user.py:23 audits/signal_handlers/login_log.py:34
|
||||
#: assets/models/_user.py:24 audits/signal_handlers/login_log.py:34
|
||||
#: authentication/confirm/password.py:9 authentication/confirm/password.py:24
|
||||
#: authentication/confirm/password.py:26 authentication/forms.py:32
|
||||
#: authentication/templates/authentication/login.html:330
|
||||
|
@ -47,7 +47,7 @@ msgstr "SSH キー"
|
|||
msgid "Access key"
|
||||
msgstr "アクセスキー"
|
||||
|
||||
#: accounts/const/account.py:9 assets/models/_user.py:47
|
||||
#: accounts/const/account.py:9 assets/models/_user.py:48
|
||||
#: authentication/backends/passkey/models.py:16
|
||||
#: authentication/models/sso_token.py:14 settings/serializers/feature.py:50
|
||||
msgid "Token"
|
||||
|
@ -243,7 +243,7 @@ msgstr "ユーザー %s がパスワードを閲覧/導き出しました"
|
|||
#: acls/serializers/base.py:123 assets/models/asset/common.py:93
|
||||
#: assets/models/asset/common.py:334 assets/models/cmd_filter.py:36
|
||||
#: assets/serializers/domain.py:19 assets/serializers/label.py:27
|
||||
#: audits/models.py:57 authentication/models/connection_token.py:36
|
||||
#: audits/models.py:58 authentication/models/connection_token.py:36
|
||||
#: perms/models/asset_permission.py:68 perms/serializers/permission.py:34
|
||||
#: terminal/backends/command/models.py:17 terminal/models/session/session.py:31
|
||||
#: terminal/notifications.py:155 terminal/serializers/command.py:17
|
||||
|
@ -282,7 +282,7 @@ msgstr "ソース ID"
|
|||
#: accounts/serializers/automations/change_secret.py:127
|
||||
#: 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:58 authentication/api/connection_token.py:408
|
||||
#: audits/models.py:59 authentication/api/connection_token.py:403
|
||||
#: ops/models/base.py:18 perms/models/asset_permission.py:74
|
||||
#: perms/serializers/permission.py:39 terminal/backends/command/models.py:18
|
||||
#: terminal/models/session/session.py:33
|
||||
|
@ -312,43 +312,43 @@ msgstr "アカウントを確認できます"
|
|||
msgid "Can push account"
|
||||
msgstr "アカウントをプッシュできます"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:28
|
||||
#: accounts/models/automations/backup_account.py:27
|
||||
msgid "Backup Type"
|
||||
msgstr "バックアップの種類"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:28
|
||||
#: accounts/models/automations/backup_account.py:29
|
||||
#: accounts/models/automations/backup_account.py:30
|
||||
msgid "Is Password Divided"
|
||||
msgstr "キーが 2 つの部分に分割されているかどうか"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:33
|
||||
#: accounts/models/automations/backup_account.py:32
|
||||
msgid "Recipient part one"
|
||||
msgstr "受信者 1"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:37
|
||||
#: accounts/models/automations/backup_account.py:36
|
||||
msgid "Recipient part two"
|
||||
msgstr "受信者 2"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:41
|
||||
#: accounts/models/automations/backup_account.py:40
|
||||
msgid "Object Storage Recipient part one"
|
||||
msgstr "受信サーバー 1"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:45
|
||||
#: accounts/models/automations/backup_account.py:44
|
||||
msgid "Object Storage Recipient part two"
|
||||
msgstr "受信サーバー 2"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:48
|
||||
#: accounts/models/automations/backup_account.py:47
|
||||
#: accounts/serializers/account/backup.py:20
|
||||
msgid "Zip Encrypt Password"
|
||||
msgstr "新しいファイルの暗号化パスワード"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:56
|
||||
#: accounts/models/automations/backup_account.py:139
|
||||
#: accounts/models/automations/backup_account.py:55
|
||||
#: accounts/models/automations/backup_account.py:138
|
||||
msgid "Account backup plan"
|
||||
msgstr "アカウントバックアップ計画"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:120
|
||||
#: assets/models/automations/base.py:115 audits/models.py:64
|
||||
#: accounts/models/automations/backup_account.py:119
|
||||
#: assets/models/automations/base.py:115 audits/models.py:65
|
||||
#: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:228
|
||||
#: ops/templates/ops/celery_task_log.html:75
|
||||
#: perms/models/asset_permission.py:77 terminal/models/applet/host.py:141
|
||||
|
@ -358,17 +358,17 @@ msgstr "アカウントバックアップ計画"
|
|||
msgid "Date start"
|
||||
msgstr "開始日"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:123
|
||||
#: accounts/models/automations/backup_account.py:122
|
||||
#: authentication/templates/authentication/_msg_oauth_bind.html:11
|
||||
#: notifications/notifications.py:186
|
||||
msgid "Time"
|
||||
msgstr "時間"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:127
|
||||
#: accounts/models/automations/backup_account.py:126
|
||||
msgid "Account backup snapshot"
|
||||
msgstr "アカウントのバックアップスナップショット"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:131
|
||||
#: accounts/models/automations/backup_account.py:130
|
||||
#: accounts/serializers/account/backup.py:49
|
||||
#: accounts/serializers/automations/base.py:55
|
||||
#: assets/models/automations/base.py:122
|
||||
|
@ -376,19 +376,19 @@ msgstr "アカウントのバックアップスナップショット"
|
|||
msgid "Trigger mode"
|
||||
msgstr "トリガーモード"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:134 audits/models.py:202
|
||||
#: accounts/models/automations/backup_account.py:133 audits/models.py:203
|
||||
#: terminal/models/session/sharing.py:125 xpack/plugins/cloud/models.py:205
|
||||
msgid "Reason"
|
||||
msgstr "理由"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:136
|
||||
#: accounts/models/automations/backup_account.py:135
|
||||
#: accounts/serializers/automations/change_secret.py:105
|
||||
#: accounts/serializers/automations/change_secret.py:128
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:49
|
||||
msgid "Is success"
|
||||
msgstr "成功は"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:144
|
||||
#: accounts/models/automations/backup_account.py:143
|
||||
msgid "Account backup execution"
|
||||
msgstr "アカウントバックアップの実行"
|
||||
|
||||
|
@ -433,6 +433,7 @@ msgid "SSH key change strategy"
|
|||
msgstr "SSHキープッシュ方式"
|
||||
|
||||
#: accounts/models/automations/change_secret.py:15
|
||||
#: accounts/models/automations/gather_account.py:58
|
||||
#: accounts/serializers/account/backup.py:41
|
||||
#: accounts/serializers/automations/change_secret.py:56
|
||||
msgid "Recipient"
|
||||
|
@ -462,7 +463,7 @@ msgid "Date finished"
|
|||
msgstr "終了日"
|
||||
|
||||
#: accounts/models/automations/change_secret.py:43
|
||||
#: assets/models/automations/base.py:113 audits/models.py:207
|
||||
#: assets/models/automations/base.py:113 audits/models.py:208
|
||||
#: audits/serializers.py:51 ops/models/base.py:49 ops/models/job.py:220
|
||||
#: terminal/models/applet/applet.py:316 terminal/models/applet/host.py:140
|
||||
#: terminal/models/component/status.py:30 terminal/serializers/applet.py:18
|
||||
|
@ -497,8 +498,8 @@ msgstr "最終ログイン日"
|
|||
#: accounts/models/automations/push_account.py:15 accounts/models/base.py:65
|
||||
#: accounts/serializers/account/virtual.py:21 acls/serializers/base.py:19
|
||||
#: acls/serializers/base.py:50 acls/templates/acls/asset_login_reminder.html:5
|
||||
#: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:22
|
||||
#: audits/models.py:187 authentication/forms.py:25 authentication/forms.py:27
|
||||
#: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:23
|
||||
#: audits/models.py:188 authentication/forms.py:25 authentication/forms.py:27
|
||||
#: authentication/models/temp_token.py:9
|
||||
#: authentication/templates/authentication/_msg_different_city.html:9
|
||||
#: authentication/templates/authentication/_msg_oauth_bind.html:9
|
||||
|
@ -521,7 +522,7 @@ msgstr "自動収集アカウント"
|
|||
msgid "Is sync account"
|
||||
msgstr "アカウントを同期するかどうか"
|
||||
|
||||
#: accounts/models/automations/gather_account.py:71
|
||||
#: accounts/models/automations/gather_account.py:75
|
||||
#: accounts/tasks/gather_accounts.py:29
|
||||
msgid "Gather asset accounts"
|
||||
msgstr "アカウントのコレクション"
|
||||
|
@ -532,8 +533,8 @@ msgstr "トリガー方式"
|
|||
|
||||
#: accounts/models/automations/push_account.py:16 acls/models/base.py:41
|
||||
#: acls/serializers/base.py:57 assets/models/cmd_filter.py:81
|
||||
#: audits/models.py:91 audits/serializers.py:84
|
||||
#: authentication/serializers/connect_token_secret.py:116
|
||||
#: audits/models.py:92 audits/serializers.py:84
|
||||
#: authentication/serializers/connect_token_secret.py:118
|
||||
#: authentication/templates/authentication/_access_key_modal.html:34
|
||||
msgid "Action"
|
||||
msgstr "アクション"
|
||||
|
@ -577,14 +578,14 @@ msgstr "パスワードルール"
|
|||
#: accounts/models/base.py:64 accounts/serializers/account/virtual.py:20
|
||||
#: acls/models/base.py:35 acls/models/base.py:96 acls/models/command_acl.py:21
|
||||
#: acls/serializers/base.py:35 applications/models.py:9
|
||||
#: assets/models/_user.py:21 assets/models/asset/common.py:91
|
||||
#: assets/models/_user.py:22 assets/models/asset/common.py:91
|
||||
#: assets/models/asset/common.py:149 assets/models/cmd_filter.py:21
|
||||
#: assets/models/domain.py:18 assets/models/group.py:17
|
||||
#: assets/models/label.py:18 assets/models/platform.py:15
|
||||
#: assets/models/platform.py:88 assets/serializers/asset/common.py:146
|
||||
#: assets/serializers/platform.py:111 assets/serializers/platform.py:228
|
||||
#: authentication/backends/passkey/models.py:10
|
||||
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
|
||||
#: authentication/serializers/connect_token_secret.py:112 ops/mixin.py:21
|
||||
#: ops/models/adhoc.py:20 ops/models/celery.py:15 ops/models/celery.py:57
|
||||
#: ops/models/job.py:126 ops/models/playbook.py:28 ops/serializers/job.py:20
|
||||
#: orgs/models.py:82 perms/models/asset_permission.py:60 rbac/models/role.py:29
|
||||
|
@ -607,13 +608,13 @@ msgstr "特権アカウント"
|
|||
#: accounts/models/base.py:70 assets/models/asset/common.py:156
|
||||
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
|
||||
#: assets/models/label.py:22
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
#: authentication/serializers/connect_token_secret.py:116
|
||||
#: terminal/models/applet/applet.py:40
|
||||
#: terminal/models/component/endpoint.py:105 users/serializers/user.py:167
|
||||
msgid "Is active"
|
||||
msgstr "アクティブです。"
|
||||
|
||||
#: accounts/models/template.py:17 assets/models/_user.py:54
|
||||
#: accounts/models/template.py:17 assets/models/_user.py:53
|
||||
msgid "Auto push"
|
||||
msgstr "オートプッシュ"
|
||||
|
||||
|
@ -666,11 +667,11 @@ msgstr ""
|
|||
"ユーザー名とパスワードを使用せずにアセットに接続します。Webベースとカスタムタ"
|
||||
"イプのアセットのみをサポートします"
|
||||
|
||||
#: accounts/notifications.py:9 accounts/notifications.py:34
|
||||
#: accounts/notifications.py:11 accounts/notifications.py:36
|
||||
msgid "Notification of account backup route task results"
|
||||
msgstr "アカウントバックアップルートタスクの結果の通知"
|
||||
|
||||
#: accounts/notifications.py:19 accounts/notifications.py:43
|
||||
#: accounts/notifications.py:21 accounts/notifications.py:45
|
||||
msgid ""
|
||||
"{} - The account backup passage task has been completed. See the attachment "
|
||||
"for details"
|
||||
|
@ -678,7 +679,7 @@ msgstr ""
|
|||
"{} -アカウントバックアップの通過タスクが完了しました。詳細は添付ファイルをご"
|
||||
"覧ください"
|
||||
|
||||
#: accounts/notifications.py:22
|
||||
#: accounts/notifications.py:24
|
||||
msgid ""
|
||||
"{} - The account backup passage task has been completed: the encryption "
|
||||
"password has not been set - please go to personal information -> file "
|
||||
|
@ -688,17 +689,17 @@ msgstr ""
|
|||
"されていません-個人情報にアクセスしてください-> ファイル暗号化パスワードを設"
|
||||
"定してください暗号化パスワード"
|
||||
|
||||
#: accounts/notifications.py:53
|
||||
#: accounts/notifications.py:55
|
||||
msgid "Notification of implementation result of encryption change plan"
|
||||
msgstr "暗号化変更プランの実装結果の通知"
|
||||
|
||||
#: accounts/notifications.py:63
|
||||
#: accounts/notifications.py:65
|
||||
msgid ""
|
||||
"{} - The encryption change task has been completed. See the attachment for "
|
||||
"details"
|
||||
msgstr "{} -暗号化変更タスクが完了しました。詳細は添付ファイルをご覧ください"
|
||||
|
||||
#: accounts/notifications.py:66
|
||||
#: accounts/notifications.py:68
|
||||
msgid ""
|
||||
"{} - The encryption change task has been completed: the encryption password "
|
||||
"has not been set - please go to personal information -> file encryption "
|
||||
|
@ -707,6 +708,12 @@ msgstr ""
|
|||
"{} -暗号化変更タスクが完了しました: 暗号化パスワードが設定されていません-個人"
|
||||
"情報にアクセスしてください-> ファイル暗号化パスワードを設定してください"
|
||||
|
||||
#: accounts/notifications.py:79
|
||||
#, fuzzy
|
||||
#| msgid "Gather account automation"
|
||||
msgid "Gather account change information"
|
||||
msgstr "自動収集アカウント"
|
||||
|
||||
#: accounts/serializers/account/account.py:31
|
||||
msgid "Push now"
|
||||
msgstr "今すぐプッシュ"
|
||||
|
@ -727,12 +734,12 @@ msgstr "カテゴリ"
|
|||
#: accounts/serializers/account/account.py:191
|
||||
#: accounts/serializers/automations/base.py:54 acls/models/command_acl.py:24
|
||||
#: acls/serializers/command_acl.py:19 applications/models.py:14
|
||||
#: assets/models/_user.py:49 assets/models/automations/base.py:20
|
||||
#: assets/models/_user.py:50 assets/models/automations/base.py:20
|
||||
#: assets/models/cmd_filter.py:74 assets/models/platform.py:90
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:113
|
||||
#: assets/serializers/platform.py:132 audits/serializers.py:50
|
||||
#: audits/serializers.py:170
|
||||
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:137
|
||||
#: authentication/serializers/connect_token_secret.py:125 ops/models/job.py:137
|
||||
#: perms/serializers/user_permission.py:26 terminal/models/applet/applet.py:39
|
||||
#: terminal/models/component/storage.py:57
|
||||
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
|
||||
|
@ -768,7 +775,7 @@ msgstr "編集済み"
|
|||
#: acls/templates/acls/asset_login_reminder.html:6
|
||||
#: assets/models/automations/base.py:19
|
||||
#: assets/serializers/automations/base.py:20
|
||||
#: authentication/api/connection_token.py:407 ops/models/base.py:17
|
||||
#: authentication/api/connection_token.py:402 ops/models/base.py:17
|
||||
#: ops/models/job.py:139 ops/serializers/job.py:21
|
||||
#: terminal/templates/terminal/_msg_command_execute_alert.html:16
|
||||
msgid "Assets"
|
||||
|
@ -788,15 +795,15 @@ msgid "Account has exist"
|
|||
msgstr "アカウントはすでに存在しています"
|
||||
|
||||
#: accounts/serializers/account/account.py:438
|
||||
#: authentication/serializers/connect_token_secret.py:156
|
||||
#: authentication/serializers/connect_token_secret.py:158
|
||||
#: authentication/templates/authentication/_access_key_modal.html:30
|
||||
#: perms/models/perm_node.py:21 users/serializers/group.py:31
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: accounts/serializers/account/account.py:448 acls/serializers/base.py:116
|
||||
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:53
|
||||
#: audits/models.py:89 audits/models.py:171 audits/models.py:268
|
||||
#: 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
|
||||
|
@ -891,7 +898,7 @@ msgid ""
|
|||
"default parameters will be used"
|
||||
msgstr "关联平台,可以配置推送参数,如果不关联,则使用默认参数"
|
||||
|
||||
#: accounts/serializers/account/virtual.py:19 assets/models/_user.py:26
|
||||
#: accounts/serializers/account/virtual.py:19 assets/models/_user.py:27
|
||||
#: assets/models/cmd_filter.py:40 assets/models/cmd_filter.py:88
|
||||
#: assets/models/group.py:20 common/db/models.py:36 ops/models/adhoc.py:26
|
||||
#: ops/models/job.py:145 ops/models/playbook.py:31 rbac/models/role.py:37
|
||||
|
@ -951,7 +958,7 @@ msgid "Automation task execution"
|
|||
msgstr "自動タスク実行履歴"
|
||||
|
||||
#: accounts/serializers/automations/change_secret.py:149 audits/const.py:61
|
||||
#: audits/models.py:63 audits/signal_handlers/activity_log.py:33
|
||||
#: audits/models.py:64 audits/signal_handlers/activity_log.py:33
|
||||
#: common/const/choices.py:18 ops/const.py:72 ops/serializers/celery.py:40
|
||||
#: terminal/const.py:77 terminal/models/session/sharing.py:121
|
||||
#: tickets/views/approve.py:117
|
||||
|
@ -1009,22 +1016,36 @@ msgstr "アセット アカウントの可用性を確認する"
|
|||
msgid "Verify accounts connectivity"
|
||||
msgstr "アカウント接続のテスト"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:7
|
||||
#, fuzzy
|
||||
#| msgid "Asset type"
|
||||
msgid "Asset name"
|
||||
msgstr "資産タイプ"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:8
|
||||
#, fuzzy
|
||||
#| msgid "Add account: %s"
|
||||
msgid "Added account"
|
||||
msgstr "アカウントを追加: %s"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:9
|
||||
#, fuzzy
|
||||
#| msgid "Delete account: %s"
|
||||
msgid "Deleted account"
|
||||
msgstr "アカウントを削除: %s"
|
||||
|
||||
#: accounts/utils.py:53
|
||||
msgid "Password can not contains `{{` "
|
||||
#, fuzzy
|
||||
#| msgid "Password can not contains `{{` "
|
||||
msgid "Password can not contains `{{` or `}}`"
|
||||
msgstr "パスワードには '{{' を含まない"
|
||||
|
||||
#: accounts/utils.py:55
|
||||
msgid "Password can not contains `{%` "
|
||||
#, fuzzy
|
||||
#| msgid "Password can not contains `{%` "
|
||||
msgid "Password can not contains `{%` or `%}`"
|
||||
msgstr "パスワードには '{%' を含まない"
|
||||
|
||||
#: accounts/utils.py:58
|
||||
msgid "Password can not contains `'` "
|
||||
msgstr "パスワードには `'` を含まない"
|
||||
|
||||
#: accounts/utils.py:60
|
||||
msgid "Password can not contains `\"` "
|
||||
msgstr "パスワードには `\"` を含まない"
|
||||
|
||||
#: accounts/utils.py:66
|
||||
msgid "private key invalid or passphrase error"
|
||||
msgstr "秘密鍵が無効またはpassphraseエラー"
|
||||
|
@ -1054,7 +1075,7 @@ msgstr "警告"
|
|||
msgid "Notifications"
|
||||
msgstr "通知"
|
||||
|
||||
#: acls/models/base.py:37 assets/models/_user.py:50
|
||||
#: acls/models/base.py:37 assets/models/_user.py:51
|
||||
#: assets/models/cmd_filter.py:76 terminal/models/component/endpoint.py:97
|
||||
#: xpack/plugins/cloud/models.py:275
|
||||
msgid "Priority"
|
||||
|
@ -1067,7 +1088,7 @@ msgid "1-100, the lower the value will be match first"
|
|||
msgstr "1-100、低い値は最初に一致します"
|
||||
|
||||
#: acls/models/base.py:42 assets/models/cmd_filter.py:86
|
||||
#: authentication/serializers/connect_token_secret.py:88
|
||||
#: authentication/serializers/connect_token_secret.py:90
|
||||
msgid "Reviewers"
|
||||
msgstr "レビュー担当者"
|
||||
|
||||
|
@ -1118,7 +1139,7 @@ msgstr "家を無視する"
|
|||
|
||||
#: acls/models/command_acl.py:33 acls/models/command_acl.py:97
|
||||
#: acls/serializers/command_acl.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:85
|
||||
#: authentication/serializers/connect_token_secret.py:87
|
||||
#: terminal/templates/terminal/_msg_command_warning.html:14
|
||||
msgid "Command group"
|
||||
msgstr "コマンドグループ"
|
||||
|
@ -1247,15 +1268,15 @@ msgstr ""
|
|||
msgid "Thank you"
|
||||
msgstr "ありがとうございます。"
|
||||
|
||||
#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:193
|
||||
#: audits/models.py:262
|
||||
#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:194
|
||||
#: audits/models.py:263
|
||||
#: authentication/templates/authentication/_msg_different_city.html:11
|
||||
#: tickets/models/ticket/login_confirm.py:11
|
||||
msgid "Login city"
|
||||
msgstr "ログイン都市"
|
||||
|
||||
#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:196
|
||||
#: audits/models.py:263 audits/serializers.py:65
|
||||
#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:197
|
||||
#: audits/models.py:264 audits/serializers.py:65
|
||||
msgid "User agent"
|
||||
msgstr "ユーザーエージェント"
|
||||
|
||||
|
@ -1580,97 +1601,97 @@ msgstr "Webサイト"
|
|||
msgid "This function is not supported temporarily"
|
||||
msgstr "この機能は一時的にサポートされていません"
|
||||
|
||||
#: assets/models/_user.py:24
|
||||
#: assets/models/_user.py:25
|
||||
msgid "SSH private key"
|
||||
msgstr "SSH秘密鍵"
|
||||
|
||||
#: assets/models/_user.py:25
|
||||
#: assets/models/_user.py:26
|
||||
msgid "SSH public key"
|
||||
msgstr "SSHパブリックキー"
|
||||
|
||||
#: assets/models/_user.py:27 assets/models/automations/base.py:114
|
||||
#: assets/models/_user.py:28 assets/models/automations/base.py:114
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:19
|
||||
#: audits/models.py:266 common/db/models.py:34 ops/models/base.py:54
|
||||
#: audits/models.py:267 common/db/models.py:34 ops/models/base.py:54
|
||||
#: ops/models/job.py:227 users/models/user.py:1024
|
||||
msgid "Date created"
|
||||
msgstr "作成された日付"
|
||||
|
||||
#: assets/models/_user.py:28 assets/models/cmd_filter.py:42
|
||||
#: assets/models/_user.py:29 assets/models/cmd_filter.py:42
|
||||
#: common/db/models.py:35 users/models/user.py:846
|
||||
msgid "Date updated"
|
||||
msgstr "更新日"
|
||||
|
||||
#: assets/models/_user.py:29 assets/models/cmd_filter.py:44
|
||||
#: assets/models/_user.py:30 assets/models/cmd_filter.py:44
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:18
|
||||
#: common/db/models.py:32 users/models/user.py:835
|
||||
#: users/serializers/group.py:29
|
||||
msgid "Created by"
|
||||
msgstr "によって作成された"
|
||||
|
||||
#: assets/models/_user.py:39
|
||||
#: assets/models/_user.py:40
|
||||
msgid "Automatic managed"
|
||||
msgstr "自動管理"
|
||||
|
||||
#: assets/models/_user.py:40
|
||||
#: assets/models/_user.py:41
|
||||
msgid "Manually input"
|
||||
msgstr "手動入力"
|
||||
|
||||
#: assets/models/_user.py:44
|
||||
#: assets/models/_user.py:45
|
||||
msgid "Common user"
|
||||
msgstr "共通ユーザー"
|
||||
|
||||
#: assets/models/_user.py:45 assets/models/_user.py:98
|
||||
#: assets/models/_user.py:46 assets/models/_user.py:95
|
||||
msgid "Admin user"
|
||||
msgstr "管理ユーザー"
|
||||
|
||||
#: assets/models/_user.py:48
|
||||
#: assets/models/_user.py:49
|
||||
msgid "Username same with user"
|
||||
msgstr "ユーザーと同じユーザー名"
|
||||
|
||||
#: assets/models/_user.py:53 authentication/models/connection_token.py:41
|
||||
#: authentication/serializers/connect_token_secret.py:111
|
||||
#: assets/models/_user.py:52 authentication/models/connection_token.py:41
|
||||
#: authentication/serializers/connect_token_secret.py:113
|
||||
#: terminal/models/applet/applet.py:42 terminal/serializers/session.py:19
|
||||
#: terminal/serializers/session.py:45 terminal/serializers/storage.py:71
|
||||
msgid "Protocol"
|
||||
msgstr "プロトコル"
|
||||
|
||||
#: assets/models/_user.py:55
|
||||
#: assets/models/_user.py:54
|
||||
msgid "Sudo"
|
||||
msgstr "すど"
|
||||
|
||||
#: assets/models/_user.py:56 ops/const.py:49 ops/const.py:59
|
||||
#: assets/models/_user.py:55 ops/const.py:49 ops/const.py:59
|
||||
msgid "Shell"
|
||||
msgstr "シェル"
|
||||
|
||||
#: assets/models/_user.py:58
|
||||
#: assets/models/_user.py:56
|
||||
msgid "Login mode"
|
||||
msgstr "ログインモード"
|
||||
|
||||
#: assets/models/_user.py:59 terminal/serializers/storage.py:152
|
||||
#: assets/models/_user.py:57 terminal/serializers/storage.py:152
|
||||
msgid "SFTP Root"
|
||||
msgstr "SFTPルート"
|
||||
|
||||
#: assets/models/_user.py:60
|
||||
#: assets/models/_user.py:58
|
||||
msgid "Home"
|
||||
msgstr "ホーム"
|
||||
|
||||
#: assets/models/_user.py:61
|
||||
#: assets/models/_user.py:59
|
||||
msgid "System groups"
|
||||
msgstr "システムグループ"
|
||||
|
||||
#: assets/models/_user.py:64
|
||||
#: assets/models/_user.py:62
|
||||
msgid "User switch"
|
||||
msgstr "ユーザースイッチ"
|
||||
|
||||
#: assets/models/_user.py:66
|
||||
#: assets/models/_user.py:63
|
||||
msgid "Switch from"
|
||||
msgstr "から切り替え"
|
||||
|
||||
#: assets/models/_user.py:72
|
||||
#: assets/models/_user.py:69
|
||||
msgid "System user"
|
||||
msgstr "システムユーザー"
|
||||
|
||||
#: assets/models/_user.py:74
|
||||
#: assets/models/_user.py:71
|
||||
msgid "Can match system user"
|
||||
msgstr "システムユーザーに一致できます"
|
||||
|
||||
|
@ -1691,13 +1712,13 @@ msgstr "アドレス"
|
|||
|
||||
#: assets/models/asset/common.py:151 assets/models/platform.py:119
|
||||
#: authentication/backends/passkey/models.py:12
|
||||
#: authentication/serializers/connect_token_secret.py:115
|
||||
#: authentication/serializers/connect_token_secret.py:117
|
||||
#: perms/serializers/user_permission.py:24 xpack/plugins/cloud/models.py:321
|
||||
msgid "Platform"
|
||||
msgstr "プラットフォーム"
|
||||
|
||||
#: assets/models/asset/common.py:153 assets/models/domain.py:21
|
||||
#: authentication/serializers/connect_token_secret.py:133
|
||||
#: authentication/serializers/connect_token_secret.py:135
|
||||
#: perms/serializers/user_permission.py:28 xpack/plugins/cloud/models.py:323
|
||||
msgid "Domain"
|
||||
msgstr "ドメイン"
|
||||
|
@ -1844,7 +1865,7 @@ msgstr "システム"
|
|||
#: assets/serializers/cagegory.py:11 assets/serializers/cagegory.py:18
|
||||
#: assets/serializers/cagegory.py:24
|
||||
#: authentication/models/connection_token.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:122
|
||||
#: authentication/serializers/connect_token_secret.py:124
|
||||
#: common/serializers/common.py:86 settings/models.py:33
|
||||
#: users/models/preference.py:13
|
||||
msgid "Value"
|
||||
|
@ -1853,7 +1874,7 @@ msgstr "値"
|
|||
#: assets/models/label.py:40 assets/serializers/asset/common.py:123
|
||||
#: assets/serializers/cagegory.py:10 assets/serializers/cagegory.py:17
|
||||
#: assets/serializers/cagegory.py:23 assets/serializers/platform.py:112
|
||||
#: authentication/serializers/connect_token_secret.py:121
|
||||
#: authentication/serializers/connect_token_secret.py:123
|
||||
#: common/serializers/common.py:85 perms/serializers/user_permission.py:27
|
||||
#: settings/serializers/msg.py:83
|
||||
msgid "Label"
|
||||
|
@ -2021,7 +2042,7 @@ msgstr ""
|
|||
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:134
|
||||
#: authentication/serializers/connect_token_secret.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:72
|
||||
#: authentication/serializers/connect_token_secret.py:74
|
||||
#: perms/models/asset_permission.py:75 perms/serializers/permission.py:40
|
||||
#: perms/serializers/user_permission.py:74 xpack/plugins/cloud/models.py:324
|
||||
#: xpack/plugins/cloud/serializers/task.py:31
|
||||
|
@ -2112,7 +2133,7 @@ msgid "Disk total"
|
|||
msgstr "ディスクの合計"
|
||||
|
||||
#: assets/serializers/asset/info/gathered.py:16
|
||||
#: authentication/serializers/connect_token_secret.py:112
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
msgid "OS"
|
||||
msgstr "OS"
|
||||
|
||||
|
@ -2367,7 +2388,7 @@ msgstr "閉じる"
|
|||
msgid "Terminal"
|
||||
msgstr "ターミナル"
|
||||
|
||||
#: audits/const.py:48 audits/models.py:131
|
||||
#: audits/const.py:48 audits/models.py:132
|
||||
msgid "Operate log"
|
||||
msgstr "ログの操作"
|
||||
|
||||
|
@ -2396,28 +2417,28 @@ msgstr "是"
|
|||
msgid "No"
|
||||
msgstr "否"
|
||||
|
||||
#: audits/models.py:46
|
||||
#: audits/models.py:47
|
||||
msgid "Job audit log"
|
||||
msgstr "ジョブ監査ログ"
|
||||
|
||||
#: audits/models.py:55 audits/models.py:99 audits/models.py:174
|
||||
#: audits/models.py:56 audits/models.py:100 audits/models.py:175
|
||||
#: terminal/models/session/session.py:38 terminal/models/session/sharing.py:113
|
||||
msgid "Remote addr"
|
||||
msgstr "リモートaddr"
|
||||
|
||||
#: audits/models.py:60 audits/serializers.py:35
|
||||
#: audits/models.py:61 audits/serializers.py:35
|
||||
msgid "Operate"
|
||||
msgstr "操作"
|
||||
|
||||
#: audits/models.py:62
|
||||
#: audits/models.py:63
|
||||
msgid "Filename"
|
||||
msgstr "ファイル名"
|
||||
|
||||
#: audits/models.py:65 common/serializers/common.py:98
|
||||
#: audits/models.py:66 common/serializers/common.py:98
|
||||
msgid "File"
|
||||
msgstr "書類"
|
||||
|
||||
#: audits/models.py:66 terminal/backends/command/models.py:21
|
||||
#: audits/models.py:67 terminal/backends/command/models.py:21
|
||||
#: terminal/models/session/replay.py:9 terminal/models/session/sharing.py:20
|
||||
#: terminal/models/session/sharing.py:95
|
||||
#: terminal/templates/terminal/_msg_command_alert.html:10
|
||||
|
@ -2426,86 +2447,86 @@ msgstr "書類"
|
|||
msgid "Session"
|
||||
msgstr "セッション"
|
||||
|
||||
#: audits/models.py:69
|
||||
#: audits/models.py:70
|
||||
msgid "File transfer log"
|
||||
msgstr "ファイル転送ログ"
|
||||
|
||||
#: audits/models.py:93 audits/serializers.py:86
|
||||
#: audits/models.py:94 audits/serializers.py:86
|
||||
msgid "Resource Type"
|
||||
msgstr "リソースタイプ"
|
||||
|
||||
#: audits/models.py:94 audits/models.py:97 audits/models.py:143
|
||||
#: audits/models.py:95 audits/models.py:98 audits/models.py:144
|
||||
#: audits/serializers.py:85
|
||||
msgid "Resource"
|
||||
msgstr "リソース"
|
||||
|
||||
#: audits/models.py:100 audits/models.py:146 audits/models.py:176
|
||||
#: audits/models.py:101 audits/models.py:147 audits/models.py:177
|
||||
#: terminal/serializers/command.py:75
|
||||
msgid "Datetime"
|
||||
msgstr "時間"
|
||||
|
||||
#: audits/models.py:139
|
||||
#: audits/models.py:140
|
||||
msgid "Activity type"
|
||||
msgstr "活動の種類"
|
||||
|
||||
#: audits/models.py:149
|
||||
#: audits/models.py:150
|
||||
msgid "Detail"
|
||||
msgstr "詳細"
|
||||
|
||||
#: audits/models.py:152
|
||||
#: audits/models.py:153
|
||||
msgid "Detail ID"
|
||||
msgstr "詳細 ID"
|
||||
|
||||
#: audits/models.py:156
|
||||
#: audits/models.py:157
|
||||
msgid "Activity log"
|
||||
msgstr "活動記録"
|
||||
|
||||
#: audits/models.py:172
|
||||
#: audits/models.py:173
|
||||
msgid "Change by"
|
||||
msgstr "による変更"
|
||||
|
||||
#: audits/models.py:182
|
||||
#: audits/models.py:183
|
||||
msgid "Password change log"
|
||||
msgstr "パスワード変更ログ"
|
||||
|
||||
#: audits/models.py:189 audits/models.py:264
|
||||
#: audits/models.py:190 audits/models.py:265
|
||||
msgid "Login type"
|
||||
msgstr "ログインタイプ"
|
||||
|
||||
#: audits/models.py:191 audits/models.py:260
|
||||
#: audits/models.py:192 audits/models.py:261
|
||||
#: tickets/models/ticket/login_confirm.py:10
|
||||
msgid "Login IP"
|
||||
msgstr "ログインIP"
|
||||
|
||||
#: audits/models.py:199 audits/serializers.py:49
|
||||
#: audits/models.py:200 audits/serializers.py:49
|
||||
#: authentication/templates/authentication/_mfa_confirm_modal.html:14
|
||||
#: users/forms/profile.py:65 users/models/user.py:815
|
||||
#: users/serializers/profile.py:102
|
||||
msgid "MFA"
|
||||
msgstr "MFA"
|
||||
|
||||
#: audits/models.py:209
|
||||
#: audits/models.py:210
|
||||
msgid "Date login"
|
||||
msgstr "日付ログイン"
|
||||
|
||||
#: audits/models.py:211 audits/models.py:265 audits/serializers.py:67
|
||||
#: audits/models.py:212 audits/models.py:266 audits/serializers.py:67
|
||||
#: audits/serializers.py:184
|
||||
msgid "Authentication backend"
|
||||
msgstr "認証バックエンド"
|
||||
|
||||
#: audits/models.py:255
|
||||
#: audits/models.py:256
|
||||
msgid "User login log"
|
||||
msgstr "ユーザーログインログ"
|
||||
|
||||
#: audits/models.py:261
|
||||
#: audits/models.py:262
|
||||
msgid "Session key"
|
||||
msgstr "セッションID"
|
||||
|
||||
#: audits/models.py:300
|
||||
#: audits/models.py:306
|
||||
msgid "User session"
|
||||
msgstr "ユーザーセッション"
|
||||
|
||||
#: audits/models.py:302
|
||||
#: audits/models.py:308
|
||||
msgid "Offline ussr session"
|
||||
msgstr "ユーザー・セッションの下限"
|
||||
|
||||
|
@ -2600,29 +2621,29 @@ msgstr ""
|
|||
msgid "This action require verify your MFA"
|
||||
msgstr "この操作には、MFAを検証する必要があります"
|
||||
|
||||
#: authentication/api/connection_token.py:263
|
||||
#: authentication/api/connection_token.py:258
|
||||
msgid "Reusable connection token is not allowed, global setting not enabled"
|
||||
msgstr ""
|
||||
"再使用可能な接続トークンの使用は許可されていません。グローバル設定は有効に"
|
||||
"なっていません"
|
||||
|
||||
#: authentication/api/connection_token.py:377
|
||||
#: authentication/api/connection_token.py:372
|
||||
msgid "Anonymous account is not supported for this asset"
|
||||
msgstr "匿名アカウントはこのプロパティではサポートされていません"
|
||||
|
||||
#: authentication/api/connection_token.py:396
|
||||
#: authentication/api/connection_token.py:391
|
||||
msgid "Account not found"
|
||||
msgstr "アカウントが見つかりません"
|
||||
|
||||
#: authentication/api/connection_token.py:399
|
||||
#: authentication/api/connection_token.py:394
|
||||
msgid "Permission expired"
|
||||
msgstr "承認の有効期限が切れています"
|
||||
|
||||
#: authentication/api/connection_token.py:429
|
||||
#: authentication/api/connection_token.py:424
|
||||
msgid "ACL action is reject: {}({})"
|
||||
msgstr "ACL アクションは拒否です: {}({})"
|
||||
|
||||
#: authentication/api/connection_token.py:433
|
||||
#: authentication/api/connection_token.py:428
|
||||
msgid "ACL action is review"
|
||||
msgstr "ACL アクションはレビューです"
|
||||
|
||||
|
@ -3107,19 +3128,19 @@ msgstr "異なる都市ログインのリマインダー"
|
|||
msgid "binding reminder"
|
||||
msgstr "バインディングリマインダー"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:113
|
||||
#: authentication/serializers/connect_token_secret.py:115
|
||||
msgid "Is builtin"
|
||||
msgstr "ビルトイン"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:117
|
||||
#: authentication/serializers/connect_token_secret.py:119
|
||||
msgid "Options"
|
||||
msgstr "オプション"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:124
|
||||
#: authentication/serializers/connect_token_secret.py:126
|
||||
msgid "Component"
|
||||
msgstr "コンポーネント"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:135
|
||||
#: authentication/serializers/connect_token_secret.py:137
|
||||
msgid "Expired now"
|
||||
msgstr "すぐに期限切れ"
|
||||
|
||||
|
@ -3609,7 +3630,7 @@ msgstr "テキストフィールドへのマーシャルデータ"
|
|||
msgid "Encrypt field using Secret Key"
|
||||
msgstr "Secret Keyを使用したフィールドの暗号化"
|
||||
|
||||
#: common/db/fields.py:575
|
||||
#: 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', "
|
||||
|
@ -3619,15 +3640,15 @@ msgstr ""
|
|||
"{'type':'ids','ids':[]}或 #タイプ:属性、属性:[#名前:ip、照合:正確、"
|
||||
"値:1.1.1.1}"
|
||||
|
||||
#: common/db/fields.py:582
|
||||
#: common/db/fields.py:580
|
||||
msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\""
|
||||
msgstr "無効なタイプです。all、ids、またはattrsでなければなりません"
|
||||
|
||||
#: common/db/fields.py:585
|
||||
#: common/db/fields.py:583
|
||||
msgid "Invalid ids for ids, should be a list"
|
||||
msgstr "無効なID、リストでなければなりません"
|
||||
|
||||
#: common/db/fields.py:587 common/db/fields.py:592
|
||||
#: common/db/fields.py:585 common/db/fields.py:590
|
||||
#: common/serializers/fields.py:104 tickets/serializers/ticket/common.py:58
|
||||
#: xpack/plugins/cloud/serializers/account_attrs.py:56
|
||||
#: xpack/plugins/cloud/serializers/account_attrs.py:79
|
||||
|
@ -3635,11 +3656,11 @@ msgstr "無効なID、リストでなければなりません"
|
|||
msgid "This field is required."
|
||||
msgstr "このフィールドは必須です。"
|
||||
|
||||
#: common/db/fields.py:590 common/db/fields.py:595
|
||||
#: common/db/fields.py:588 common/db/fields.py:593
|
||||
msgid "Invalid attrs, should be a list of dict"
|
||||
msgstr "無効な属性、dictリストでなければなりません"
|
||||
|
||||
#: common/db/fields.py:597
|
||||
#: common/db/fields.py:595
|
||||
msgid "Invalid attrs, should be has name and value"
|
||||
msgstr "名前と値が必要な無効な属性"
|
||||
|
||||
|
@ -4403,11 +4424,15 @@ msgstr "コピー"
|
|||
msgid "Paste"
|
||||
msgstr "貼り付け"
|
||||
|
||||
#: perms/const.py:27
|
||||
#: perms/const.py:18
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: perms/const.py:28
|
||||
msgid "Transfer"
|
||||
msgstr "転送"
|
||||
|
||||
#: perms/const.py:28
|
||||
#: perms/const.py:29
|
||||
msgid "Clipboard"
|
||||
msgstr "クリップボード"
|
||||
|
||||
|
@ -6204,10 +6229,11 @@ msgstr "テスト失敗: {}"
|
|||
msgid "Test successful"
|
||||
msgstr "テスト成功"
|
||||
|
||||
#: terminal/api/component/storage.py:124 terminal/notifications.py:240
|
||||
#: terminal/tasks.py:146
|
||||
msgid "Test failure: Account invalid"
|
||||
msgstr "テスト失敗: アカウントが無効"
|
||||
#: terminal/api/component/storage.py:124
|
||||
#, fuzzy
|
||||
#| msgid "Test failure: Account invalid"
|
||||
msgid "Test failure: Please check configuration"
|
||||
msgstr "テストが失敗しました: 構成を確認してください"
|
||||
|
||||
#: terminal/api/component/terminal.py:55
|
||||
msgid "Have online sessions"
|
||||
|
@ -6683,6 +6709,10 @@ msgstr "コマンド及び録画記憶"
|
|||
msgid "Connectivity alarm"
|
||||
msgstr "接続性アラーム"
|
||||
|
||||
#: terminal/notifications.py:240 terminal/tasks.py:146
|
||||
msgid "Test failure: Account invalid"
|
||||
msgstr "テスト失敗: アカウントが無効"
|
||||
|
||||
#: terminal/notifications.py:250
|
||||
#: terminal/templates/terminal/_msg_check_command_replay_storage_connectivity.html:4
|
||||
msgid "Invalid storage"
|
||||
|
@ -8691,5 +8721,11 @@ msgstr "エンタープライズプロフェッショナル版"
|
|||
msgid "Ultimate edition"
|
||||
msgstr "エンタープライズ・フラッグシップ・エディション"
|
||||
|
||||
#~ msgid "Password can not contains `'` "
|
||||
#~ msgstr "パスワードには `'` を含まない"
|
||||
|
||||
#~ msgid "Password can not contains `\"` "
|
||||
#~ msgstr "パスワードには `\"` を含まない"
|
||||
|
||||
#~ msgid "Object Storage"
|
||||
#~ msgstr "オブジェクトストレージ"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b9a380c7adbd9fad7af4257cb72742c0e68b50846591cc5b0124a0df539ec285
|
||||
size 134380
|
||||
oid sha256:258efb0208b560b1d27fefa33d462d0ff072d44844d66328afea5ddd3a4b2812
|
||||
size 134068
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: JumpServer 0.3.3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-11-03 18:29+0800\n"
|
||||
"POT-Creation-Date: 2023-11-13 14:19+0800\n"
|
||||
"PO-Revision-Date: 2021-05-20 10:54+0800\n"
|
||||
"Last-Translator: ibuler <ibuler@qq.com>\n"
|
||||
"Language-Team: JumpServer team<ibuler@qq.com>\n"
|
||||
|
@ -23,7 +23,7 @@ msgstr "参数 'action' 必须是 [{}]"
|
|||
|
||||
#: accounts/const/account.py:6
|
||||
#: accounts/serializers/automations/change_secret.py:32
|
||||
#: assets/models/_user.py:23 audits/signal_handlers/login_log.py:34
|
||||
#: assets/models/_user.py:24 audits/signal_handlers/login_log.py:34
|
||||
#: authentication/confirm/password.py:9 authentication/confirm/password.py:24
|
||||
#: authentication/confirm/password.py:26 authentication/forms.py:32
|
||||
#: authentication/templates/authentication/login.html:330
|
||||
|
@ -46,7 +46,7 @@ msgstr "SSH 密钥"
|
|||
msgid "Access key"
|
||||
msgstr "Access key"
|
||||
|
||||
#: accounts/const/account.py:9 assets/models/_user.py:47
|
||||
#: accounts/const/account.py:9 assets/models/_user.py:48
|
||||
#: authentication/backends/passkey/models.py:16
|
||||
#: authentication/models/sso_token.py:14 settings/serializers/feature.py:50
|
||||
msgid "Token"
|
||||
|
@ -242,7 +242,7 @@ msgstr "用户 %s 查看/导出 了密码"
|
|||
#: acls/serializers/base.py:123 assets/models/asset/common.py:93
|
||||
#: assets/models/asset/common.py:334 assets/models/cmd_filter.py:36
|
||||
#: assets/serializers/domain.py:19 assets/serializers/label.py:27
|
||||
#: audits/models.py:57 authentication/models/connection_token.py:36
|
||||
#: audits/models.py:58 authentication/models/connection_token.py:36
|
||||
#: perms/models/asset_permission.py:68 perms/serializers/permission.py:34
|
||||
#: terminal/backends/command/models.py:17 terminal/models/session/session.py:31
|
||||
#: terminal/notifications.py:155 terminal/serializers/command.py:17
|
||||
|
@ -281,7 +281,7 @@ msgstr "来源 ID"
|
|||
#: accounts/serializers/automations/change_secret.py:127
|
||||
#: 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:58 authentication/api/connection_token.py:408
|
||||
#: audits/models.py:59 authentication/api/connection_token.py:403
|
||||
#: ops/models/base.py:18 perms/models/asset_permission.py:74
|
||||
#: perms/serializers/permission.py:39 terminal/backends/command/models.py:18
|
||||
#: terminal/models/session/session.py:33
|
||||
|
@ -311,43 +311,43 @@ msgstr "可以验证账号"
|
|||
msgid "Can push account"
|
||||
msgstr "可以推送账号"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:28
|
||||
#: accounts/models/automations/backup_account.py:27
|
||||
msgid "Backup Type"
|
||||
msgstr "备份类型"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:28
|
||||
#: accounts/models/automations/backup_account.py:29
|
||||
#: accounts/models/automations/backup_account.py:30
|
||||
msgid "Is Password Divided"
|
||||
msgstr "密钥是否拆分成前后两部分"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:33
|
||||
#: accounts/models/automations/backup_account.py:32
|
||||
msgid "Recipient part one"
|
||||
msgstr "收件人部分一"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:37
|
||||
#: accounts/models/automations/backup_account.py:36
|
||||
msgid "Recipient part two"
|
||||
msgstr "收件人部分二"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:41
|
||||
#: accounts/models/automations/backup_account.py:40
|
||||
msgid "Object Storage Recipient part one"
|
||||
msgstr "接收服务器一"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:45
|
||||
#: accounts/models/automations/backup_account.py:44
|
||||
msgid "Object Storage Recipient part two"
|
||||
msgstr "接收服务器二"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:48
|
||||
#: accounts/models/automations/backup_account.py:47
|
||||
#: accounts/serializers/account/backup.py:20
|
||||
msgid "Zip Encrypt Password"
|
||||
msgstr "文件加密密码"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:56
|
||||
#: accounts/models/automations/backup_account.py:139
|
||||
#: accounts/models/automations/backup_account.py:55
|
||||
#: accounts/models/automations/backup_account.py:138
|
||||
msgid "Account backup plan"
|
||||
msgstr "账号备份计划"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:120
|
||||
#: assets/models/automations/base.py:115 audits/models.py:64
|
||||
#: accounts/models/automations/backup_account.py:119
|
||||
#: assets/models/automations/base.py:115 audits/models.py:65
|
||||
#: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:228
|
||||
#: ops/templates/ops/celery_task_log.html:75
|
||||
#: perms/models/asset_permission.py:77 terminal/models/applet/host.py:141
|
||||
|
@ -357,17 +357,17 @@ msgstr "账号备份计划"
|
|||
msgid "Date start"
|
||||
msgstr "开始日期"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:123
|
||||
#: accounts/models/automations/backup_account.py:122
|
||||
#: authentication/templates/authentication/_msg_oauth_bind.html:11
|
||||
#: notifications/notifications.py:186
|
||||
msgid "Time"
|
||||
msgstr "时间"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:127
|
||||
#: accounts/models/automations/backup_account.py:126
|
||||
msgid "Account backup snapshot"
|
||||
msgstr "账号备份快照"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:131
|
||||
#: accounts/models/automations/backup_account.py:130
|
||||
#: accounts/serializers/account/backup.py:49
|
||||
#: accounts/serializers/automations/base.py:55
|
||||
#: assets/models/automations/base.py:122
|
||||
|
@ -375,19 +375,19 @@ msgstr "账号备份快照"
|
|||
msgid "Trigger mode"
|
||||
msgstr "触发模式"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:134 audits/models.py:202
|
||||
#: accounts/models/automations/backup_account.py:133 audits/models.py:203
|
||||
#: terminal/models/session/sharing.py:125 xpack/plugins/cloud/models.py:205
|
||||
msgid "Reason"
|
||||
msgstr "原因"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:136
|
||||
#: accounts/models/automations/backup_account.py:135
|
||||
#: accounts/serializers/automations/change_secret.py:105
|
||||
#: accounts/serializers/automations/change_secret.py:128
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:49
|
||||
msgid "Is success"
|
||||
msgstr "是否成功"
|
||||
|
||||
#: accounts/models/automations/backup_account.py:144
|
||||
#: accounts/models/automations/backup_account.py:143
|
||||
msgid "Account backup execution"
|
||||
msgstr "账号备份执行"
|
||||
|
||||
|
@ -432,6 +432,7 @@ msgid "SSH key change strategy"
|
|||
msgstr "SSH 密钥推送方式"
|
||||
|
||||
#: accounts/models/automations/change_secret.py:15
|
||||
#: accounts/models/automations/gather_account.py:58
|
||||
#: accounts/serializers/account/backup.py:41
|
||||
#: accounts/serializers/automations/change_secret.py:56
|
||||
msgid "Recipient"
|
||||
|
@ -461,7 +462,7 @@ msgid "Date finished"
|
|||
msgstr "结束日期"
|
||||
|
||||
#: accounts/models/automations/change_secret.py:43
|
||||
#: assets/models/automations/base.py:113 audits/models.py:207
|
||||
#: assets/models/automations/base.py:113 audits/models.py:208
|
||||
#: audits/serializers.py:51 ops/models/base.py:49 ops/models/job.py:220
|
||||
#: terminal/models/applet/applet.py:316 terminal/models/applet/host.py:140
|
||||
#: terminal/models/component/status.py:30 terminal/serializers/applet.py:18
|
||||
|
@ -496,8 +497,8 @@ msgstr "最后登录日期"
|
|||
#: accounts/models/automations/push_account.py:15 accounts/models/base.py:65
|
||||
#: accounts/serializers/account/virtual.py:21 acls/serializers/base.py:19
|
||||
#: acls/serializers/base.py:50 acls/templates/acls/asset_login_reminder.html:5
|
||||
#: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:22
|
||||
#: audits/models.py:187 authentication/forms.py:25 authentication/forms.py:27
|
||||
#: acls/templates/acls/user_login_reminder.html:5 assets/models/_user.py:23
|
||||
#: audits/models.py:188 authentication/forms.py:25 authentication/forms.py:27
|
||||
#: authentication/models/temp_token.py:9
|
||||
#: authentication/templates/authentication/_msg_different_city.html:9
|
||||
#: authentication/templates/authentication/_msg_oauth_bind.html:9
|
||||
|
@ -520,7 +521,7 @@ msgstr "自动化收集账号"
|
|||
msgid "Is sync account"
|
||||
msgstr "是否同步账号"
|
||||
|
||||
#: accounts/models/automations/gather_account.py:71
|
||||
#: accounts/models/automations/gather_account.py:75
|
||||
#: accounts/tasks/gather_accounts.py:29
|
||||
msgid "Gather asset accounts"
|
||||
msgstr "收集账号"
|
||||
|
@ -531,8 +532,8 @@ msgstr "触发方式"
|
|||
|
||||
#: accounts/models/automations/push_account.py:16 acls/models/base.py:41
|
||||
#: acls/serializers/base.py:57 assets/models/cmd_filter.py:81
|
||||
#: audits/models.py:91 audits/serializers.py:84
|
||||
#: authentication/serializers/connect_token_secret.py:116
|
||||
#: audits/models.py:92 audits/serializers.py:84
|
||||
#: authentication/serializers/connect_token_secret.py:118
|
||||
#: authentication/templates/authentication/_access_key_modal.html:34
|
||||
msgid "Action"
|
||||
msgstr "动作"
|
||||
|
@ -576,14 +577,14 @@ msgstr "密码规则"
|
|||
#: accounts/models/base.py:64 accounts/serializers/account/virtual.py:20
|
||||
#: acls/models/base.py:35 acls/models/base.py:96 acls/models/command_acl.py:21
|
||||
#: acls/serializers/base.py:35 applications/models.py:9
|
||||
#: assets/models/_user.py:21 assets/models/asset/common.py:91
|
||||
#: assets/models/_user.py:22 assets/models/asset/common.py:91
|
||||
#: assets/models/asset/common.py:149 assets/models/cmd_filter.py:21
|
||||
#: assets/models/domain.py:18 assets/models/group.py:17
|
||||
#: assets/models/label.py:18 assets/models/platform.py:15
|
||||
#: assets/models/platform.py:88 assets/serializers/asset/common.py:146
|
||||
#: assets/serializers/platform.py:111 assets/serializers/platform.py:228
|
||||
#: authentication/backends/passkey/models.py:10
|
||||
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
|
||||
#: authentication/serializers/connect_token_secret.py:112 ops/mixin.py:21
|
||||
#: ops/models/adhoc.py:20 ops/models/celery.py:15 ops/models/celery.py:57
|
||||
#: ops/models/job.py:126 ops/models/playbook.py:28 ops/serializers/job.py:20
|
||||
#: orgs/models.py:82 perms/models/asset_permission.py:60 rbac/models/role.py:29
|
||||
|
@ -606,13 +607,13 @@ msgstr "特权账号"
|
|||
#: accounts/models/base.py:70 assets/models/asset/common.py:156
|
||||
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
|
||||
#: assets/models/label.py:22
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
#: authentication/serializers/connect_token_secret.py:116
|
||||
#: terminal/models/applet/applet.py:40
|
||||
#: terminal/models/component/endpoint.py:105 users/serializers/user.py:167
|
||||
msgid "Is active"
|
||||
msgstr "激活"
|
||||
|
||||
#: accounts/models/template.py:17 assets/models/_user.py:54
|
||||
#: accounts/models/template.py:17 assets/models/_user.py:53
|
||||
msgid "Auto push"
|
||||
msgstr "自动推送"
|
||||
|
||||
|
@ -667,17 +668,17 @@ msgid ""
|
|||
msgstr ""
|
||||
"连接资产时不使用用户名和密码的账号,仅支持 web类型 和 自定义类型 的资产"
|
||||
|
||||
#: accounts/notifications.py:9 accounts/notifications.py:34
|
||||
#: accounts/notifications.py:11 accounts/notifications.py:36
|
||||
msgid "Notification of account backup route task results"
|
||||
msgstr "账号备份任务结果通知"
|
||||
|
||||
#: accounts/notifications.py:19 accounts/notifications.py:43
|
||||
#: accounts/notifications.py:21 accounts/notifications.py:45
|
||||
msgid ""
|
||||
"{} - The account backup passage task has been completed. See the attachment "
|
||||
"for details"
|
||||
msgstr "{} - 账号备份任务已完成, 详情见附件"
|
||||
|
||||
#: accounts/notifications.py:22
|
||||
#: accounts/notifications.py:24
|
||||
msgid ""
|
||||
"{} - The account backup passage task has been completed: the encryption "
|
||||
"password has not been set - please go to personal information -> file "
|
||||
|
@ -686,17 +687,17 @@ msgstr ""
|
|||
"{} - 账号备份任务已完成: 未设置加密密码 - 请前往个人信息 -> 文件加密密码中设"
|
||||
"置加密密码"
|
||||
|
||||
#: accounts/notifications.py:53
|
||||
#: accounts/notifications.py:55
|
||||
msgid "Notification of implementation result of encryption change plan"
|
||||
msgstr "改密计划任务结果通知"
|
||||
|
||||
#: accounts/notifications.py:63
|
||||
#: accounts/notifications.py:65
|
||||
msgid ""
|
||||
"{} - The encryption change task has been completed. See the attachment for "
|
||||
"details"
|
||||
msgstr "{} - 改密任务已完成, 详情见附件"
|
||||
|
||||
#: accounts/notifications.py:66
|
||||
#: accounts/notifications.py:68
|
||||
msgid ""
|
||||
"{} - The encryption change task has been completed: the encryption password "
|
||||
"has not been set - please go to personal information -> file encryption "
|
||||
|
@ -705,6 +706,12 @@ msgstr ""
|
|||
"{} - 改密任务已完成: 未设置加密密码 - 请前往个人信息 -> 文件加密密码中设置加"
|
||||
"密密码"
|
||||
|
||||
#: accounts/notifications.py:79
|
||||
#, fuzzy
|
||||
#| msgid "Gather account automation"
|
||||
msgid "Gather account change information"
|
||||
msgstr "自动化收集账号"
|
||||
|
||||
#: accounts/serializers/account/account.py:31
|
||||
msgid "Push now"
|
||||
msgstr "立即推送"
|
||||
|
@ -725,12 +732,12 @@ msgstr "类别"
|
|||
#: accounts/serializers/account/account.py:191
|
||||
#: accounts/serializers/automations/base.py:54 acls/models/command_acl.py:24
|
||||
#: acls/serializers/command_acl.py:19 applications/models.py:14
|
||||
#: assets/models/_user.py:49 assets/models/automations/base.py:20
|
||||
#: assets/models/_user.py:50 assets/models/automations/base.py:20
|
||||
#: assets/models/cmd_filter.py:74 assets/models/platform.py:90
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:113
|
||||
#: assets/serializers/platform.py:132 audits/serializers.py:50
|
||||
#: audits/serializers.py:170
|
||||
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:137
|
||||
#: authentication/serializers/connect_token_secret.py:125 ops/models/job.py:137
|
||||
#: perms/serializers/user_permission.py:26 terminal/models/applet/applet.py:39
|
||||
#: terminal/models/component/storage.py:57
|
||||
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
|
||||
|
@ -766,7 +773,7 @@ msgstr "已修改"
|
|||
#: acls/templates/acls/asset_login_reminder.html:6
|
||||
#: assets/models/automations/base.py:19
|
||||
#: assets/serializers/automations/base.py:20
|
||||
#: authentication/api/connection_token.py:407 ops/models/base.py:17
|
||||
#: authentication/api/connection_token.py:402 ops/models/base.py:17
|
||||
#: ops/models/job.py:139 ops/serializers/job.py:21
|
||||
#: terminal/templates/terminal/_msg_command_execute_alert.html:16
|
||||
msgid "Assets"
|
||||
|
@ -786,15 +793,15 @@ msgid "Account has exist"
|
|||
msgstr "账号已存在"
|
||||
|
||||
#: accounts/serializers/account/account.py:438
|
||||
#: authentication/serializers/connect_token_secret.py:156
|
||||
#: authentication/serializers/connect_token_secret.py:158
|
||||
#: authentication/templates/authentication/_access_key_modal.html:30
|
||||
#: perms/models/perm_node.py:21 users/serializers/group.py:31
|
||||
msgid "ID"
|
||||
msgstr "ID"
|
||||
|
||||
#: accounts/serializers/account/account.py:448 acls/serializers/base.py:116
|
||||
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:53
|
||||
#: audits/models.py:89 audits/models.py:171 audits/models.py:268
|
||||
#: 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
|
||||
|
@ -889,7 +896,7 @@ msgid ""
|
|||
"default parameters will be used"
|
||||
msgstr "关联平台,可配置推送参数,如果不关联,将使用默认参数"
|
||||
|
||||
#: accounts/serializers/account/virtual.py:19 assets/models/_user.py:26
|
||||
#: accounts/serializers/account/virtual.py:19 assets/models/_user.py:27
|
||||
#: assets/models/cmd_filter.py:40 assets/models/cmd_filter.py:88
|
||||
#: assets/models/group.py:20 common/db/models.py:36 ops/models/adhoc.py:26
|
||||
#: ops/models/job.py:145 ops/models/playbook.py:31 rbac/models/role.py:37
|
||||
|
@ -948,7 +955,7 @@ msgid "Automation task execution"
|
|||
msgstr "自动化任务执行历史"
|
||||
|
||||
#: accounts/serializers/automations/change_secret.py:149 audits/const.py:61
|
||||
#: audits/models.py:63 audits/signal_handlers/activity_log.py:33
|
||||
#: audits/models.py:64 audits/signal_handlers/activity_log.py:33
|
||||
#: common/const/choices.py:18 ops/const.py:72 ops/serializers/celery.py:40
|
||||
#: terminal/const.py:77 terminal/models/session/sharing.py:121
|
||||
#: tickets/views/approve.py:117
|
||||
|
@ -1008,22 +1015,36 @@ msgstr "验证资产账号可用性"
|
|||
msgid "Verify accounts connectivity"
|
||||
msgstr "测试账号可连接性"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:7
|
||||
#, fuzzy
|
||||
#| msgid "Asset type"
|
||||
msgid "Asset name"
|
||||
msgstr "资产类型"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:8
|
||||
#, fuzzy
|
||||
#| msgid "Add account: %s"
|
||||
msgid "Added account"
|
||||
msgstr "添加账号: %s"
|
||||
|
||||
#: accounts/templates/accounts/asset_account_change_info.html:9
|
||||
#, fuzzy
|
||||
#| msgid "Delete account: %s"
|
||||
msgid "Deleted account"
|
||||
msgstr "删除账号: %s"
|
||||
|
||||
#: accounts/utils.py:53
|
||||
msgid "Password can not contains `{{` "
|
||||
#, fuzzy
|
||||
#| msgid "Password can not contains `{{` "
|
||||
msgid "Password can not contains `{{` or `}}`"
|
||||
msgstr "密码不能包含 `{{` 字符"
|
||||
|
||||
#: accounts/utils.py:55
|
||||
msgid "Password can not contains `{%` "
|
||||
#, fuzzy
|
||||
#| msgid "Password can not contains `{%` "
|
||||
msgid "Password can not contains `{%` or `%}`"
|
||||
msgstr "密码不能包含 `{%` 字符"
|
||||
|
||||
#: accounts/utils.py:58
|
||||
msgid "Password can not contains `'` "
|
||||
msgstr "密码不能包含 `'` 字符"
|
||||
|
||||
#: accounts/utils.py:60
|
||||
msgid "Password can not contains `\"` "
|
||||
msgstr "密码不能包含 `\"` 字符"
|
||||
|
||||
#: accounts/utils.py:66
|
||||
msgid "private key invalid or passphrase error"
|
||||
msgstr "密钥不合法或密钥密码错误"
|
||||
|
@ -1053,7 +1074,7 @@ msgstr "告警"
|
|||
msgid "Notifications"
|
||||
msgstr "通知"
|
||||
|
||||
#: acls/models/base.py:37 assets/models/_user.py:50
|
||||
#: acls/models/base.py:37 assets/models/_user.py:51
|
||||
#: assets/models/cmd_filter.py:76 terminal/models/component/endpoint.py:97
|
||||
#: xpack/plugins/cloud/models.py:275
|
||||
msgid "Priority"
|
||||
|
@ -1066,7 +1087,7 @@ msgid "1-100, the lower the value will be match first"
|
|||
msgstr "优先级可选范围为 1-100 (数值越小越优先)"
|
||||
|
||||
#: acls/models/base.py:42 assets/models/cmd_filter.py:86
|
||||
#: authentication/serializers/connect_token_secret.py:88
|
||||
#: authentication/serializers/connect_token_secret.py:90
|
||||
msgid "Reviewers"
|
||||
msgstr "审批人"
|
||||
|
||||
|
@ -1117,7 +1138,7 @@ msgstr "忽略大小写"
|
|||
|
||||
#: acls/models/command_acl.py:33 acls/models/command_acl.py:97
|
||||
#: acls/serializers/command_acl.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:85
|
||||
#: authentication/serializers/connect_token_secret.py:87
|
||||
#: terminal/templates/terminal/_msg_command_warning.html:14
|
||||
msgid "Command group"
|
||||
msgstr "命令组"
|
||||
|
@ -1245,15 +1266,15 @@ msgstr ""
|
|||
msgid "Thank you"
|
||||
msgstr "谢谢"
|
||||
|
||||
#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:193
|
||||
#: audits/models.py:262
|
||||
#: acls/templates/acls/user_login_reminder.html:7 audits/models.py:194
|
||||
#: audits/models.py:263
|
||||
#: authentication/templates/authentication/_msg_different_city.html:11
|
||||
#: tickets/models/ticket/login_confirm.py:11
|
||||
msgid "Login city"
|
||||
msgstr "登录城市"
|
||||
|
||||
#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:196
|
||||
#: audits/models.py:263 audits/serializers.py:65
|
||||
#: acls/templates/acls/user_login_reminder.html:8 audits/models.py:197
|
||||
#: audits/models.py:264 audits/serializers.py:65
|
||||
msgid "User agent"
|
||||
msgstr "用户代理"
|
||||
|
||||
|
@ -1573,99 +1594,99 @@ msgstr "网站"
|
|||
msgid "This function is not supported temporarily"
|
||||
msgstr "暂时不支持此功能"
|
||||
|
||||
#: assets/models/_user.py:24
|
||||
#: assets/models/_user.py:25
|
||||
msgid "SSH private key"
|
||||
msgstr "SSH密钥"
|
||||
|
||||
#: assets/models/_user.py:25
|
||||
#: assets/models/_user.py:26
|
||||
msgid "SSH public key"
|
||||
msgstr "SSH公钥"
|
||||
|
||||
# msgid "Comment"
|
||||
# msgstr "备注"
|
||||
#: assets/models/_user.py:27 assets/models/automations/base.py:114
|
||||
#: assets/models/_user.py:28 assets/models/automations/base.py:114
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:19
|
||||
#: audits/models.py:266 common/db/models.py:34 ops/models/base.py:54
|
||||
#: audits/models.py:267 common/db/models.py:34 ops/models/base.py:54
|
||||
#: ops/models/job.py:227 users/models/user.py:1024
|
||||
msgid "Date created"
|
||||
msgstr "创建日期"
|
||||
|
||||
#: assets/models/_user.py:28 assets/models/cmd_filter.py:42
|
||||
#: assets/models/_user.py:29 assets/models/cmd_filter.py:42
|
||||
#: common/db/models.py:35 users/models/user.py:846
|
||||
msgid "Date updated"
|
||||
msgstr "更新日期"
|
||||
|
||||
#: assets/models/_user.py:29 assets/models/cmd_filter.py:44
|
||||
#: assets/models/_user.py:30 assets/models/cmd_filter.py:44
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:18
|
||||
#: common/db/models.py:32 users/models/user.py:835
|
||||
#: users/serializers/group.py:29
|
||||
msgid "Created by"
|
||||
msgstr "创建者"
|
||||
|
||||
#: assets/models/_user.py:39
|
||||
#: assets/models/_user.py:40
|
||||
msgid "Automatic managed"
|
||||
msgstr "托管密码"
|
||||
|
||||
#: assets/models/_user.py:40
|
||||
#: assets/models/_user.py:41
|
||||
msgid "Manually input"
|
||||
msgstr "手动输入"
|
||||
|
||||
#: assets/models/_user.py:44
|
||||
#: assets/models/_user.py:45
|
||||
msgid "Common user"
|
||||
msgstr "普通用户"
|
||||
|
||||
#: assets/models/_user.py:45 assets/models/_user.py:98
|
||||
#: assets/models/_user.py:46 assets/models/_user.py:95
|
||||
msgid "Admin user"
|
||||
msgstr "特权用户"
|
||||
|
||||
#: assets/models/_user.py:48
|
||||
#: assets/models/_user.py:49
|
||||
msgid "Username same with user"
|
||||
msgstr "用户名与用户相同"
|
||||
|
||||
#: assets/models/_user.py:53 authentication/models/connection_token.py:41
|
||||
#: authentication/serializers/connect_token_secret.py:111
|
||||
#: assets/models/_user.py:52 authentication/models/connection_token.py:41
|
||||
#: authentication/serializers/connect_token_secret.py:113
|
||||
#: terminal/models/applet/applet.py:42 terminal/serializers/session.py:19
|
||||
#: terminal/serializers/session.py:45 terminal/serializers/storage.py:71
|
||||
msgid "Protocol"
|
||||
msgstr "协议"
|
||||
|
||||
#: assets/models/_user.py:55
|
||||
#: assets/models/_user.py:54
|
||||
msgid "Sudo"
|
||||
msgstr "Sudo"
|
||||
|
||||
#: assets/models/_user.py:56 ops/const.py:49 ops/const.py:59
|
||||
#: assets/models/_user.py:55 ops/const.py:49 ops/const.py:59
|
||||
msgid "Shell"
|
||||
msgstr "Shell"
|
||||
|
||||
#: assets/models/_user.py:58
|
||||
#: assets/models/_user.py:56
|
||||
msgid "Login mode"
|
||||
msgstr "认证方式"
|
||||
|
||||
#: assets/models/_user.py:59 terminal/serializers/storage.py:152
|
||||
#: assets/models/_user.py:57 terminal/serializers/storage.py:152
|
||||
msgid "SFTP Root"
|
||||
msgstr "SFTP根路径"
|
||||
|
||||
#: assets/models/_user.py:60
|
||||
#: assets/models/_user.py:58
|
||||
msgid "Home"
|
||||
msgstr "家目录"
|
||||
|
||||
#: assets/models/_user.py:61
|
||||
#: assets/models/_user.py:59
|
||||
msgid "System groups"
|
||||
msgstr "用户组"
|
||||
|
||||
#: assets/models/_user.py:64
|
||||
#: assets/models/_user.py:62
|
||||
msgid "User switch"
|
||||
msgstr "用户切换"
|
||||
|
||||
#: assets/models/_user.py:66
|
||||
#: assets/models/_user.py:63
|
||||
msgid "Switch from"
|
||||
msgstr "切换自"
|
||||
|
||||
#: assets/models/_user.py:72
|
||||
#: assets/models/_user.py:69
|
||||
msgid "System user"
|
||||
msgstr "系统用户"
|
||||
|
||||
#: assets/models/_user.py:74
|
||||
#: assets/models/_user.py:71
|
||||
msgid "Can match system user"
|
||||
msgstr "可以匹配系统用户"
|
||||
|
||||
|
@ -1686,13 +1707,13 @@ msgstr "地址"
|
|||
|
||||
#: assets/models/asset/common.py:151 assets/models/platform.py:119
|
||||
#: authentication/backends/passkey/models.py:12
|
||||
#: authentication/serializers/connect_token_secret.py:115
|
||||
#: authentication/serializers/connect_token_secret.py:117
|
||||
#: perms/serializers/user_permission.py:24 xpack/plugins/cloud/models.py:321
|
||||
msgid "Platform"
|
||||
msgstr "系统平台"
|
||||
|
||||
#: assets/models/asset/common.py:153 assets/models/domain.py:21
|
||||
#: authentication/serializers/connect_token_secret.py:133
|
||||
#: authentication/serializers/connect_token_secret.py:135
|
||||
#: perms/serializers/user_permission.py:28 xpack/plugins/cloud/models.py:323
|
||||
msgid "Domain"
|
||||
msgstr "网域"
|
||||
|
@ -1839,7 +1860,7 @@ msgstr "系统"
|
|||
#: assets/serializers/cagegory.py:11 assets/serializers/cagegory.py:18
|
||||
#: assets/serializers/cagegory.py:24
|
||||
#: authentication/models/connection_token.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:122
|
||||
#: authentication/serializers/connect_token_secret.py:124
|
||||
#: common/serializers/common.py:86 settings/models.py:33
|
||||
#: users/models/preference.py:13
|
||||
msgid "Value"
|
||||
|
@ -1848,7 +1869,7 @@ msgstr "值"
|
|||
#: assets/models/label.py:40 assets/serializers/asset/common.py:123
|
||||
#: assets/serializers/cagegory.py:10 assets/serializers/cagegory.py:17
|
||||
#: assets/serializers/cagegory.py:23 assets/serializers/platform.py:112
|
||||
#: authentication/serializers/connect_token_secret.py:121
|
||||
#: authentication/serializers/connect_token_secret.py:123
|
||||
#: common/serializers/common.py:85 perms/serializers/user_permission.py:27
|
||||
#: settings/serializers/msg.py:83
|
||||
msgid "Label"
|
||||
|
@ -2014,7 +2035,7 @@ msgstr "资产中批量更新平台,不符合平台类型跳过的资产"
|
|||
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:134
|
||||
#: authentication/serializers/connect_token_secret.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:72
|
||||
#: authentication/serializers/connect_token_secret.py:74
|
||||
#: perms/models/asset_permission.py:75 perms/serializers/permission.py:40
|
||||
#: perms/serializers/user_permission.py:74 xpack/plugins/cloud/models.py:324
|
||||
#: xpack/plugins/cloud/serializers/task.py:31
|
||||
|
@ -2105,7 +2126,7 @@ msgid "Disk total"
|
|||
msgstr "硬盘大小"
|
||||
|
||||
#: assets/serializers/asset/info/gathered.py:16
|
||||
#: authentication/serializers/connect_token_secret.py:112
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
msgid "OS"
|
||||
msgstr "操作系统"
|
||||
|
||||
|
@ -2353,7 +2374,7 @@ msgstr "关闭"
|
|||
msgid "Terminal"
|
||||
msgstr "终端"
|
||||
|
||||
#: audits/const.py:48 audits/models.py:131
|
||||
#: audits/const.py:48 audits/models.py:132
|
||||
msgid "Operate log"
|
||||
msgstr "操作日志"
|
||||
|
||||
|
@ -2382,28 +2403,28 @@ msgstr "是"
|
|||
msgid "No"
|
||||
msgstr "否"
|
||||
|
||||
#: audits/models.py:46
|
||||
#: audits/models.py:47
|
||||
msgid "Job audit log"
|
||||
msgstr "作业审计日志"
|
||||
|
||||
#: audits/models.py:55 audits/models.py:99 audits/models.py:174
|
||||
#: audits/models.py:56 audits/models.py:100 audits/models.py:175
|
||||
#: terminal/models/session/session.py:38 terminal/models/session/sharing.py:113
|
||||
msgid "Remote addr"
|
||||
msgstr "远端地址"
|
||||
|
||||
#: audits/models.py:60 audits/serializers.py:35
|
||||
#: audits/models.py:61 audits/serializers.py:35
|
||||
msgid "Operate"
|
||||
msgstr "操作"
|
||||
|
||||
#: audits/models.py:62
|
||||
#: audits/models.py:63
|
||||
msgid "Filename"
|
||||
msgstr "文件名"
|
||||
|
||||
#: audits/models.py:65 common/serializers/common.py:98
|
||||
#: audits/models.py:66 common/serializers/common.py:98
|
||||
msgid "File"
|
||||
msgstr "文件"
|
||||
|
||||
#: audits/models.py:66 terminal/backends/command/models.py:21
|
||||
#: audits/models.py:67 terminal/backends/command/models.py:21
|
||||
#: terminal/models/session/replay.py:9 terminal/models/session/sharing.py:20
|
||||
#: terminal/models/session/sharing.py:95
|
||||
#: terminal/templates/terminal/_msg_command_alert.html:10
|
||||
|
@ -2412,86 +2433,86 @@ msgstr "文件"
|
|||
msgid "Session"
|
||||
msgstr "会话"
|
||||
|
||||
#: audits/models.py:69
|
||||
#: audits/models.py:70
|
||||
msgid "File transfer log"
|
||||
msgstr "文件管理"
|
||||
|
||||
#: audits/models.py:93 audits/serializers.py:86
|
||||
#: audits/models.py:94 audits/serializers.py:86
|
||||
msgid "Resource Type"
|
||||
msgstr "资源类型"
|
||||
|
||||
#: audits/models.py:94 audits/models.py:97 audits/models.py:143
|
||||
#: audits/models.py:95 audits/models.py:98 audits/models.py:144
|
||||
#: audits/serializers.py:85
|
||||
msgid "Resource"
|
||||
msgstr "资源"
|
||||
|
||||
#: audits/models.py:100 audits/models.py:146 audits/models.py:176
|
||||
#: audits/models.py:101 audits/models.py:147 audits/models.py:177
|
||||
#: terminal/serializers/command.py:75
|
||||
msgid "Datetime"
|
||||
msgstr "日期"
|
||||
|
||||
#: audits/models.py:139
|
||||
#: audits/models.py:140
|
||||
msgid "Activity type"
|
||||
msgstr "活动类型"
|
||||
|
||||
#: audits/models.py:149
|
||||
#: audits/models.py:150
|
||||
msgid "Detail"
|
||||
msgstr "详情"
|
||||
|
||||
#: audits/models.py:152
|
||||
#: audits/models.py:153
|
||||
msgid "Detail ID"
|
||||
msgstr "详情 ID"
|
||||
|
||||
#: audits/models.py:156
|
||||
#: audits/models.py:157
|
||||
msgid "Activity log"
|
||||
msgstr "活动日志"
|
||||
|
||||
#: audits/models.py:172
|
||||
#: audits/models.py:173
|
||||
msgid "Change by"
|
||||
msgstr "修改者"
|
||||
|
||||
#: audits/models.py:182
|
||||
#: audits/models.py:183
|
||||
msgid "Password change log"
|
||||
msgstr "改密日志"
|
||||
|
||||
#: audits/models.py:189 audits/models.py:264
|
||||
#: audits/models.py:190 audits/models.py:265
|
||||
msgid "Login type"
|
||||
msgstr "登录方式"
|
||||
|
||||
#: audits/models.py:191 audits/models.py:260
|
||||
#: audits/models.py:192 audits/models.py:261
|
||||
#: tickets/models/ticket/login_confirm.py:10
|
||||
msgid "Login IP"
|
||||
msgstr "登录 IP"
|
||||
|
||||
#: audits/models.py:199 audits/serializers.py:49
|
||||
#: audits/models.py:200 audits/serializers.py:49
|
||||
#: authentication/templates/authentication/_mfa_confirm_modal.html:14
|
||||
#: users/forms/profile.py:65 users/models/user.py:815
|
||||
#: users/serializers/profile.py:102
|
||||
msgid "MFA"
|
||||
msgstr "MFA"
|
||||
|
||||
#: audits/models.py:209
|
||||
#: audits/models.py:210
|
||||
msgid "Date login"
|
||||
msgstr "登录日期"
|
||||
|
||||
#: audits/models.py:211 audits/models.py:265 audits/serializers.py:67
|
||||
#: audits/models.py:212 audits/models.py:266 audits/serializers.py:67
|
||||
#: audits/serializers.py:184
|
||||
msgid "Authentication backend"
|
||||
msgstr "认证方式"
|
||||
|
||||
#: audits/models.py:255
|
||||
#: audits/models.py:256
|
||||
msgid "User login log"
|
||||
msgstr "用户登录日志"
|
||||
|
||||
#: audits/models.py:261
|
||||
#: audits/models.py:262
|
||||
msgid "Session key"
|
||||
msgstr "会话标识"
|
||||
|
||||
#: audits/models.py:300
|
||||
#: audits/models.py:306
|
||||
msgid "User session"
|
||||
msgstr "用户会话"
|
||||
|
||||
#: audits/models.py:302
|
||||
#: audits/models.py:308
|
||||
msgid "Offline ussr session"
|
||||
msgstr "下限用户会话"
|
||||
|
||||
|
@ -2586,27 +2607,27 @@ msgstr ""
|
|||
msgid "This action require verify your MFA"
|
||||
msgstr "该操作需要验证您的 MFA, 请先开启并配置"
|
||||
|
||||
#: authentication/api/connection_token.py:263
|
||||
#: authentication/api/connection_token.py:258
|
||||
msgid "Reusable connection token is not allowed, global setting not enabled"
|
||||
msgstr "不允许使用可重复使用的连接令牌,未启用全局设置"
|
||||
|
||||
#: authentication/api/connection_token.py:377
|
||||
#: authentication/api/connection_token.py:372
|
||||
msgid "Anonymous account is not supported for this asset"
|
||||
msgstr "匿名账号不支持当前资产"
|
||||
|
||||
#: authentication/api/connection_token.py:396
|
||||
#: authentication/api/connection_token.py:391
|
||||
msgid "Account not found"
|
||||
msgstr "账号未找到"
|
||||
|
||||
#: authentication/api/connection_token.py:399
|
||||
#: authentication/api/connection_token.py:394
|
||||
msgid "Permission expired"
|
||||
msgstr "授权已过期"
|
||||
|
||||
#: authentication/api/connection_token.py:429
|
||||
#: authentication/api/connection_token.py:424
|
||||
msgid "ACL action is reject: {}({})"
|
||||
msgstr "ACL 动作是拒绝: {}({})"
|
||||
|
||||
#: authentication/api/connection_token.py:433
|
||||
#: authentication/api/connection_token.py:428
|
||||
msgid "ACL action is review"
|
||||
msgstr "ACL 动作是复核"
|
||||
|
||||
|
@ -3078,19 +3099,19 @@ msgstr "异地登录提醒"
|
|||
msgid "binding reminder"
|
||||
msgstr "绑定提醒"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:113
|
||||
#: authentication/serializers/connect_token_secret.py:115
|
||||
msgid "Is builtin"
|
||||
msgstr "内置的"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:117
|
||||
#: authentication/serializers/connect_token_secret.py:119
|
||||
msgid "Options"
|
||||
msgstr "选项"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:124
|
||||
#: authentication/serializers/connect_token_secret.py:126
|
||||
msgid "Component"
|
||||
msgstr "组件"
|
||||
|
||||
#: authentication/serializers/connect_token_secret.py:135
|
||||
#: authentication/serializers/connect_token_secret.py:137
|
||||
msgid "Expired now"
|
||||
msgstr "立刻过期"
|
||||
|
||||
|
@ -3568,7 +3589,7 @@ msgstr "编码数据为 text"
|
|||
msgid "Encrypt field using Secret Key"
|
||||
msgstr "加密的字段"
|
||||
|
||||
#: common/db/fields.py:575
|
||||
#: 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', "
|
||||
|
@ -3578,15 +3599,15 @@ msgstr ""
|
|||
"{'type': 'attrs', 'attrs': [{'name': 'ip', 'match': 'exact', 'value': "
|
||||
"'1.1.1.1'}}"
|
||||
|
||||
#: common/db/fields.py:582
|
||||
#: common/db/fields.py:580
|
||||
msgid "Invalid type, should be \"all\", \"ids\" or \"attrs\""
|
||||
msgstr "无效类型,应为 all、ids 或 attrs"
|
||||
|
||||
#: common/db/fields.py:585
|
||||
#: common/db/fields.py:583
|
||||
msgid "Invalid ids for ids, should be a list"
|
||||
msgstr "无效的ID,应为列表"
|
||||
|
||||
#: common/db/fields.py:587 common/db/fields.py:592
|
||||
#: common/db/fields.py:585 common/db/fields.py:590
|
||||
#: common/serializers/fields.py:104 tickets/serializers/ticket/common.py:58
|
||||
#: xpack/plugins/cloud/serializers/account_attrs.py:56
|
||||
#: xpack/plugins/cloud/serializers/account_attrs.py:79
|
||||
|
@ -3594,11 +3615,11 @@ msgstr "无效的ID,应为列表"
|
|||
msgid "This field is required."
|
||||
msgstr "该字段是必填项。"
|
||||
|
||||
#: common/db/fields.py:590 common/db/fields.py:595
|
||||
#: common/db/fields.py:588 common/db/fields.py:593
|
||||
msgid "Invalid attrs, should be a list of dict"
|
||||
msgstr "无效的属性,应为dict列表"
|
||||
|
||||
#: common/db/fields.py:597
|
||||
#: common/db/fields.py:595
|
||||
msgid "Invalid attrs, should be has name and value"
|
||||
msgstr "无效属性,应具有名称和值"
|
||||
|
||||
|
@ -4354,11 +4375,15 @@ msgstr "复制"
|
|||
msgid "Paste"
|
||||
msgstr "粘贴"
|
||||
|
||||
#: perms/const.py:27
|
||||
#: perms/const.py:18
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: perms/const.py:28
|
||||
msgid "Transfer"
|
||||
msgstr "文件传输"
|
||||
|
||||
#: perms/const.py:28
|
||||
#: perms/const.py:29
|
||||
msgid "Clipboard"
|
||||
msgstr "剪贴板"
|
||||
|
||||
|
@ -6118,10 +6143,11 @@ msgstr "测试失败: {}"
|
|||
msgid "Test successful"
|
||||
msgstr "测试成功"
|
||||
|
||||
#: terminal/api/component/storage.py:124 terminal/notifications.py:240
|
||||
#: terminal/tasks.py:146
|
||||
msgid "Test failure: Account invalid"
|
||||
msgstr "测试失败: 账号无效"
|
||||
#: terminal/api/component/storage.py:124
|
||||
#, fuzzy
|
||||
#| msgid "Test failure: Account invalid"
|
||||
msgid "Test failure: Please check configuration"
|
||||
msgstr "测试失败: 请检查配置"
|
||||
|
||||
#: terminal/api/component/terminal.py:55
|
||||
msgid "Have online sessions"
|
||||
|
@ -6595,6 +6621,10 @@ msgstr "命令及录像存储"
|
|||
msgid "Connectivity alarm"
|
||||
msgstr "可连接性告警"
|
||||
|
||||
#: terminal/notifications.py:240 terminal/tasks.py:146
|
||||
msgid "Test failure: Account invalid"
|
||||
msgstr "测试失败: 账号无效"
|
||||
|
||||
#: terminal/notifications.py:250
|
||||
#: terminal/templates/terminal/_msg_check_command_replay_storage_connectivity.html:4
|
||||
msgid "Invalid storage"
|
||||
|
@ -8574,5 +8604,11 @@ msgstr "企业专业版"
|
|||
msgid "Ultimate edition"
|
||||
msgstr "企业旗舰版"
|
||||
|
||||
#~ msgid "Password can not contains `'` "
|
||||
#~ msgstr "密码不能包含 `'` 字符"
|
||||
|
||||
#~ msgid "Password can not contains `\"` "
|
||||
#~ msgstr "密码不能包含 `\"` 字符"
|
||||
|
||||
#~ msgid "Object Storage"
|
||||
#~ msgstr "对象存储"
|
||||
|
|
|
@ -121,7 +121,7 @@ class BaseStorageTestConnectiveMixin:
|
|||
if is_valid:
|
||||
msg = _("Test successful")
|
||||
else:
|
||||
msg = _("Test failure: Account invalid")
|
||||
msg = _("Test failure: Please check configuration")
|
||||
data = {
|
||||
'is_valid': is_valid,
|
||||
'msg': msg
|
||||
|
|
Loading…
Reference in New Issue