mirror of https://github.com/jumpserver/jumpserver
perf: 修改 protocol setting (#10875)
* feat: 新增账号配置 * perf: 修改 platform protocol define * perf: 修改 account config * perf: 修改协议设置 --------- Co-authored-by: ibuler <ibuler@qq.com>pull/10876/head
parent
6962430e6a
commit
bbbd011cc2
|
@ -1,3 +1,3 @@
|
|||
from .base import *
|
||||
from .account import *
|
||||
from .automations import *
|
||||
from .base import *
|
||||
|
|
|
@ -78,5 +78,8 @@ class BaseAccountSerializer(AuthValidateMixin, BulkOrgResourceModelSerializer):
|
|||
]
|
||||
extra_kwargs = {
|
||||
'spec_info': {'label': _('Spec info')},
|
||||
'username': {'help_text': _("Tip: If no username is required for authentication, fill in `null`")}
|
||||
'username': {'help_text': _(
|
||||
"Tip: If no username is required for authentication, fill in `null`, "
|
||||
"If AD account, like `username@domain`"
|
||||
)},
|
||||
}
|
||||
|
|
|
@ -4,20 +4,20 @@ from rest_framework.decorators import action
|
|||
from rest_framework.response import Response
|
||||
|
||||
from assets.const import AllTypes
|
||||
from assets.models import Platform, Node, Asset
|
||||
from assets.serializers import PlatformSerializer
|
||||
from assets.models import Platform, Node, Asset, PlatformProtocol
|
||||
from assets.serializers import PlatformSerializer, PlatformProtocolSerializer
|
||||
from common.api import JMSModelViewSet
|
||||
from common.permissions import IsValidUser
|
||||
from common.serializers import GroupedChoiceSerializer
|
||||
|
||||
__all__ = ['AssetPlatformViewSet', 'PlatformAutomationMethodsApi']
|
||||
__all__ = ['AssetPlatformViewSet', 'PlatformAutomationMethodsApi', 'PlatformProtocolViewSet']
|
||||
|
||||
|
||||
class AssetPlatformViewSet(JMSModelViewSet):
|
||||
queryset = Platform.objects.all()
|
||||
serializer_classes = {
|
||||
'default': PlatformSerializer,
|
||||
'categories': GroupedChoiceSerializer
|
||||
'categories': GroupedChoiceSerializer,
|
||||
}
|
||||
filterset_fields = ['name', 'category', 'type']
|
||||
search_fields = ['name']
|
||||
|
@ -25,7 +25,7 @@ class AssetPlatformViewSet(JMSModelViewSet):
|
|||
'categories': 'assets.view_platform',
|
||||
'type_constraints': 'assets.view_platform',
|
||||
'ops_methods': 'assets.view_platform',
|
||||
'filter_nodes_assets': 'assets.view_platform'
|
||||
'filter_nodes_assets': 'assets.view_platform',
|
||||
}
|
||||
|
||||
def get_queryset(self):
|
||||
|
@ -61,6 +61,15 @@ class AssetPlatformViewSet(JMSModelViewSet):
|
|||
return Response(serializer.data)
|
||||
|
||||
|
||||
class PlatformProtocolViewSet(JMSModelViewSet):
|
||||
queryset = PlatformProtocol.objects.all()
|
||||
serializer_class = PlatformProtocolSerializer
|
||||
filterset_fields = ['name', 'platform__name']
|
||||
rbac_perms = {
|
||||
'*': 'assets.add_platform'
|
||||
}
|
||||
|
||||
|
||||
class PlatformAutomationMethodsApi(generics.ListAPIView):
|
||||
permission_classes = (IsValidUser,)
|
||||
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
from django.db import models
|
||||
from django.db.models import TextChoices
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from jumpserver.utils import has_valid_xpack_license
|
||||
from .protocol import Protocol
|
||||
|
||||
|
||||
class Type:
|
||||
|
@ -28,6 +29,12 @@ class Type:
|
|||
)
|
||||
|
||||
|
||||
class FillType(models.TextChoices):
|
||||
no = 'no', _('Disabled')
|
||||
basic = 'basic', _('Basic')
|
||||
script = 'script', _('Script')
|
||||
|
||||
|
||||
class BaseType(TextChoices):
|
||||
"""
|
||||
约束应该考虑代是对平台对限制,避免多余对选项,如: mysql 开启 ssh,
|
||||
|
@ -57,6 +64,7 @@ class BaseType(TextChoices):
|
|||
|
||||
@classmethod
|
||||
def _parse_protocols(cls, protocol, tp):
|
||||
from .protocol import Protocol
|
||||
settings = Protocol.settings()
|
||||
choices = protocol.get('choices', [])
|
||||
if choices == '__self__':
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
from django.db import models
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from common.db.models import ChoicesMixin
|
||||
from .base import FillType
|
||||
|
||||
__all__ = ['Protocol']
|
||||
|
||||
|
@ -22,8 +24,7 @@ class Protocol(ChoicesMixin, models.TextChoices):
|
|||
mongodb = 'mongodb', 'MongoDB'
|
||||
|
||||
k8s = 'k8s', 'K8S'
|
||||
http = 'http', 'HTTP'
|
||||
_settings = None
|
||||
http = 'http', 'HTTP(s)'
|
||||
|
||||
@classmethod
|
||||
def device_protocols(cls):
|
||||
|
@ -32,16 +33,40 @@ class Protocol(ChoicesMixin, models.TextChoices):
|
|||
'port': 22,
|
||||
'secret_types': ['password', 'ssh_key'],
|
||||
'setting': {
|
||||
'sftp_enabled': True,
|
||||
'sftp_home': '/tmp',
|
||||
'sftp_enabled': {
|
||||
'type': 'bool',
|
||||
'default': True,
|
||||
'label': _('SFTP enabled')
|
||||
},
|
||||
'sftp_home': {
|
||||
'type': 'str',
|
||||
'default': '/tmp',
|
||||
'label': _('SFTP home')
|
||||
},
|
||||
}
|
||||
},
|
||||
cls.rdp: {
|
||||
'port': 3389,
|
||||
'secret_types': ['password'],
|
||||
'setting': {
|
||||
'console': False,
|
||||
'security': 'any',
|
||||
'console': {
|
||||
'type': 'bool',
|
||||
'default': False,
|
||||
'label': _('Console'),
|
||||
'help_text': _("Connect to console session")
|
||||
},
|
||||
'security': {
|
||||
'type': 'choice',
|
||||
'choices': [('any', _('Any')), ('rdp', 'RDP'), ('tls', 'TLS'), ('nla', 'NLA')],
|
||||
'default': 'any',
|
||||
'label': _('Security'),
|
||||
'help_text': _("Security layer to use for the connection")
|
||||
},
|
||||
# 'ad_domain': {
|
||||
# 'type': 'str',
|
||||
# "required": False,
|
||||
# 'label': _('AD domain')
|
||||
# }
|
||||
}
|
||||
},
|
||||
cls.vnc: {
|
||||
|
@ -56,7 +81,11 @@ class Protocol(ChoicesMixin, models.TextChoices):
|
|||
'port': 5985,
|
||||
'secret_types': ['password'],
|
||||
'setting': {
|
||||
'use_ssl': False,
|
||||
'use_ssl': {
|
||||
'type': 'bool',
|
||||
'default': False,
|
||||
'label': _('Use SSL')
|
||||
},
|
||||
}
|
||||
},
|
||||
}
|
||||
|
@ -105,7 +134,11 @@ class Protocol(ChoicesMixin, models.TextChoices):
|
|||
'required': True,
|
||||
'secret_types': ['password'],
|
||||
'setting': {
|
||||
'auth_username': True,
|
||||
'auth_username': {
|
||||
'type': 'bool',
|
||||
'default': False,
|
||||
'label': _('Auth username')
|
||||
},
|
||||
}
|
||||
},
|
||||
}
|
||||
|
@ -121,10 +154,28 @@ class Protocol(ChoicesMixin, models.TextChoices):
|
|||
cls.http: {
|
||||
'port': 80,
|
||||
'secret_types': ['password'],
|
||||
'label': 'HTTP(s)',
|
||||
'setting': {
|
||||
'username_selector': 'name=username',
|
||||
'password_selector': 'name=password',
|
||||
'submit_selector': 'id=login_button',
|
||||
'autofill': {
|
||||
'type': 'choice',
|
||||
'choices': FillType.choices,
|
||||
'default': 'basic',
|
||||
},
|
||||
'username_selector': {
|
||||
'type': 'str',
|
||||
'default': 'name=username',
|
||||
'label': _('Username selector')
|
||||
},
|
||||
'password_selector': {
|
||||
'type': 'str',
|
||||
'default': 'name=password',
|
||||
'label': _('Password selector')
|
||||
},
|
||||
'submit_selector': {
|
||||
'type': 'str',
|
||||
'default': 'type=submit',
|
||||
'label': _('Submit selector')
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
from django.db import models
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from .base import BaseType
|
||||
|
@ -53,9 +52,3 @@ class WebTypes(BaseType):
|
|||
return [
|
||||
cls.WEBSITE,
|
||||
]
|
||||
|
||||
|
||||
class FillType(models.TextChoices):
|
||||
no = 'no', _('Disabled')
|
||||
basic = 'basic', _('Basic')
|
||||
script = 'script', _('Script')
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from django.db import models
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from assets.const.web import FillType
|
||||
from assets.const import FillType
|
||||
from .common import Asset
|
||||
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from django.utils.translation import gettext_lazy as _
|
||||
from rest_framework import serializers
|
||||
|
||||
from assets.const.web import FillType
|
||||
from assets.const import FillType
|
||||
from assets.models import Database, Web
|
||||
from common.serializers.fields import LabeledChoiceField
|
||||
|
||||
|
@ -14,6 +14,7 @@ class DatabaseSpecSerializer(serializers.ModelSerializer):
|
|||
|
||||
class WebSpecSerializer(serializers.ModelSerializer):
|
||||
autofill = LabeledChoiceField(choices=FillType.choices, label=_('Autofill'))
|
||||
|
||||
class Meta:
|
||||
model = Web
|
||||
fields = [
|
||||
|
|
|
@ -1,48 +1,17 @@
|
|||
from django.db.models import QuerySet
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from rest_framework import serializers
|
||||
|
||||
from assets.const.web import FillType
|
||||
from common.serializers import WritableNestedModelSerializer, type_field_map
|
||||
from common.serializers import (
|
||||
WritableNestedModelSerializer, type_field_map, MethodSerializer,
|
||||
DictSerializer, create_serializer_class
|
||||
)
|
||||
from common.serializers.fields import LabeledChoiceField
|
||||
from common.utils import lazyproperty
|
||||
from ..const import Category, AllTypes
|
||||
from ..const import Category, AllTypes, Protocol
|
||||
from ..models import Platform, PlatformProtocol, PlatformAutomation
|
||||
|
||||
__all__ = ["PlatformSerializer", "PlatformOpsMethodSerializer"]
|
||||
|
||||
|
||||
class ProtocolSettingSerializer(serializers.Serializer):
|
||||
SECURITY_CHOICES = [
|
||||
("any", "Any"),
|
||||
("rdp", "RDP"),
|
||||
("tls", "TLS"),
|
||||
("nla", "NLA"),
|
||||
]
|
||||
# RDP
|
||||
console = serializers.BooleanField(required=False, default=False)
|
||||
security = serializers.ChoiceField(choices=SECURITY_CHOICES, default="any")
|
||||
|
||||
# SFTP
|
||||
sftp_enabled = serializers.BooleanField(default=True, label=_("SFTP enabled"))
|
||||
sftp_home = serializers.CharField(default="/tmp", label=_("SFTP home"))
|
||||
|
||||
# HTTP
|
||||
autofill = serializers.ChoiceField(default='basic', choices=FillType.choices, label=_("Autofill"))
|
||||
username_selector = serializers.CharField(
|
||||
default="", allow_blank=True, label=_("Username selector")
|
||||
)
|
||||
password_selector = serializers.CharField(
|
||||
default="", allow_blank=True, label=_("Password selector")
|
||||
)
|
||||
submit_selector = serializers.CharField(
|
||||
default="", allow_blank=True, label=_("Submit selector")
|
||||
)
|
||||
script = serializers.JSONField(default=list, label=_("Script"))
|
||||
# Redis
|
||||
auth_username = serializers.BooleanField(default=False, label=_("Auth with username"))
|
||||
|
||||
# WinRM
|
||||
use_ssl = serializers.BooleanField(default=False, label=_("Use SSL"))
|
||||
__all__ = ["PlatformSerializer", "PlatformOpsMethodSerializer", "PlatformProtocolSerializer"]
|
||||
|
||||
|
||||
class PlatformAutomationSerializer(serializers.ModelSerializer):
|
||||
|
@ -76,7 +45,7 @@ class PlatformAutomationSerializer(serializers.ModelSerializer):
|
|||
|
||||
|
||||
class PlatformProtocolSerializer(serializers.ModelSerializer):
|
||||
setting = ProtocolSettingSerializer(required=False, allow_null=True)
|
||||
setting = MethodSerializer(required=False, label=_("Setting"))
|
||||
|
||||
class Meta:
|
||||
model = PlatformProtocol
|
||||
|
@ -85,6 +54,47 @@ class PlatformProtocolSerializer(serializers.ModelSerializer):
|
|||
"required", "default", "public",
|
||||
"secret_types", "setting",
|
||||
]
|
||||
extra_kwargs = {
|
||||
"primary": {
|
||||
"help_text": _(
|
||||
"This protocol is primary, and it must be set when adding assets. "
|
||||
"Additionally, there can only be one primary protocol."
|
||||
)
|
||||
},
|
||||
"required": {
|
||||
"help_text": _("This protocol is required, and it must be set when adding assets.")
|
||||
},
|
||||
"default": {
|
||||
"help_text": _("This protocol is default, when adding assets, it will be displayed by default.")
|
||||
},
|
||||
"public": {
|
||||
"help_text": _("This protocol is public, asset will show this protocol to user")
|
||||
},
|
||||
}
|
||||
|
||||
def get_setting_serializer(self):
|
||||
request = self.context.get('request')
|
||||
default_field = DictSerializer()
|
||||
|
||||
if not request:
|
||||
return default_field
|
||||
|
||||
if self.instance and isinstance(self.instance, (QuerySet, list)):
|
||||
instance = self.instance[0]
|
||||
else:
|
||||
instance = self.instance
|
||||
|
||||
protocol = request.query_params.get('name', '')
|
||||
if instance and not protocol:
|
||||
protocol = instance.name
|
||||
|
||||
protocol_settings = Protocol.settings()
|
||||
setting_fields = protocol_settings.get(protocol, {}).get('setting')
|
||||
if not setting_fields:
|
||||
return default_field
|
||||
setting_fields = [{'name': k, **v} for k, v in setting_fields.items()]
|
||||
name = '{}ProtocolSettingSerializer'.format(protocol.capitalize())
|
||||
return create_serializer_class(name, setting_fields)()
|
||||
|
||||
def to_file_representation(self, data):
|
||||
return '{name}/{port}'.format(**data)
|
||||
|
|
|
@ -21,6 +21,7 @@ router.register(r'nodes', api.NodeViewSet, 'node')
|
|||
router.register(r'domains', api.DomainViewSet, 'domain')
|
||||
router.register(r'gateways', api.GatewayViewSet, 'gateway')
|
||||
router.register(r'favorite-assets', api.FavoriteAssetViewSet, 'favorite-asset')
|
||||
router.register(r'protocol-settings', api.PlatformProtocolViewSet, 'protocol-setting')
|
||||
|
||||
urlpatterns = [
|
||||
# path('assets/<uuid:pk>/gateways/', api.AssetGatewayListApi.as_view(), name='asset-gateway-list'),
|
||||
|
@ -46,7 +47,8 @@ urlpatterns = [
|
|||
path('nodes/<uuid:pk>/tasks/', api.NodeTaskCreateApi.as_view(), name='node-task-create'),
|
||||
|
||||
path('gateways/<uuid:pk>/test-connective/', api.GatewayTestConnectionApi.as_view(), name='test-gateway-connective'),
|
||||
path('platform-automation-methods/', api.PlatformAutomationMethodsApi.as_view(), name='platform-automation-methods'),
|
||||
path('platform-automation-methods/', api.PlatformAutomationMethodsApi.as_view(),
|
||||
name='platform-automation-methods'),
|
||||
]
|
||||
|
||||
urlpatterns += router.urls
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cd4fb6a0396c8636f8a36645354a5102790c020d73cdeb1f0e1d1f1b34ea39e9
|
||||
size 145760
|
||||
oid sha256:b0588a31da5eccf0c1408abb00126f3f5cff58c26c5995c1daf3d2d071d06abe
|
||||
size 146993
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-06-15 15:35+0800\n"
|
||||
"POT-Creation-Date: 2023-06-30 15:41+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"
|
||||
|
@ -87,7 +87,7 @@ msgstr "更新"
|
|||
#: accounts/const/account.py:27
|
||||
#: accounts/serializers/automations/change_secret.py:156 audits/const.py:54
|
||||
#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19
|
||||
#: ops/const.py:58 terminal/const.py:61 xpack/plugins/cloud/const.py:41
|
||||
#: ops/const.py:58 terminal/const.py:62 xpack/plugins/cloud/const.py:41
|
||||
msgid "Failed"
|
||||
msgstr "失敗しました"
|
||||
|
||||
|
@ -187,11 +187,11 @@ msgstr "作成のみ"
|
|||
#: accounts/serializers/automations/change_secret.py:112
|
||||
#: accounts/serializers/automations/change_secret.py:132
|
||||
#: acls/serializers/base.py:118 assets/models/asset/common.py:93
|
||||
#: assets/models/asset/common.py:332 assets/models/cmd_filter.py:36
|
||||
#: assets/models/asset/common.py:331 assets/models/cmd_filter.py:36
|
||||
#: assets/serializers/domain.py:19 assets/serializers/label.py:27
|
||||
#: audits/models.py:53 authentication/models/connection_token.py:35
|
||||
#: perms/models/asset_permission.py:64 perms/serializers/permission.py:34
|
||||
#: terminal/backends/command/models.py:20 terminal/models/session/session.py:32
|
||||
#: terminal/backends/command/models.py:20 terminal/models/session/session.py:31
|
||||
#: terminal/notifications.py:95 terminal/serializers/command.py:17
|
||||
#: tickets/models/ticket/apply_asset.py:16 xpack/plugins/cloud/models.py:212
|
||||
msgid "Asset"
|
||||
|
@ -225,7 +225,7 @@ msgstr "ソース ID"
|
|||
#: acls/serializers/base.py:119 assets/serializers/asset/common.py:125
|
||||
#: assets/serializers/gateway.py:28 audits/models.py:54 ops/models/base.py:18
|
||||
#: perms/models/asset_permission.py:70 perms/serializers/permission.py:39
|
||||
#: terminal/backends/command/models.py:21 terminal/models/session/session.py:34
|
||||
#: terminal/backends/command/models.py:21 terminal/models/session/session.py:33
|
||||
#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:85
|
||||
msgid "Account"
|
||||
msgstr "アカウント"
|
||||
|
@ -279,7 +279,7 @@ msgstr "アカウントバックアップ計画"
|
|||
#: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:192
|
||||
#: ops/templates/ops/celery_task_log.html:75
|
||||
#: perms/models/asset_permission.py:72 terminal/models/applet/host.py:137
|
||||
#: terminal/models/session/session.py:45
|
||||
#: terminal/models/session/session.py:44
|
||||
#: tickets/models/ticket/apply_application.py:30
|
||||
#: tickets/models/ticket/apply_asset.py:19
|
||||
msgid "Date start"
|
||||
|
@ -311,7 +311,7 @@ msgstr "理由"
|
|||
#: accounts/models/automations/backup_account.py:99
|
||||
#: accounts/serializers/automations/change_secret.py:111
|
||||
#: accounts/serializers/automations/change_secret.py:134
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:46
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:43
|
||||
msgid "Is success"
|
||||
msgstr "成功は"
|
||||
|
||||
|
@ -479,10 +479,10 @@ msgstr "アカウントの確認"
|
|||
#: applications/models.py:9 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:20 assets/models/label.py:18
|
||||
#: assets/models/group.py:17 assets/models/label.py:18
|
||||
#: assets/models/platform.py:13 assets/models/platform.py:81
|
||||
#: assets/serializers/asset/common.py:145 assets/serializers/platform.py:99
|
||||
#: assets/serializers/platform.py:199
|
||||
#: assets/serializers/asset/common.py:145 assets/serializers/platform.py:109
|
||||
#: assets/serializers/platform.py:209
|
||||
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
|
||||
#: ops/models/adhoc.py:21 ops/models/celery.py:15 ops/models/celery.py:57
|
||||
#: ops/models/job.py:92 ops/models/playbook.py:23 ops/serializers/job.py:20
|
||||
|
@ -505,7 +505,8 @@ msgstr "特権アカウント"
|
|||
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
|
||||
#: assets/models/label.py:22
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
#: terminal/models/applet/applet.py:39 users/serializers/user.py:169
|
||||
#: terminal/models/applet/applet.py:39
|
||||
#: terminal/models/component/endpoint.py:101 users/serializers/user.py:169
|
||||
msgid "Is active"
|
||||
msgstr "アクティブです。"
|
||||
|
||||
|
@ -561,7 +562,7 @@ msgstr "アカウントの存在ポリシー"
|
|||
#: accounts/serializers/account/account.py:180 applications/models.py:11
|
||||
#: assets/models/label.py:21 assets/models/platform.py:82
|
||||
#: assets/serializers/asset/common.py:121 assets/serializers/cagegory.py:8
|
||||
#: assets/serializers/platform.py:117 assets/serializers/platform.py:200
|
||||
#: assets/serializers/platform.py:127 assets/serializers/platform.py:210
|
||||
#: perms/serializers/user_permission.py:26 settings/models.py:35
|
||||
#: tickets/models/ticket/apply_application.py:13
|
||||
msgid "Category"
|
||||
|
@ -572,13 +573,13 @@ msgstr "カテゴリ"
|
|||
#: acls/serializers/command_acl.py:18 applications/models.py:14
|
||||
#: assets/models/_user.py:50 assets/models/automations/base.py:20
|
||||
#: assets/models/cmd_filter.py:74 assets/models/platform.py:83
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:101
|
||||
#: assets/serializers/platform.py:116 audits/serializers.py:48
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:111
|
||||
#: assets/serializers/platform.py:126 audits/serializers.py:48
|
||||
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:103
|
||||
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:38
|
||||
#: terminal/models/component/storage.py:57
|
||||
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
|
||||
#: terminal/serializers/session.py:23 terminal/serializers/storage.py:224
|
||||
#: terminal/serializers/session.py:20 terminal/serializers/storage.py:224
|
||||
#: terminal/serializers/storage.py:236 tickets/models/comment.py:26
|
||||
#: tickets/models/flow.py:56 tickets/models/ticket/apply_application.py:16
|
||||
#: tickets/models/ticket/general.py:275 tickets/serializers/flow.py:53
|
||||
|
@ -644,7 +645,7 @@ msgstr "ID"
|
|||
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:58
|
||||
#: perms/serializers/permission.py:30 rbac/builtin.py:122
|
||||
#: rbac/models/rolebinding.py:49 terminal/backends/command/models.py:19
|
||||
#: terminal/models/session/session.py:30 terminal/models/session/sharing.py:32
|
||||
#: terminal/models/session/session.py:29 terminal/models/session/sharing.py:32
|
||||
#: terminal/notifications.py:96 terminal/notifications.py:144
|
||||
#: terminal/serializers/command.py:16 tickets/models/comment.py:21
|
||||
#: users/const.py:14 users/models/user.py:947 users/models/user.py:978
|
||||
|
@ -688,9 +689,13 @@ msgstr "キーパスワード"
|
|||
msgid "Spec info"
|
||||
msgstr "特別情報"
|
||||
|
||||
#: accounts/serializers/account/base.py:81
|
||||
msgid "Tip: If no username is required for authentication, fill in `null`"
|
||||
msgstr "ヒント: 認証にユーザー名が必要ない場合は、null を入力してください"
|
||||
#: accounts/serializers/account/base.py:82
|
||||
msgid ""
|
||||
"Tip: If no username is required for authentication, fill in `null`, If AD "
|
||||
"account, like `username@domain`"
|
||||
msgstr ""
|
||||
"ヒント: 認証にユーザー名が必要ない場合は、`null`を入力します。ADアカウントの"
|
||||
"場合は、`username@domain`のようになります。"
|
||||
|
||||
#: accounts/serializers/automations/base.py:23
|
||||
#: assets/models/asset/common.py:155 assets/models/automations/base.py:18
|
||||
|
@ -729,7 +734,7 @@ msgstr "自動タスク実行履歴"
|
|||
#: accounts/serializers/automations/change_secret.py:155 audits/const.py:53
|
||||
#: audits/models.py:59 audits/signal_handlers/activity_log.py:33
|
||||
#: common/const/choices.py:18 ops/const.py:56 ops/serializers/celery.py:40
|
||||
#: terminal/const.py:60 terminal/models/session/sharing.py:107
|
||||
#: terminal/const.py:61 terminal/models/session/sharing.py:107
|
||||
#: tickets/views/approve.py:114
|
||||
msgid "Success"
|
||||
msgstr "成功"
|
||||
|
@ -825,8 +830,8 @@ msgid "Accounts"
|
|||
msgstr "アカウント"
|
||||
|
||||
#: acls/models/command_acl.py:16 assets/models/cmd_filter.py:60
|
||||
#: ops/serializers/job.py:55 terminal/const.py:68
|
||||
#: terminal/models/session/session.py:43 terminal/serializers/command.py:18
|
||||
#: ops/serializers/job.py:55 terminal/const.py:69
|
||||
#: terminal/models/session/session.py:42 terminal/serializers/command.py:18
|
||||
#: terminal/templates/terminal/_msg_command_alert.html:12
|
||||
#: terminal/templates/terminal/_msg_command_execute_alert.html:10
|
||||
msgid "Command"
|
||||
|
@ -964,13 +969,13 @@ msgstr "アプリケーション"
|
|||
msgid "Can match application"
|
||||
msgstr "アプリケーションを一致させることができます"
|
||||
|
||||
#: assets/api/asset/asset.py:149
|
||||
#: assets/api/asset/asset.py:153
|
||||
msgid "Cannot create asset directly, you should create a host or other"
|
||||
msgstr ""
|
||||
"資産を直接作成することはできません。ホストまたはその他を作成する必要がありま"
|
||||
"す"
|
||||
|
||||
#: assets/api/domain.py:60
|
||||
#: assets/api/domain.py:62
|
||||
msgid "Number required"
|
||||
msgstr "必要な数"
|
||||
|
||||
|
@ -1044,6 +1049,19 @@ msgstr "テストゲートウェイ"
|
|||
msgid "Gather facts"
|
||||
msgstr "資産情報の収集"
|
||||
|
||||
#: assets/const/base.py:33 audits/const.py:47
|
||||
#: terminal/serializers/applet_host.py:32
|
||||
msgid "Disabled"
|
||||
msgstr "無効"
|
||||
|
||||
#: assets/const/base.py:34 settings/serializers/basic.py:27
|
||||
msgid "Basic"
|
||||
msgstr "基本"
|
||||
|
||||
#: assets/const/base.py:35 assets/models/asset/web.py:13
|
||||
msgid "Script"
|
||||
msgstr "脚本"
|
||||
|
||||
#: assets/const/category.py:10 assets/models/asset/host.py:8
|
||||
#: settings/serializers/auth/radius.py:16 settings/serializers/auth/sms.py:67
|
||||
#: terminal/models/component/endpoint.py:13 terminal/serializers/applet.py:17
|
||||
|
@ -1106,28 +1124,65 @@ msgstr "ファイアウォール"
|
|||
msgid "Other"
|
||||
msgstr "その他"
|
||||
|
||||
#: assets/const/types.py:223
|
||||
#: assets/const/protocol.py:39
|
||||
msgid "SFTP enabled"
|
||||
msgstr "SFTP が有効"
|
||||
|
||||
#: assets/const/protocol.py:44
|
||||
msgid "SFTP home"
|
||||
msgstr "SFTP ルート パス"
|
||||
|
||||
#: assets/const/protocol.py:55
|
||||
msgid "Console"
|
||||
msgstr "Console"
|
||||
|
||||
#: assets/const/protocol.py:56
|
||||
msgid "Connect to console session"
|
||||
msgstr "コンソールセッションに接続"
|
||||
|
||||
#: assets/const/protocol.py:60
|
||||
msgid "Any"
|
||||
msgstr "任意"
|
||||
|
||||
#: assets/const/protocol.py:62 settings/serializers/security.py:151
|
||||
msgid "Security"
|
||||
msgstr "セキュリティ"
|
||||
|
||||
#: assets/const/protocol.py:63
|
||||
msgid "Security layer to use for the connection"
|
||||
msgstr "接続に使用するセキュリティ レイヤー"
|
||||
|
||||
#: assets/const/protocol.py:87 assets/models/asset/database.py:10
|
||||
#: settings/serializers/email.py:37
|
||||
msgid "Use SSL"
|
||||
msgstr "SSLの使用"
|
||||
|
||||
#: assets/const/protocol.py:140
|
||||
#, fuzzy
|
||||
#| msgid "Auth with username"
|
||||
msgid "Auth username"
|
||||
msgstr "ユーザー名で認証する"
|
||||
|
||||
#: assets/const/protocol.py:167 assets/models/asset/web.py:10
|
||||
msgid "Username selector"
|
||||
msgstr "ユーザー名ピッカー"
|
||||
|
||||
#: assets/const/protocol.py:172 assets/models/asset/web.py:11
|
||||
msgid "Password selector"
|
||||
msgstr "パスワードセレクター"
|
||||
|
||||
#: assets/const/protocol.py:177 assets/models/asset/web.py:12
|
||||
msgid "Submit selector"
|
||||
msgstr "ボタンセレクターを確認する"
|
||||
|
||||
#: assets/const/types.py:222
|
||||
msgid "All types"
|
||||
msgstr "いろんなタイプ"
|
||||
|
||||
#: assets/const/web.py:8
|
||||
#: assets/const/web.py:7
|
||||
msgid "Website"
|
||||
msgstr "Webサイト"
|
||||
|
||||
#: assets/const/web.py:59 audits/const.py:47
|
||||
#: terminal/serializers/applet_host.py:32
|
||||
msgid "Disabled"
|
||||
msgstr "無効"
|
||||
|
||||
#: assets/const/web.py:60 settings/serializers/basic.py:27
|
||||
msgid "Basic"
|
||||
msgstr "基本"
|
||||
|
||||
#: assets/const/web.py:61 assets/models/asset/web.py:13
|
||||
#: assets/serializers/platform.py:40
|
||||
msgid "Script"
|
||||
msgstr "脚本"
|
||||
|
||||
#: assets/exceptions.py:12
|
||||
msgid "This function is not supported temporarily"
|
||||
msgstr "この機能は一時的にサポートされていません"
|
||||
|
@ -1141,20 +1196,20 @@ msgid "SSH public key"
|
|||
msgstr "SSHパブリックキー"
|
||||
|
||||
#: assets/models/_user.py:27 assets/models/cmd_filter.py:40
|
||||
#: assets/models/cmd_filter.py:88 assets/models/group.py:23
|
||||
#: assets/models/cmd_filter.py:88 assets/models/group.py:20
|
||||
#: common/db/models.py:36 ops/models/adhoc.py:27 ops/models/job.py:111
|
||||
#: ops/models/playbook.py:26 rbac/models/role.py:37 settings/models.py:38
|
||||
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:244
|
||||
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:248
|
||||
#: terminal/models/applet/host.py:139 terminal/models/component/endpoint.py:24
|
||||
#: terminal/models/component/endpoint.py:100
|
||||
#: terminal/models/session/session.py:47 tickets/models/comment.py:32
|
||||
#: terminal/models/session/session.py:46 tickets/models/comment.py:32
|
||||
#: tickets/models/ticket/general.py:297 users/models/user.py:792
|
||||
#: xpack/plugins/cloud/models.py:35 xpack/plugins/cloud/models.py:111
|
||||
msgid "Comment"
|
||||
msgstr "コメント"
|
||||
|
||||
#: assets/models/_user.py:28 assets/models/automations/base.py:114
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:22
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:19
|
||||
#: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:191
|
||||
#: users/models/user.py:979
|
||||
msgid "Date created"
|
||||
|
@ -1166,7 +1221,7 @@ msgid "Date updated"
|
|||
msgstr "更新日"
|
||||
|
||||
#: assets/models/_user.py:30 assets/models/cmd_filter.py:44
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:21
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:18
|
||||
#: common/db/models.py:32 users/models/user.py:799
|
||||
#: users/serializers/group.py:29
|
||||
msgid "Created by"
|
||||
|
@ -1194,8 +1249,8 @@ msgstr "ユーザーと同じユーザー名"
|
|||
|
||||
#: assets/models/_user.py:52 authentication/models/connection_token.py:40
|
||||
#: authentication/serializers/connect_token_secret.py:111
|
||||
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:21
|
||||
#: terminal/serializers/session.py:42 terminal/serializers/storage.py:68
|
||||
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:18
|
||||
#: terminal/serializers/session.py:39 terminal/serializers/storage.py:68
|
||||
msgid "Protocol"
|
||||
msgstr "プロトコル"
|
||||
|
||||
|
@ -1283,19 +1338,19 @@ msgstr "資産ハードウェア情報の収集"
|
|||
msgid "Custom info"
|
||||
msgstr "カスタム属性"
|
||||
|
||||
#: assets/models/asset/common.py:335
|
||||
#: assets/models/asset/common.py:334
|
||||
msgid "Can refresh asset hardware info"
|
||||
msgstr "資産ハードウェア情報を更新できます"
|
||||
|
||||
#: assets/models/asset/common.py:336
|
||||
#: assets/models/asset/common.py:335
|
||||
msgid "Can test asset connectivity"
|
||||
msgstr "資産接続をテストできます"
|
||||
|
||||
#: assets/models/asset/common.py:337
|
||||
#: assets/models/asset/common.py:336
|
||||
msgid "Can match asset"
|
||||
msgstr "アセットを一致させることができます"
|
||||
|
||||
#: assets/models/asset/common.py:338
|
||||
#: assets/models/asset/common.py:337
|
||||
msgid "Can change asset nodes"
|
||||
msgstr "資産ノードを変更できます"
|
||||
|
||||
|
@ -1303,11 +1358,6 @@ msgstr "資産ノードを変更できます"
|
|||
msgid "Custom asset"
|
||||
msgstr "カスタム アセット"
|
||||
|
||||
#: assets/models/asset/database.py:10 assets/serializers/platform.py:45
|
||||
#: settings/serializers/email.py:37
|
||||
msgid "Use SSL"
|
||||
msgstr "SSLの使用"
|
||||
|
||||
#: assets/models/asset/database.py:11
|
||||
msgid "CA cert"
|
||||
msgstr "CA 証明書"
|
||||
|
@ -1325,22 +1375,9 @@ msgid "Allow invalid cert"
|
|||
msgstr "証明書チェックを無視"
|
||||
|
||||
#: assets/models/asset/web.py:9 assets/serializers/asset/info/spec.py:16
|
||||
#: assets/serializers/platform.py:30
|
||||
msgid "Autofill"
|
||||
msgstr "自動充填"
|
||||
|
||||
#: assets/models/asset/web.py:10 assets/serializers/platform.py:32
|
||||
msgid "Username selector"
|
||||
msgstr "ユーザー名ピッカー"
|
||||
|
||||
#: assets/models/asset/web.py:11 assets/serializers/platform.py:35
|
||||
msgid "Password selector"
|
||||
msgstr "パスワードセレクター"
|
||||
|
||||
#: assets/models/asset/web.py:12 assets/serializers/platform.py:38
|
||||
msgid "Submit selector"
|
||||
msgstr "ボタンセレクターを確認する"
|
||||
|
||||
#: assets/models/automations/base.py:22 ops/models/job.py:187
|
||||
#: settings/serializers/auth/sms.py:99
|
||||
msgid "Parameters"
|
||||
|
@ -1356,7 +1393,7 @@ msgstr "アセットの自動化タスク"
|
|||
|
||||
#: assets/models/automations/base.py:113 audits/models.py:199
|
||||
#: audits/serializers.py:49 ops/models/base.py:49 ops/models/job.py:184
|
||||
#: terminal/models/applet/applet.py:243 terminal/models/applet/host.py:136
|
||||
#: terminal/models/applet/applet.py:247 terminal/models/applet/host.py:136
|
||||
#: terminal/models/component/status.py:30 terminal/serializers/applet.py:18
|
||||
#: terminal/serializers/applet_host.py:107 tickets/models/ticket/general.py:283
|
||||
#: tickets/serializers/super_ticket.py:13
|
||||
|
@ -1419,17 +1456,17 @@ msgstr "お気に入りのアセット"
|
|||
msgid "Gateway"
|
||||
msgstr "ゲートウェイ"
|
||||
|
||||
#: assets/models/group.py:30
|
||||
#: assets/models/group.py:27
|
||||
msgid "Asset group"
|
||||
msgstr "資産グループ"
|
||||
|
||||
#: assets/models/group.py:34 assets/models/platform.py:17
|
||||
#: assets/serializers/platform.py:102
|
||||
#: assets/models/group.py:31 assets/models/platform.py:17
|
||||
#: assets/serializers/platform.py:112
|
||||
#: xpack/plugins/cloud/providers/nutanix.py:30
|
||||
msgid "Default"
|
||||
msgstr "デフォルト"
|
||||
|
||||
#: assets/models/group.py:34
|
||||
#: assets/models/group.py:31
|
||||
msgid "Default asset group"
|
||||
msgstr "デフォルトアセットグループ"
|
||||
|
||||
|
@ -1447,7 +1484,7 @@ msgstr "値"
|
|||
|
||||
#: assets/models/label.py:40 assets/serializers/asset/common.py:123
|
||||
#: assets/serializers/cagegory.py:6 assets/serializers/cagegory.py:13
|
||||
#: assets/serializers/platform.py:100
|
||||
#: assets/serializers/platform.py:110
|
||||
#: authentication/serializers/connect_token_secret.py:121
|
||||
#: common/serializers/common.py:85 perms/serializers/user_permission.py:28
|
||||
#: settings/serializers/sms.py:7
|
||||
|
@ -1495,7 +1532,8 @@ msgstr "必要"
|
|||
msgid "Public"
|
||||
msgstr "開ける"
|
||||
|
||||
#: assets/models/platform.py:19 settings/serializers/settings.py:67
|
||||
#: assets/models/platform.py:19 assets/serializers/platform.py:48
|
||||
#: settings/serializers/settings.py:67
|
||||
#: users/templates/users/reset_password.html:29
|
||||
msgid "Setting"
|
||||
msgstr "設定"
|
||||
|
@ -1509,11 +1547,11 @@ msgstr "有効化"
|
|||
msgid "Ansible config"
|
||||
msgstr "Ansible 構成"
|
||||
|
||||
#: assets/models/platform.py:34 assets/serializers/platform.py:63
|
||||
#: assets/models/platform.py:34 assets/serializers/platform.py:32
|
||||
msgid "Ping enabled"
|
||||
msgstr "アセット ディスカバリを有効にする"
|
||||
|
||||
#: assets/models/platform.py:35 assets/serializers/platform.py:64
|
||||
#: assets/models/platform.py:35 assets/serializers/platform.py:33
|
||||
msgid "Ping method"
|
||||
msgstr "資産検出方法"
|
||||
|
||||
|
@ -1522,12 +1560,12 @@ msgid "Ping params"
|
|||
msgstr "資産検出パラメータ"
|
||||
|
||||
#: assets/models/platform.py:38 assets/models/platform.py:62
|
||||
#: assets/serializers/platform.py:65
|
||||
#: assets/serializers/platform.py:34
|
||||
msgid "Gather facts enabled"
|
||||
msgstr "資産情報の収集を有効にする"
|
||||
|
||||
#: assets/models/platform.py:40 assets/models/platform.py:64
|
||||
#: assets/serializers/platform.py:66
|
||||
#: assets/serializers/platform.py:35
|
||||
msgid "Gather facts method"
|
||||
msgstr "情報収集の方法"
|
||||
|
||||
|
@ -1535,11 +1573,11 @@ msgstr "情報収集の方法"
|
|||
msgid "Gather facts params"
|
||||
msgstr "情報収集パラメータ"
|
||||
|
||||
#: assets/models/platform.py:44 assets/serializers/platform.py:69
|
||||
#: assets/models/platform.py:44 assets/serializers/platform.py:38
|
||||
msgid "Change secret enabled"
|
||||
msgstr "パスワードの変更が有効"
|
||||
|
||||
#: assets/models/platform.py:46 assets/serializers/platform.py:70
|
||||
#: assets/models/platform.py:46 assets/serializers/platform.py:39
|
||||
msgid "Change secret method"
|
||||
msgstr "パスワード変更モード"
|
||||
|
||||
|
@ -1547,11 +1585,11 @@ msgstr "パスワード変更モード"
|
|||
msgid "Change secret params"
|
||||
msgstr "パスワード変更パラメータ"
|
||||
|
||||
#: assets/models/platform.py:50 assets/serializers/platform.py:71
|
||||
#: assets/models/platform.py:50 assets/serializers/platform.py:40
|
||||
msgid "Push account enabled"
|
||||
msgstr "アカウントのプッシュを有効にする"
|
||||
|
||||
#: assets/models/platform.py:52 assets/serializers/platform.py:72
|
||||
#: assets/models/platform.py:52 assets/serializers/platform.py:41
|
||||
msgid "Push account method"
|
||||
msgstr "アカウントプッシュ方式"
|
||||
|
||||
|
@ -1559,11 +1597,11 @@ msgstr "アカウントプッシュ方式"
|
|||
msgid "Push account params"
|
||||
msgstr "アカウントプッシュパラメータ"
|
||||
|
||||
#: assets/models/platform.py:56 assets/serializers/platform.py:67
|
||||
#: assets/models/platform.py:56 assets/serializers/platform.py:36
|
||||
msgid "Verify account enabled"
|
||||
msgstr "アカウントの確認をオンにする"
|
||||
|
||||
#: assets/models/platform.py:58 assets/serializers/platform.py:68
|
||||
#: assets/models/platform.py:58 assets/serializers/platform.py:37
|
||||
msgid "Verify account method"
|
||||
msgstr "アカウント認証方法"
|
||||
|
||||
|
@ -1579,23 +1617,23 @@ msgstr "メタ"
|
|||
msgid "Internal"
|
||||
msgstr "ビルトイン"
|
||||
|
||||
#: assets/models/platform.py:89 assets/serializers/platform.py:115
|
||||
#: assets/models/platform.py:89 assets/serializers/platform.py:125
|
||||
msgid "Charset"
|
||||
msgstr "シャーセット"
|
||||
|
||||
#: assets/models/platform.py:91 assets/serializers/platform.py:143
|
||||
#: assets/models/platform.py:91 assets/serializers/platform.py:153
|
||||
msgid "Domain enabled"
|
||||
msgstr "ドメインを有効にする"
|
||||
|
||||
#: assets/models/platform.py:93 assets/serializers/platform.py:142
|
||||
#: assets/models/platform.py:93 assets/serializers/platform.py:152
|
||||
msgid "Su enabled"
|
||||
msgstr "アカウントの切り替えを有効にする"
|
||||
|
||||
#: assets/models/platform.py:94 assets/serializers/platform.py:121
|
||||
#: assets/models/platform.py:94 assets/serializers/platform.py:131
|
||||
msgid "Su method"
|
||||
msgstr "アカウントの切り替え方法"
|
||||
|
||||
#: assets/models/platform.py:95 assets/serializers/platform.py:124
|
||||
#: assets/models/platform.py:95 assets/serializers/platform.py:134
|
||||
msgid "Custom fields"
|
||||
msgstr "カスタムフィールド"
|
||||
|
||||
|
@ -1612,7 +1650,7 @@ msgstr ""
|
|||
"プラットフォームタイプがスキップされた資産に合致しない、資産内の一括更新プ"
|
||||
"ラットフォーム"
|
||||
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:118
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:128
|
||||
#: authentication/serializers/connect_token_secret.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:72
|
||||
#: perms/serializers/user_permission.py:25 xpack/plugins/cloud/models.py:99
|
||||
|
@ -1728,47 +1766,60 @@ msgstr "値"
|
|||
msgid "Can't contains: /"
|
||||
msgstr "含まれない:/"
|
||||
|
||||
#: assets/serializers/platform.py:26
|
||||
msgid "SFTP enabled"
|
||||
msgstr "SFTP が有効"
|
||||
|
||||
#: assets/serializers/platform.py:27
|
||||
msgid "SFTP home"
|
||||
msgstr "SFTP ルート パス"
|
||||
|
||||
#: assets/serializers/platform.py:42
|
||||
msgid "Auth with username"
|
||||
msgstr "ユーザー名で認証する"
|
||||
|
||||
#: assets/serializers/platform.py:73
|
||||
msgid "Gather accounts enabled"
|
||||
msgstr "アカウント収集を有効にする"
|
||||
|
||||
#: assets/serializers/platform.py:74
|
||||
#: assets/serializers/platform.py:43
|
||||
msgid "Gather accounts method"
|
||||
msgstr "アカウントの収集方法"
|
||||
|
||||
#: assets/serializers/platform.py:103
|
||||
#: assets/serializers/platform.py:60
|
||||
msgid ""
|
||||
"This protocol is primary, and it must be set when adding assets. "
|
||||
"Additionally, there can only be one primary protocol."
|
||||
msgstr ""
|
||||
"このプロトコルはプライマリであり、資産を追加するときに設定する必要がありま"
|
||||
"す。また、プライマリプロトコルは1つしかありません"
|
||||
|
||||
#: assets/serializers/platform.py:65
|
||||
msgid "This protocol is required, and it must be set when adding assets."
|
||||
msgstr "このプロトコルは必須であり、資産を追加するときに設定する必要があります"
|
||||
|
||||
#: assets/serializers/platform.py:68
|
||||
msgid ""
|
||||
"This protocol is default, when adding assets, it will be displayed by "
|
||||
"default."
|
||||
msgstr ""
|
||||
"このプロトコルはデフォルトです。資産を追加するときに、デフォルトで表示されま"
|
||||
"す"
|
||||
|
||||
#: assets/serializers/platform.py:71
|
||||
msgid "This protocol is public, asset will show this protocol to user"
|
||||
msgstr ""
|
||||
"このプロトコルは公開されており、資産はこのプロトコルをユーザーに表示します"
|
||||
|
||||
#: assets/serializers/platform.py:113
|
||||
msgid "Help text"
|
||||
msgstr "ヘルプ"
|
||||
|
||||
#: assets/serializers/platform.py:104
|
||||
#: assets/serializers/platform.py:114
|
||||
msgid "Choices"
|
||||
msgstr "せんたく"
|
||||
|
||||
#: assets/serializers/platform.py:119
|
||||
#: assets/serializers/platform.py:129
|
||||
msgid "Automation"
|
||||
msgstr "オートメーション"
|
||||
|
||||
#: assets/serializers/platform.py:144
|
||||
#: assets/serializers/platform.py:154
|
||||
msgid "Default Domain"
|
||||
msgstr "デフォルト ドメイン"
|
||||
|
||||
#: assets/serializers/platform.py:153
|
||||
#: assets/serializers/platform.py:163
|
||||
msgid "type is required"
|
||||
msgstr "タイプ このフィールドは必須です."
|
||||
|
||||
#: assets/serializers/platform.py:176
|
||||
#: assets/serializers/platform.py:186
|
||||
msgid "Protocols is required"
|
||||
msgstr "同意が必要です"
|
||||
|
||||
|
@ -1912,7 +1963,7 @@ msgstr "パスワードを変更する"
|
|||
|
||||
#: audits/const.py:35 settings/serializers/terminal.py:6
|
||||
#: terminal/models/applet/host.py:25 terminal/models/component/terminal.py:163
|
||||
#: terminal/serializers/session.py:49 terminal/serializers/session.py:58
|
||||
#: terminal/serializers/session.py:46 terminal/serializers/session.py:55
|
||||
msgid "Terminal"
|
||||
msgstr "ターミナル"
|
||||
|
||||
|
@ -1950,7 +2001,7 @@ msgid "Job audit log"
|
|||
msgstr "ジョブ監査ログ"
|
||||
|
||||
#: audits/models.py:51 audits/models.py:95 audits/models.py:166
|
||||
#: terminal/models/session/session.py:39 terminal/models/session/sharing.py:99
|
||||
#: terminal/models/session/session.py:38 terminal/models/session/sharing.py:99
|
||||
msgid "Remote addr"
|
||||
msgstr "リモートaddr"
|
||||
|
||||
|
@ -2090,14 +2141,14 @@ msgid "Auth Token"
|
|||
msgstr "認証トークン"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:31 authentication/notifications.py:73
|
||||
#: authentication/views/login.py:74 authentication/views/wecom.py:159
|
||||
#: authentication/views/login.py:75 authentication/views/wecom.py:159
|
||||
#: notifications/backends/__init__.py:11 settings/serializers/auth/wecom.py:10
|
||||
#: users/models/user.py:706 users/models/user.py:814
|
||||
msgid "WeCom"
|
||||
msgstr "企業微信"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:32 authentication/views/feishu.py:123
|
||||
#: authentication/views/login.py:86 notifications/backends/__init__.py:14
|
||||
#: authentication/views/login.py:87 notifications/backends/__init__.py:14
|
||||
#: settings/serializers/auth/feishu.py:10
|
||||
#: settings/serializers/auth/feishu.py:13 users/models/user.py:708
|
||||
#: users/models/user.py:816
|
||||
|
@ -2105,7 +2156,7 @@ msgid "FeiShu"
|
|||
msgstr "本を飛ばす"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:33 authentication/views/dingtalk.py:160
|
||||
#: authentication/views/login.py:80 notifications/backends/__init__.py:12
|
||||
#: authentication/views/login.py:81 notifications/backends/__init__.py:12
|
||||
#: settings/serializers/auth/dingtalk.py:10 users/models/user.py:707
|
||||
#: users/models/user.py:815
|
||||
msgid "DingTalk"
|
||||
|
@ -2981,23 +3032,23 @@ msgstr "本を飛ばすのバインドに成功"
|
|||
msgid "Failed to get user from FeiShu"
|
||||
msgstr "本を飛ばすからユーザーを取得できませんでした"
|
||||
|
||||
#: authentication/views/login.py:182
|
||||
#: authentication/views/login.py:183
|
||||
msgid "Redirecting"
|
||||
msgstr "リダイレクト"
|
||||
|
||||
#: authentication/views/login.py:183
|
||||
#: authentication/views/login.py:184
|
||||
msgid "Redirecting to {} authentication"
|
||||
msgstr "{} 認証へのリダイレクト"
|
||||
|
||||
#: authentication/views/login.py:206
|
||||
msgid "Please enable cookies and try again."
|
||||
msgstr "クッキーを有効にして、もう一度お試しください。"
|
||||
#: authentication/views/login.py:207
|
||||
msgid "Login timeout, please try again."
|
||||
msgstr "ログインタイムアウト、もう一度お試しください"
|
||||
|
||||
#: authentication/views/login.py:247
|
||||
#: authentication/views/login.py:250
|
||||
msgid "User email already exists ({})"
|
||||
msgstr "ユーザー メールボックスは既に存在します ({})"
|
||||
|
||||
#: authentication/views/login.py:325
|
||||
#: authentication/views/login.py:328
|
||||
msgid ""
|
||||
"Wait for <b>{}</b> confirm, You also can copy link to her/him <br/>\n"
|
||||
" Don't close this page"
|
||||
|
@ -3005,15 +3056,15 @@ msgstr ""
|
|||
"<b>{}</b> 確認を待ちます。彼女/彼へのリンクをコピーすることもできます <br/>\n"
|
||||
" このページを閉じないでください"
|
||||
|
||||
#: authentication/views/login.py:330
|
||||
#: authentication/views/login.py:333
|
||||
msgid "No ticket found"
|
||||
msgstr "チケットが見つかりません"
|
||||
|
||||
#: authentication/views/login.py:366
|
||||
#: authentication/views/login.py:369
|
||||
msgid "Logout success"
|
||||
msgstr "ログアウト成功"
|
||||
|
||||
#: authentication/views/login.py:367
|
||||
#: authentication/views/login.py:370
|
||||
msgid "Logout success, return login page"
|
||||
msgstr "ログアウト成功、ログインページを返す"
|
||||
|
||||
|
@ -3061,7 +3112,7 @@ msgstr "タイミングトリガー"
|
|||
msgid "Ready"
|
||||
msgstr "の準備を"
|
||||
|
||||
#: common/const/choices.py:16 terminal/const.py:59 tickets/const.py:29
|
||||
#: common/const/choices.py:16 terminal/const.py:60 tickets/const.py:29
|
||||
#: tickets/const.py:39
|
||||
msgid "Pending"
|
||||
msgstr "未定"
|
||||
|
@ -3702,7 +3753,7 @@ msgstr "保存後に実行"
|
|||
msgid "Job type"
|
||||
msgstr "タスクの種類"
|
||||
|
||||
#: ops/serializers/job.py:57 terminal/serializers/session.py:50
|
||||
#: ops/serializers/job.py:57 terminal/serializers/session.py:47
|
||||
msgid "Is finished"
|
||||
msgstr "終了しました"
|
||||
|
||||
|
@ -4118,7 +4169,7 @@ msgid "My assets"
|
|||
msgstr "私の資産"
|
||||
|
||||
#: rbac/tree.py:56 terminal/models/applet/applet.py:51
|
||||
#: terminal/models/applet/applet.py:240 terminal/models/applet/host.py:28
|
||||
#: terminal/models/applet/applet.py:244 terminal/models/applet/host.py:28
|
||||
#: terminal/serializers/applet.py:15
|
||||
msgid "Applet"
|
||||
msgstr "リモートアプリケーション"
|
||||
|
@ -4148,23 +4199,23 @@ msgstr "テストの成功"
|
|||
msgid "Test mail sent to {}, please check"
|
||||
msgstr "{}に送信されたテストメールを確認してください"
|
||||
|
||||
#: settings/api/ldap.py:173
|
||||
#: settings/api/ldap.py:176
|
||||
msgid "Synchronization start, please wait."
|
||||
msgstr "同期開始、お待ちください。"
|
||||
|
||||
#: settings/api/ldap.py:177
|
||||
#: settings/api/ldap.py:180
|
||||
msgid "Synchronization is running, please wait."
|
||||
msgstr "同期が実行中です。しばらくお待ちください。"
|
||||
|
||||
#: settings/api/ldap.py:182
|
||||
#: settings/api/ldap.py:185
|
||||
msgid "Synchronization error: {}"
|
||||
msgstr "同期エラー: {}"
|
||||
|
||||
#: settings/api/ldap.py:220
|
||||
#: settings/api/ldap.py:223
|
||||
msgid "Get ldap users is None"
|
||||
msgstr "Ldapユーザーを取得するにはNone"
|
||||
|
||||
#: settings/api/ldap.py:230
|
||||
#: settings/api/ldap.py:233
|
||||
msgid "Imported {} users successfully (Organization: {})"
|
||||
msgstr "{} 人のユーザーを正常にインポートしました (組織: {})"
|
||||
|
||||
|
@ -5078,10 +5129,6 @@ msgstr "ログインcaptchaの有効化"
|
|||
msgid "Enable captcha to prevent robot authentication"
|
||||
msgstr "Captchaを有効にしてロボット認証を防止する"
|
||||
|
||||
#: settings/serializers/security.py:151
|
||||
msgid "Security"
|
||||
msgstr "セキュリティ"
|
||||
|
||||
#: settings/serializers/security.py:154
|
||||
msgid "Enable terminal register"
|
||||
msgstr "ターミナルレジスタの有効化"
|
||||
|
@ -5640,7 +5687,7 @@ msgstr "クリティカル"
|
|||
msgid "High"
|
||||
msgstr "高い"
|
||||
|
||||
#: terminal/const.py:32 terminal/const.py:66
|
||||
#: terminal/const.py:32 terminal/const.py:67
|
||||
#: users/templates/users/reset_password.html:50
|
||||
msgid "Normal"
|
||||
msgstr "正常"
|
||||
|
@ -5649,19 +5696,19 @@ msgstr "正常"
|
|||
msgid "Offline"
|
||||
msgstr "オフライン"
|
||||
|
||||
#: terminal/const.py:62
|
||||
#: terminal/const.py:63
|
||||
msgid "Mismatch"
|
||||
msgstr "一致しない"
|
||||
|
||||
#: terminal/const.py:67
|
||||
#: terminal/const.py:68
|
||||
msgid "Tunnel"
|
||||
msgstr ""
|
||||
|
||||
#: terminal/const.py:72
|
||||
#: terminal/const.py:73
|
||||
msgid "Read Only"
|
||||
msgstr "読み取り専用"
|
||||
|
||||
#: terminal/const.py:73
|
||||
#: terminal/const.py:74
|
||||
msgid "Writable"
|
||||
msgstr "書き込み可能"
|
||||
|
||||
|
@ -5717,7 +5764,7 @@ msgstr "カスタムプラットフォームのみをサポート"
|
|||
msgid "Missing type in platform.yml"
|
||||
msgstr "platform.ymlにタイプがありません"
|
||||
|
||||
#: terminal/models/applet/applet.py:242 terminal/models/applet/host.py:34
|
||||
#: terminal/models/applet/applet.py:246 terminal/models/applet/host.py:34
|
||||
#: terminal/models/applet/host.py:134
|
||||
msgid "Hosting"
|
||||
msgstr "ホスト マシン"
|
||||
|
@ -5786,7 +5833,7 @@ msgstr "エンドポイント"
|
|||
msgid "IP group"
|
||||
msgstr "IP グループ"
|
||||
|
||||
#: terminal/models/component/endpoint.py:103
|
||||
#: terminal/models/component/endpoint.py:104
|
||||
msgid "Endpoint rule"
|
||||
msgstr "エンドポイントルール"
|
||||
|
||||
|
@ -5864,39 +5911,39 @@ msgstr "セッションのリプレイをアップロードできます"
|
|||
msgid "Can download session replay"
|
||||
msgstr "セッション再生をダウンロードできます"
|
||||
|
||||
#: terminal/models/session/session.py:35
|
||||
#: terminal/models/session/session.py:34
|
||||
msgid "Account id"
|
||||
msgstr "アカウント ID"
|
||||
|
||||
#: terminal/models/session/session.py:37 terminal/models/session/sharing.py:104
|
||||
#: terminal/models/session/session.py:36 terminal/models/session/sharing.py:104
|
||||
msgid "Login from"
|
||||
msgstr "ログイン元"
|
||||
|
||||
#: terminal/models/session/session.py:42
|
||||
#: terminal/models/session/session.py:41
|
||||
msgid "Replay"
|
||||
msgstr "リプレイ"
|
||||
|
||||
#: terminal/models/session/session.py:46
|
||||
#: terminal/models/session/session.py:45
|
||||
msgid "Date end"
|
||||
msgstr "終了日"
|
||||
|
||||
#: terminal/models/session/session.py:243
|
||||
#: terminal/models/session/session.py:240
|
||||
msgid "Session record"
|
||||
msgstr "セッション記録"
|
||||
|
||||
#: terminal/models/session/session.py:245
|
||||
#: terminal/models/session/session.py:242
|
||||
msgid "Can monitor session"
|
||||
msgstr "セッションを監視できます"
|
||||
|
||||
#: terminal/models/session/session.py:246
|
||||
#: terminal/models/session/session.py:243
|
||||
msgid "Can share session"
|
||||
msgstr "セッションを共有できます"
|
||||
|
||||
#: terminal/models/session/session.py:247
|
||||
#: terminal/models/session/session.py:244
|
||||
msgid "Can terminate session"
|
||||
msgstr "セッションを終了できます"
|
||||
|
||||
#: terminal/models/session/session.py:248
|
||||
#: terminal/models/session/session.py:245
|
||||
msgid "Can validate session action perm"
|
||||
msgstr "セッションアクションのパーマを検証できます"
|
||||
|
||||
|
@ -6104,35 +6151,35 @@ msgstr ""
|
|||
msgid "Asset IP"
|
||||
msgstr "資産 IP"
|
||||
|
||||
#: terminal/serializers/session.py:25 terminal/serializers/session.py:47
|
||||
#: terminal/serializers/session.py:22 terminal/serializers/session.py:44
|
||||
msgid "Can replay"
|
||||
msgstr "再生できます"
|
||||
|
||||
#: terminal/serializers/session.py:26 terminal/serializers/session.py:48
|
||||
#: terminal/serializers/session.py:23 terminal/serializers/session.py:45
|
||||
msgid "Can join"
|
||||
msgstr "参加できます"
|
||||
|
||||
#: terminal/serializers/session.py:27 terminal/serializers/session.py:51
|
||||
#: terminal/serializers/session.py:24 terminal/serializers/session.py:48
|
||||
msgid "Can terminate"
|
||||
msgstr "終了できます"
|
||||
|
||||
#: terminal/serializers/session.py:43
|
||||
#: terminal/serializers/session.py:40
|
||||
msgid "User ID"
|
||||
msgstr "ユーザーID"
|
||||
|
||||
#: terminal/serializers/session.py:44
|
||||
#: terminal/serializers/session.py:41
|
||||
msgid "Asset ID"
|
||||
msgstr "資産ID"
|
||||
|
||||
#: terminal/serializers/session.py:45
|
||||
#: terminal/serializers/session.py:42
|
||||
msgid "Login from display"
|
||||
msgstr "表示からのログイン"
|
||||
|
||||
#: terminal/serializers/session.py:52
|
||||
#: terminal/serializers/session.py:49
|
||||
msgid "Terminal display"
|
||||
msgstr "ターミナルディスプレイ"
|
||||
|
||||
#: terminal/serializers/session.py:57
|
||||
#: terminal/serializers/session.py:54
|
||||
msgid "Command amount"
|
||||
msgstr "コマンド量"
|
||||
|
||||
|
@ -6447,11 +6494,11 @@ msgstr "承認ステップ"
|
|||
msgid "Relation snapshot"
|
||||
msgstr "製造オーダスナップショット"
|
||||
|
||||
#: tickets/models/ticket/general.py:392
|
||||
#: tickets/models/ticket/general.py:398
|
||||
msgid "Please try again"
|
||||
msgstr "もう一度お試しください"
|
||||
|
||||
#: tickets/models/ticket/general.py:461
|
||||
#: tickets/models/ticket/general.py:467
|
||||
msgid "Super ticket"
|
||||
msgstr "スーパーチケット"
|
||||
|
||||
|
@ -7726,3 +7773,6 @@ msgstr "究極のエディション"
|
|||
#: xpack/plugins/license/models.py:86
|
||||
msgid "Community edition"
|
||||
msgstr "コミュニティ版"
|
||||
|
||||
#~ msgid "Please enable cookies and try again."
|
||||
#~ msgstr "クッキーを有効にして、もう一度お試しください。"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0efb248e80873f34d20f0fc3d4dd5c5a346048cb683c2b6bda3df939697fc52c
|
||||
size 119261
|
||||
oid sha256:6cedb6d13bc42a5621b60813fb4db0c094a343568eb3f5678566cbbe7f763228
|
||||
size 120269
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: JumpServer 0.3.3\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-06-15 15:35+0800\n"
|
||||
"POT-Creation-Date: 2023-06-30 15:41+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"
|
||||
|
@ -86,7 +86,7 @@ msgstr "更新"
|
|||
#: accounts/const/account.py:27
|
||||
#: accounts/serializers/automations/change_secret.py:156 audits/const.py:54
|
||||
#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19
|
||||
#: ops/const.py:58 terminal/const.py:61 xpack/plugins/cloud/const.py:41
|
||||
#: ops/const.py:58 terminal/const.py:62 xpack/plugins/cloud/const.py:41
|
||||
msgid "Failed"
|
||||
msgstr "失败"
|
||||
|
||||
|
@ -186,11 +186,11 @@ msgstr "仅创建"
|
|||
#: accounts/serializers/automations/change_secret.py:112
|
||||
#: accounts/serializers/automations/change_secret.py:132
|
||||
#: acls/serializers/base.py:118 assets/models/asset/common.py:93
|
||||
#: assets/models/asset/common.py:332 assets/models/cmd_filter.py:36
|
||||
#: assets/models/asset/common.py:331 assets/models/cmd_filter.py:36
|
||||
#: assets/serializers/domain.py:19 assets/serializers/label.py:27
|
||||
#: audits/models.py:53 authentication/models/connection_token.py:35
|
||||
#: perms/models/asset_permission.py:64 perms/serializers/permission.py:34
|
||||
#: terminal/backends/command/models.py:20 terminal/models/session/session.py:32
|
||||
#: terminal/backends/command/models.py:20 terminal/models/session/session.py:31
|
||||
#: terminal/notifications.py:95 terminal/serializers/command.py:17
|
||||
#: tickets/models/ticket/apply_asset.py:16 xpack/plugins/cloud/models.py:212
|
||||
msgid "Asset"
|
||||
|
@ -224,7 +224,7 @@ msgstr "来源 ID"
|
|||
#: acls/serializers/base.py:119 assets/serializers/asset/common.py:125
|
||||
#: assets/serializers/gateway.py:28 audits/models.py:54 ops/models/base.py:18
|
||||
#: perms/models/asset_permission.py:70 perms/serializers/permission.py:39
|
||||
#: terminal/backends/command/models.py:21 terminal/models/session/session.py:34
|
||||
#: terminal/backends/command/models.py:21 terminal/models/session/session.py:33
|
||||
#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:85
|
||||
msgid "Account"
|
||||
msgstr "账号"
|
||||
|
@ -278,7 +278,7 @@ msgstr "账号备份计划"
|
|||
#: ops/models/base.py:55 ops/models/celery.py:63 ops/models/job.py:192
|
||||
#: ops/templates/ops/celery_task_log.html:75
|
||||
#: perms/models/asset_permission.py:72 terminal/models/applet/host.py:137
|
||||
#: terminal/models/session/session.py:45
|
||||
#: terminal/models/session/session.py:44
|
||||
#: tickets/models/ticket/apply_application.py:30
|
||||
#: tickets/models/ticket/apply_asset.py:19
|
||||
msgid "Date start"
|
||||
|
@ -310,7 +310,7 @@ msgstr "原因"
|
|||
#: accounts/models/automations/backup_account.py:99
|
||||
#: accounts/serializers/automations/change_secret.py:111
|
||||
#: accounts/serializers/automations/change_secret.py:134
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:46
|
||||
#: ops/serializers/job.py:56 terminal/serializers/session.py:43
|
||||
msgid "Is success"
|
||||
msgstr "是否成功"
|
||||
|
||||
|
@ -478,10 +478,10 @@ msgstr "账号验证"
|
|||
#: applications/models.py:9 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:20 assets/models/label.py:18
|
||||
#: assets/models/group.py:17 assets/models/label.py:18
|
||||
#: assets/models/platform.py:13 assets/models/platform.py:81
|
||||
#: assets/serializers/asset/common.py:145 assets/serializers/platform.py:99
|
||||
#: assets/serializers/platform.py:199
|
||||
#: assets/serializers/asset/common.py:145 assets/serializers/platform.py:109
|
||||
#: assets/serializers/platform.py:209
|
||||
#: authentication/serializers/connect_token_secret.py:110 ops/mixin.py:21
|
||||
#: ops/models/adhoc.py:21 ops/models/celery.py:15 ops/models/celery.py:57
|
||||
#: ops/models/job.py:92 ops/models/playbook.py:23 ops/serializers/job.py:20
|
||||
|
@ -504,7 +504,8 @@ msgstr "特权账号"
|
|||
#: assets/models/automations/base.py:21 assets/models/cmd_filter.py:39
|
||||
#: assets/models/label.py:22
|
||||
#: authentication/serializers/connect_token_secret.py:114
|
||||
#: terminal/models/applet/applet.py:39 users/serializers/user.py:169
|
||||
#: terminal/models/applet/applet.py:39
|
||||
#: terminal/models/component/endpoint.py:101 users/serializers/user.py:169
|
||||
msgid "Is active"
|
||||
msgstr "激活"
|
||||
|
||||
|
@ -557,7 +558,7 @@ msgstr "账号存在策略"
|
|||
#: accounts/serializers/account/account.py:180 applications/models.py:11
|
||||
#: assets/models/label.py:21 assets/models/platform.py:82
|
||||
#: assets/serializers/asset/common.py:121 assets/serializers/cagegory.py:8
|
||||
#: assets/serializers/platform.py:117 assets/serializers/platform.py:200
|
||||
#: assets/serializers/platform.py:127 assets/serializers/platform.py:210
|
||||
#: perms/serializers/user_permission.py:26 settings/models.py:35
|
||||
#: tickets/models/ticket/apply_application.py:13
|
||||
msgid "Category"
|
||||
|
@ -568,13 +569,13 @@ msgstr "类别"
|
|||
#: acls/serializers/command_acl.py:18 applications/models.py:14
|
||||
#: assets/models/_user.py:50 assets/models/automations/base.py:20
|
||||
#: assets/models/cmd_filter.py:74 assets/models/platform.py:83
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:101
|
||||
#: assets/serializers/platform.py:116 audits/serializers.py:48
|
||||
#: assets/serializers/asset/common.py:122 assets/serializers/platform.py:111
|
||||
#: assets/serializers/platform.py:126 audits/serializers.py:48
|
||||
#: authentication/serializers/connect_token_secret.py:123 ops/models/job.py:103
|
||||
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:38
|
||||
#: terminal/models/component/storage.py:57
|
||||
#: terminal/models/component/storage.py:146 terminal/serializers/applet.py:29
|
||||
#: terminal/serializers/session.py:23 terminal/serializers/storage.py:224
|
||||
#: terminal/serializers/session.py:20 terminal/serializers/storage.py:224
|
||||
#: terminal/serializers/storage.py:236 tickets/models/comment.py:26
|
||||
#: tickets/models/flow.py:56 tickets/models/ticket/apply_application.py:16
|
||||
#: tickets/models/ticket/general.py:275 tickets/serializers/flow.py:53
|
||||
|
@ -640,7 +641,7 @@ msgstr "ID"
|
|||
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:58
|
||||
#: perms/serializers/permission.py:30 rbac/builtin.py:122
|
||||
#: rbac/models/rolebinding.py:49 terminal/backends/command/models.py:19
|
||||
#: terminal/models/session/session.py:30 terminal/models/session/sharing.py:32
|
||||
#: terminal/models/session/session.py:29 terminal/models/session/sharing.py:32
|
||||
#: terminal/notifications.py:96 terminal/notifications.py:144
|
||||
#: terminal/serializers/command.py:16 tickets/models/comment.py:21
|
||||
#: users/const.py:14 users/models/user.py:947 users/models/user.py:978
|
||||
|
@ -684,9 +685,13 @@ msgstr "密钥密码"
|
|||
msgid "Spec info"
|
||||
msgstr "特殊信息"
|
||||
|
||||
#: accounts/serializers/account/base.py:81
|
||||
msgid "Tip: If no username is required for authentication, fill in `null`"
|
||||
msgstr "提示: 如果认证时不需要用户名,可填写为 null"
|
||||
#: accounts/serializers/account/base.py:82
|
||||
msgid ""
|
||||
"Tip: If no username is required for authentication, fill in `null`, If AD "
|
||||
"account, like `username@domain`"
|
||||
msgstr ""
|
||||
"提示: 如果认证时不需要用户名,可填写为 null, 如果是 AD 账号,格式为 "
|
||||
"username@domain"
|
||||
|
||||
#: accounts/serializers/automations/base.py:23
|
||||
#: assets/models/asset/common.py:155 assets/models/automations/base.py:18
|
||||
|
@ -725,7 +730,7 @@ msgstr "自动化任务执行历史"
|
|||
#: accounts/serializers/automations/change_secret.py:155 audits/const.py:53
|
||||
#: audits/models.py:59 audits/signal_handlers/activity_log.py:33
|
||||
#: common/const/choices.py:18 ops/const.py:56 ops/serializers/celery.py:40
|
||||
#: terminal/const.py:60 terminal/models/session/sharing.py:107
|
||||
#: terminal/const.py:61 terminal/models/session/sharing.py:107
|
||||
#: tickets/views/approve.py:114
|
||||
msgid "Success"
|
||||
msgstr "成功"
|
||||
|
@ -821,8 +826,8 @@ msgid "Accounts"
|
|||
msgstr "账号管理"
|
||||
|
||||
#: acls/models/command_acl.py:16 assets/models/cmd_filter.py:60
|
||||
#: ops/serializers/job.py:55 terminal/const.py:68
|
||||
#: terminal/models/session/session.py:43 terminal/serializers/command.py:18
|
||||
#: ops/serializers/job.py:55 terminal/const.py:69
|
||||
#: terminal/models/session/session.py:42 terminal/serializers/command.py:18
|
||||
#: terminal/templates/terminal/_msg_command_alert.html:12
|
||||
#: terminal/templates/terminal/_msg_command_execute_alert.html:10
|
||||
msgid "Command"
|
||||
|
@ -959,11 +964,11 @@ msgstr "应用程序"
|
|||
msgid "Can match application"
|
||||
msgstr "匹配应用"
|
||||
|
||||
#: assets/api/asset/asset.py:149
|
||||
#: assets/api/asset/asset.py:153
|
||||
msgid "Cannot create asset directly, you should create a host or other"
|
||||
msgstr "不能直接创建资产, 你应该创建主机或其他资产"
|
||||
|
||||
#: assets/api/domain.py:60
|
||||
#: assets/api/domain.py:62
|
||||
msgid "Number required"
|
||||
msgstr "需要为数字"
|
||||
|
||||
|
@ -1037,6 +1042,19 @@ msgstr "测试网关"
|
|||
msgid "Gather facts"
|
||||
msgstr "收集资产信息"
|
||||
|
||||
#: assets/const/base.py:33 audits/const.py:47
|
||||
#: terminal/serializers/applet_host.py:32
|
||||
msgid "Disabled"
|
||||
msgstr "禁用"
|
||||
|
||||
#: assets/const/base.py:34 settings/serializers/basic.py:27
|
||||
msgid "Basic"
|
||||
msgstr "基本"
|
||||
|
||||
#: assets/const/base.py:35 assets/models/asset/web.py:13
|
||||
msgid "Script"
|
||||
msgstr "脚本"
|
||||
|
||||
#: assets/const/category.py:10 assets/models/asset/host.py:8
|
||||
#: settings/serializers/auth/radius.py:16 settings/serializers/auth/sms.py:67
|
||||
#: terminal/models/component/endpoint.py:13 terminal/serializers/applet.py:17
|
||||
|
@ -1099,28 +1117,63 @@ msgstr "防火墙"
|
|||
msgid "Other"
|
||||
msgstr "其它"
|
||||
|
||||
#: assets/const/types.py:223
|
||||
#: assets/const/protocol.py:39
|
||||
msgid "SFTP enabled"
|
||||
msgstr "SFTP 已启用"
|
||||
|
||||
#: assets/const/protocol.py:44
|
||||
msgid "SFTP home"
|
||||
msgstr "SFTP 根路径"
|
||||
|
||||
#: assets/const/protocol.py:55
|
||||
msgid "Console"
|
||||
msgstr "控制台"
|
||||
|
||||
#: assets/const/protocol.py:56
|
||||
msgid "Connect to console session"
|
||||
msgstr "连接到控制台会话"
|
||||
|
||||
#: assets/const/protocol.py:60
|
||||
msgid "Any"
|
||||
msgstr "任意"
|
||||
|
||||
#: assets/const/protocol.py:62 settings/serializers/security.py:151
|
||||
msgid "Security"
|
||||
msgstr "安全"
|
||||
|
||||
#: assets/const/protocol.py:63
|
||||
msgid "Security layer to use for the connection"
|
||||
msgstr "连接 RDP 使用的安全层"
|
||||
|
||||
#: assets/const/protocol.py:87 assets/models/asset/database.py:10
|
||||
#: settings/serializers/email.py:37
|
||||
msgid "Use SSL"
|
||||
msgstr "使用 SSL"
|
||||
|
||||
#: assets/const/protocol.py:140
|
||||
msgid "Auth username"
|
||||
msgstr "使用用户名认证"
|
||||
|
||||
#: assets/const/protocol.py:167 assets/models/asset/web.py:10
|
||||
msgid "Username selector"
|
||||
msgstr "用户名选择器"
|
||||
|
||||
#: assets/const/protocol.py:172 assets/models/asset/web.py:11
|
||||
msgid "Password selector"
|
||||
msgstr "密码选择器"
|
||||
|
||||
#: assets/const/protocol.py:177 assets/models/asset/web.py:12
|
||||
msgid "Submit selector"
|
||||
msgstr "确认按钮选择器"
|
||||
|
||||
#: assets/const/types.py:222
|
||||
msgid "All types"
|
||||
msgstr "所有类型"
|
||||
|
||||
#: assets/const/web.py:8
|
||||
#: assets/const/web.py:7
|
||||
msgid "Website"
|
||||
msgstr "网站"
|
||||
|
||||
#: assets/const/web.py:59 audits/const.py:47
|
||||
#: terminal/serializers/applet_host.py:32
|
||||
msgid "Disabled"
|
||||
msgstr "禁用"
|
||||
|
||||
#: assets/const/web.py:60 settings/serializers/basic.py:27
|
||||
msgid "Basic"
|
||||
msgstr "基本"
|
||||
|
||||
#: assets/const/web.py:61 assets/models/asset/web.py:13
|
||||
#: assets/serializers/platform.py:40
|
||||
msgid "Script"
|
||||
msgstr "脚本"
|
||||
|
||||
#: assets/exceptions.py:12
|
||||
msgid "This function is not supported temporarily"
|
||||
msgstr "暂时不支持此功能"
|
||||
|
@ -1134,20 +1187,20 @@ msgid "SSH public key"
|
|||
msgstr "SSH公钥"
|
||||
|
||||
#: assets/models/_user.py:27 assets/models/cmd_filter.py:40
|
||||
#: assets/models/cmd_filter.py:88 assets/models/group.py:23
|
||||
#: assets/models/cmd_filter.py:88 assets/models/group.py:20
|
||||
#: common/db/models.py:36 ops/models/adhoc.py:27 ops/models/job.py:111
|
||||
#: ops/models/playbook.py:26 rbac/models/role.py:37 settings/models.py:38
|
||||
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:244
|
||||
#: terminal/models/applet/applet.py:44 terminal/models/applet/applet.py:248
|
||||
#: terminal/models/applet/host.py:139 terminal/models/component/endpoint.py:24
|
||||
#: terminal/models/component/endpoint.py:100
|
||||
#: terminal/models/session/session.py:47 tickets/models/comment.py:32
|
||||
#: terminal/models/session/session.py:46 tickets/models/comment.py:32
|
||||
#: tickets/models/ticket/general.py:297 users/models/user.py:792
|
||||
#: xpack/plugins/cloud/models.py:35 xpack/plugins/cloud/models.py:111
|
||||
msgid "Comment"
|
||||
msgstr "备注"
|
||||
|
||||
#: assets/models/_user.py:28 assets/models/automations/base.py:114
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:22
|
||||
#: assets/models/cmd_filter.py:41 assets/models/group.py:19
|
||||
#: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:191
|
||||
#: users/models/user.py:979
|
||||
msgid "Date created"
|
||||
|
@ -1159,7 +1212,7 @@ msgid "Date updated"
|
|||
msgstr "更新日期"
|
||||
|
||||
#: assets/models/_user.py:30 assets/models/cmd_filter.py:44
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:21
|
||||
#: assets/models/cmd_filter.py:91 assets/models/group.py:18
|
||||
#: common/db/models.py:32 users/models/user.py:799
|
||||
#: users/serializers/group.py:29
|
||||
msgid "Created by"
|
||||
|
@ -1187,8 +1240,8 @@ msgstr "用户名与用户相同"
|
|||
|
||||
#: assets/models/_user.py:52 authentication/models/connection_token.py:40
|
||||
#: authentication/serializers/connect_token_secret.py:111
|
||||
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:21
|
||||
#: terminal/serializers/session.py:42 terminal/serializers/storage.py:68
|
||||
#: terminal/models/applet/applet.py:41 terminal/serializers/session.py:18
|
||||
#: terminal/serializers/session.py:39 terminal/serializers/storage.py:68
|
||||
msgid "Protocol"
|
||||
msgstr "协议"
|
||||
|
||||
|
@ -1276,19 +1329,19 @@ msgstr "收集资产硬件信息"
|
|||
msgid "Custom info"
|
||||
msgstr "自定义属性"
|
||||
|
||||
#: assets/models/asset/common.py:335
|
||||
#: assets/models/asset/common.py:334
|
||||
msgid "Can refresh asset hardware info"
|
||||
msgstr "可以更新资产硬件信息"
|
||||
|
||||
#: assets/models/asset/common.py:336
|
||||
#: assets/models/asset/common.py:335
|
||||
msgid "Can test asset connectivity"
|
||||
msgstr "可以测试资产连接性"
|
||||
|
||||
#: assets/models/asset/common.py:337
|
||||
#: assets/models/asset/common.py:336
|
||||
msgid "Can match asset"
|
||||
msgstr "可以匹配资产"
|
||||
|
||||
#: assets/models/asset/common.py:338
|
||||
#: assets/models/asset/common.py:337
|
||||
msgid "Can change asset nodes"
|
||||
msgstr "可以修改资产节点"
|
||||
|
||||
|
@ -1296,11 +1349,6 @@ msgstr "可以修改资产节点"
|
|||
msgid "Custom asset"
|
||||
msgstr "自定义资产"
|
||||
|
||||
#: assets/models/asset/database.py:10 assets/serializers/platform.py:45
|
||||
#: settings/serializers/email.py:37
|
||||
msgid "Use SSL"
|
||||
msgstr "使用 SSL"
|
||||
|
||||
#: assets/models/asset/database.py:11
|
||||
msgid "CA cert"
|
||||
msgstr "CA 证书"
|
||||
|
@ -1318,22 +1366,9 @@ msgid "Allow invalid cert"
|
|||
msgstr "忽略证书校验"
|
||||
|
||||
#: assets/models/asset/web.py:9 assets/serializers/asset/info/spec.py:16
|
||||
#: assets/serializers/platform.py:30
|
||||
msgid "Autofill"
|
||||
msgstr "自动代填"
|
||||
|
||||
#: assets/models/asset/web.py:10 assets/serializers/platform.py:32
|
||||
msgid "Username selector"
|
||||
msgstr "用户名选择器"
|
||||
|
||||
#: assets/models/asset/web.py:11 assets/serializers/platform.py:35
|
||||
msgid "Password selector"
|
||||
msgstr "密码选择器"
|
||||
|
||||
#: assets/models/asset/web.py:12 assets/serializers/platform.py:38
|
||||
msgid "Submit selector"
|
||||
msgstr "确认按钮选择器"
|
||||
|
||||
#: assets/models/automations/base.py:22 ops/models/job.py:187
|
||||
#: settings/serializers/auth/sms.py:99
|
||||
msgid "Parameters"
|
||||
|
@ -1349,7 +1384,7 @@ msgstr "资产自动化任务"
|
|||
|
||||
#: assets/models/automations/base.py:113 audits/models.py:199
|
||||
#: audits/serializers.py:49 ops/models/base.py:49 ops/models/job.py:184
|
||||
#: terminal/models/applet/applet.py:243 terminal/models/applet/host.py:136
|
||||
#: terminal/models/applet/applet.py:247 terminal/models/applet/host.py:136
|
||||
#: terminal/models/component/status.py:30 terminal/serializers/applet.py:18
|
||||
#: terminal/serializers/applet_host.py:107 tickets/models/ticket/general.py:283
|
||||
#: tickets/serializers/super_ticket.py:13
|
||||
|
@ -1412,17 +1447,17 @@ msgstr "收藏的资产"
|
|||
msgid "Gateway"
|
||||
msgstr "网关"
|
||||
|
||||
#: assets/models/group.py:30
|
||||
#: assets/models/group.py:27
|
||||
msgid "Asset group"
|
||||
msgstr "资产组"
|
||||
|
||||
#: assets/models/group.py:34 assets/models/platform.py:17
|
||||
#: assets/serializers/platform.py:102
|
||||
#: assets/models/group.py:31 assets/models/platform.py:17
|
||||
#: assets/serializers/platform.py:112
|
||||
#: xpack/plugins/cloud/providers/nutanix.py:30
|
||||
msgid "Default"
|
||||
msgstr "默认"
|
||||
|
||||
#: assets/models/group.py:34
|
||||
#: assets/models/group.py:31
|
||||
msgid "Default asset group"
|
||||
msgstr "默认资产组"
|
||||
|
||||
|
@ -1440,7 +1475,7 @@ msgstr "值"
|
|||
|
||||
#: assets/models/label.py:40 assets/serializers/asset/common.py:123
|
||||
#: assets/serializers/cagegory.py:6 assets/serializers/cagegory.py:13
|
||||
#: assets/serializers/platform.py:100
|
||||
#: assets/serializers/platform.py:110
|
||||
#: authentication/serializers/connect_token_secret.py:121
|
||||
#: common/serializers/common.py:85 perms/serializers/user_permission.py:28
|
||||
#: settings/serializers/sms.py:7
|
||||
|
@ -1488,7 +1523,8 @@ msgstr "必须的"
|
|||
msgid "Public"
|
||||
msgstr "开放的"
|
||||
|
||||
#: assets/models/platform.py:19 settings/serializers/settings.py:67
|
||||
#: assets/models/platform.py:19 assets/serializers/platform.py:48
|
||||
#: settings/serializers/settings.py:67
|
||||
#: users/templates/users/reset_password.html:29
|
||||
msgid "Setting"
|
||||
msgstr "设置"
|
||||
|
@ -1502,11 +1538,11 @@ msgstr "启用"
|
|||
msgid "Ansible config"
|
||||
msgstr "Ansible 配置"
|
||||
|
||||
#: assets/models/platform.py:34 assets/serializers/platform.py:63
|
||||
#: assets/models/platform.py:34 assets/serializers/platform.py:32
|
||||
msgid "Ping enabled"
|
||||
msgstr "启用资产探活"
|
||||
|
||||
#: assets/models/platform.py:35 assets/serializers/platform.py:64
|
||||
#: assets/models/platform.py:35 assets/serializers/platform.py:33
|
||||
msgid "Ping method"
|
||||
msgstr "资产探活方式"
|
||||
|
||||
|
@ -1515,12 +1551,12 @@ msgid "Ping params"
|
|||
msgstr "资产探活参数"
|
||||
|
||||
#: assets/models/platform.py:38 assets/models/platform.py:62
|
||||
#: assets/serializers/platform.py:65
|
||||
#: assets/serializers/platform.py:34
|
||||
msgid "Gather facts enabled"
|
||||
msgstr "启用收集资产信息"
|
||||
|
||||
#: assets/models/platform.py:40 assets/models/platform.py:64
|
||||
#: assets/serializers/platform.py:66
|
||||
#: assets/serializers/platform.py:35
|
||||
msgid "Gather facts method"
|
||||
msgstr "收集信息方式"
|
||||
|
||||
|
@ -1528,11 +1564,11 @@ msgstr "收集信息方式"
|
|||
msgid "Gather facts params"
|
||||
msgstr "收集信息参数"
|
||||
|
||||
#: assets/models/platform.py:44 assets/serializers/platform.py:69
|
||||
#: assets/models/platform.py:44 assets/serializers/platform.py:38
|
||||
msgid "Change secret enabled"
|
||||
msgstr "启用改密"
|
||||
|
||||
#: assets/models/platform.py:46 assets/serializers/platform.py:70
|
||||
#: assets/models/platform.py:46 assets/serializers/platform.py:39
|
||||
msgid "Change secret method"
|
||||
msgstr "改密方式"
|
||||
|
||||
|
@ -1540,11 +1576,11 @@ msgstr "改密方式"
|
|||
msgid "Change secret params"
|
||||
msgstr "改密参数"
|
||||
|
||||
#: assets/models/platform.py:50 assets/serializers/platform.py:71
|
||||
#: assets/models/platform.py:50 assets/serializers/platform.py:40
|
||||
msgid "Push account enabled"
|
||||
msgstr "启用账号推送"
|
||||
|
||||
#: assets/models/platform.py:52 assets/serializers/platform.py:72
|
||||
#: assets/models/platform.py:52 assets/serializers/platform.py:41
|
||||
msgid "Push account method"
|
||||
msgstr "账号推送方式"
|
||||
|
||||
|
@ -1552,11 +1588,11 @@ msgstr "账号推送方式"
|
|||
msgid "Push account params"
|
||||
msgstr "账号推送参数"
|
||||
|
||||
#: assets/models/platform.py:56 assets/serializers/platform.py:67
|
||||
#: assets/models/platform.py:56 assets/serializers/platform.py:36
|
||||
msgid "Verify account enabled"
|
||||
msgstr "开启账号验证"
|
||||
|
||||
#: assets/models/platform.py:58 assets/serializers/platform.py:68
|
||||
#: assets/models/platform.py:58 assets/serializers/platform.py:37
|
||||
msgid "Verify account method"
|
||||
msgstr "账号验证方式"
|
||||
|
||||
|
@ -1572,23 +1608,23 @@ msgstr "元数据"
|
|||
msgid "Internal"
|
||||
msgstr "内置"
|
||||
|
||||
#: assets/models/platform.py:89 assets/serializers/platform.py:115
|
||||
#: assets/models/platform.py:89 assets/serializers/platform.py:125
|
||||
msgid "Charset"
|
||||
msgstr "编码"
|
||||
|
||||
#: assets/models/platform.py:91 assets/serializers/platform.py:143
|
||||
#: assets/models/platform.py:91 assets/serializers/platform.py:153
|
||||
msgid "Domain enabled"
|
||||
msgstr "启用网域"
|
||||
|
||||
#: assets/models/platform.py:93 assets/serializers/platform.py:142
|
||||
#: assets/models/platform.py:93 assets/serializers/platform.py:152
|
||||
msgid "Su enabled"
|
||||
msgstr "启用账号切换"
|
||||
|
||||
#: assets/models/platform.py:94 assets/serializers/platform.py:121
|
||||
#: assets/models/platform.py:94 assets/serializers/platform.py:131
|
||||
msgid "Su method"
|
||||
msgstr "账号切换方式"
|
||||
|
||||
#: assets/models/platform.py:95 assets/serializers/platform.py:124
|
||||
#: assets/models/platform.py:95 assets/serializers/platform.py:134
|
||||
msgid "Custom fields"
|
||||
msgstr "自定义属性"
|
||||
|
||||
|
@ -1603,7 +1639,7 @@ msgid ""
|
|||
"type"
|
||||
msgstr "资产中批量更新平台,不符合平台类型跳过的资产"
|
||||
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:118
|
||||
#: assets/serializers/asset/common.py:124 assets/serializers/platform.py:128
|
||||
#: authentication/serializers/connect_token_secret.py:29
|
||||
#: authentication/serializers/connect_token_secret.py:72
|
||||
#: perms/serializers/user_permission.py:25 xpack/plugins/cloud/models.py:99
|
||||
|
@ -1719,47 +1755,55 @@ msgstr "值"
|
|||
msgid "Can't contains: /"
|
||||
msgstr "不能包含: /"
|
||||
|
||||
#: assets/serializers/platform.py:26
|
||||
msgid "SFTP enabled"
|
||||
msgstr "SFTP 已启用"
|
||||
|
||||
#: assets/serializers/platform.py:27
|
||||
msgid "SFTP home"
|
||||
msgstr "SFTP 根路径"
|
||||
|
||||
#: assets/serializers/platform.py:42
|
||||
msgid "Auth with username"
|
||||
msgstr "使用用户名认证"
|
||||
|
||||
#: assets/serializers/platform.py:73
|
||||
msgid "Gather accounts enabled"
|
||||
msgstr "启用账号收集"
|
||||
|
||||
#: assets/serializers/platform.py:74
|
||||
#: assets/serializers/platform.py:43
|
||||
msgid "Gather accounts method"
|
||||
msgstr "收集账号方式"
|
||||
|
||||
#: assets/serializers/platform.py:103
|
||||
#: assets/serializers/platform.py:60
|
||||
msgid ""
|
||||
"This protocol is primary, and it must be set when adding assets. "
|
||||
"Additionally, there can only be one primary protocol."
|
||||
msgstr "该协议是主要的,添加资产时必须设置。并且只能有一个主要协议"
|
||||
|
||||
#: assets/serializers/platform.py:65
|
||||
msgid "This protocol is required, and it must be set when adding assets."
|
||||
msgstr "该协议是必填的,添加资产时必须设置"
|
||||
|
||||
#: assets/serializers/platform.py:68
|
||||
msgid ""
|
||||
"This protocol is default, when adding assets, it will be displayed by "
|
||||
"default."
|
||||
msgstr "该协议是默认的,添加资产时,将默认显示"
|
||||
|
||||
#: assets/serializers/platform.py:71
|
||||
msgid "This protocol is public, asset will show this protocol to user"
|
||||
msgstr "该协议是公开的,资产将向用户显示该协议并可以连接使用"
|
||||
|
||||
#: assets/serializers/platform.py:113
|
||||
msgid "Help text"
|
||||
msgstr "帮助"
|
||||
|
||||
#: assets/serializers/platform.py:104
|
||||
#: assets/serializers/platform.py:114
|
||||
msgid "Choices"
|
||||
msgstr "选择"
|
||||
|
||||
#: assets/serializers/platform.py:119
|
||||
#: assets/serializers/platform.py:129
|
||||
msgid "Automation"
|
||||
msgstr "自动化"
|
||||
|
||||
#: assets/serializers/platform.py:144
|
||||
#: assets/serializers/platform.py:154
|
||||
msgid "Default Domain"
|
||||
msgstr "默认网域"
|
||||
|
||||
#: assets/serializers/platform.py:153
|
||||
#: assets/serializers/platform.py:163
|
||||
msgid "type is required"
|
||||
msgstr "类型 该字段是必填项。"
|
||||
|
||||
#: assets/serializers/platform.py:176
|
||||
#: assets/serializers/platform.py:186
|
||||
msgid "Protocols is required"
|
||||
msgstr "协议是必填的"
|
||||
|
||||
|
@ -1901,7 +1945,7 @@ msgstr "改密"
|
|||
|
||||
#: audits/const.py:35 settings/serializers/terminal.py:6
|
||||
#: terminal/models/applet/host.py:25 terminal/models/component/terminal.py:163
|
||||
#: terminal/serializers/session.py:49 terminal/serializers/session.py:58
|
||||
#: terminal/serializers/session.py:46 terminal/serializers/session.py:55
|
||||
msgid "Terminal"
|
||||
msgstr "终端"
|
||||
|
||||
|
@ -1939,7 +1983,7 @@ msgid "Job audit log"
|
|||
msgstr "作业审计日志"
|
||||
|
||||
#: audits/models.py:51 audits/models.py:95 audits/models.py:166
|
||||
#: terminal/models/session/session.py:39 terminal/models/session/sharing.py:99
|
||||
#: terminal/models/session/session.py:38 terminal/models/session/sharing.py:99
|
||||
msgid "Remote addr"
|
||||
msgstr "远端地址"
|
||||
|
||||
|
@ -2079,14 +2123,14 @@ msgid "Auth Token"
|
|||
msgstr "认证令牌"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:31 authentication/notifications.py:73
|
||||
#: authentication/views/login.py:74 authentication/views/wecom.py:159
|
||||
#: authentication/views/login.py:75 authentication/views/wecom.py:159
|
||||
#: notifications/backends/__init__.py:11 settings/serializers/auth/wecom.py:10
|
||||
#: users/models/user.py:706 users/models/user.py:814
|
||||
msgid "WeCom"
|
||||
msgstr "企业微信"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:32 authentication/views/feishu.py:123
|
||||
#: authentication/views/login.py:86 notifications/backends/__init__.py:14
|
||||
#: authentication/views/login.py:87 notifications/backends/__init__.py:14
|
||||
#: settings/serializers/auth/feishu.py:10
|
||||
#: settings/serializers/auth/feishu.py:13 users/models/user.py:708
|
||||
#: users/models/user.py:816
|
||||
|
@ -2094,7 +2138,7 @@ msgid "FeiShu"
|
|||
msgstr "飞书"
|
||||
|
||||
#: audits/signal_handlers/login_log.py:33 authentication/views/dingtalk.py:160
|
||||
#: authentication/views/login.py:80 notifications/backends/__init__.py:12
|
||||
#: authentication/views/login.py:81 notifications/backends/__init__.py:12
|
||||
#: settings/serializers/auth/dingtalk.py:10 users/models/user.py:707
|
||||
#: users/models/user.py:815
|
||||
msgid "DingTalk"
|
||||
|
@ -2946,23 +2990,23 @@ msgstr "绑定 飞书 成功"
|
|||
msgid "Failed to get user from FeiShu"
|
||||
msgstr "从飞书获取用户失败"
|
||||
|
||||
#: authentication/views/login.py:182
|
||||
#: authentication/views/login.py:183
|
||||
msgid "Redirecting"
|
||||
msgstr "跳转中"
|
||||
|
||||
#: authentication/views/login.py:183
|
||||
#: authentication/views/login.py:184
|
||||
msgid "Redirecting to {} authentication"
|
||||
msgstr "正在跳转到 {} 认证"
|
||||
|
||||
#: authentication/views/login.py:206
|
||||
msgid "Please enable cookies and try again."
|
||||
msgstr "设置你的浏览器支持cookie"
|
||||
#: authentication/views/login.py:207
|
||||
msgid "Login timeout, please try again."
|
||||
msgstr "登录超时,请重新登录"
|
||||
|
||||
#: authentication/views/login.py:247
|
||||
#: authentication/views/login.py:250
|
||||
msgid "User email already exists ({})"
|
||||
msgstr "用户邮箱已存在 ({})"
|
||||
|
||||
#: authentication/views/login.py:325
|
||||
#: authentication/views/login.py:328
|
||||
msgid ""
|
||||
"Wait for <b>{}</b> confirm, You also can copy link to her/him <br/>\n"
|
||||
" Don't close this page"
|
||||
|
@ -2970,15 +3014,15 @@ msgstr ""
|
|||
"等待 <b>{}</b> 确认, 你也可以复制链接发给他/她 <br/>\n"
|
||||
" 不要关闭本页面"
|
||||
|
||||
#: authentication/views/login.py:330
|
||||
#: authentication/views/login.py:333
|
||||
msgid "No ticket found"
|
||||
msgstr "没有发现工单"
|
||||
|
||||
#: authentication/views/login.py:366
|
||||
#: authentication/views/login.py:369
|
||||
msgid "Logout success"
|
||||
msgstr "退出登录成功"
|
||||
|
||||
#: authentication/views/login.py:367
|
||||
#: authentication/views/login.py:370
|
||||
msgid "Logout success, return login page"
|
||||
msgstr "退出登录成功,返回到登录页面"
|
||||
|
||||
|
@ -3026,7 +3070,7 @@ msgstr "定时触发"
|
|||
msgid "Ready"
|
||||
msgstr "准备"
|
||||
|
||||
#: common/const/choices.py:16 terminal/const.py:59 tickets/const.py:29
|
||||
#: common/const/choices.py:16 terminal/const.py:60 tickets/const.py:29
|
||||
#: tickets/const.py:39
|
||||
msgid "Pending"
|
||||
msgstr "待定的"
|
||||
|
@ -3660,7 +3704,7 @@ msgstr "保存后执行"
|
|||
msgid "Job type"
|
||||
msgstr "任务类型"
|
||||
|
||||
#: ops/serializers/job.py:57 terminal/serializers/session.py:50
|
||||
#: ops/serializers/job.py:57 terminal/serializers/session.py:47
|
||||
msgid "Is finished"
|
||||
msgstr "是否完成"
|
||||
|
||||
|
@ -4074,7 +4118,7 @@ msgid "My assets"
|
|||
msgstr "我的资产"
|
||||
|
||||
#: rbac/tree.py:56 terminal/models/applet/applet.py:51
|
||||
#: terminal/models/applet/applet.py:240 terminal/models/applet/host.py:28
|
||||
#: terminal/models/applet/applet.py:244 terminal/models/applet/host.py:28
|
||||
#: terminal/serializers/applet.py:15
|
||||
msgid "Applet"
|
||||
msgstr "远程应用"
|
||||
|
@ -4104,23 +4148,23 @@ msgstr "测试成功"
|
|||
msgid "Test mail sent to {}, please check"
|
||||
msgstr "邮件已经发送{}, 请检查"
|
||||
|
||||
#: settings/api/ldap.py:173
|
||||
#: settings/api/ldap.py:176
|
||||
msgid "Synchronization start, please wait."
|
||||
msgstr "同步开始,请稍等"
|
||||
|
||||
#: settings/api/ldap.py:177
|
||||
#: settings/api/ldap.py:180
|
||||
msgid "Synchronization is running, please wait."
|
||||
msgstr "同步正在运行,请稍等"
|
||||
|
||||
#: settings/api/ldap.py:182
|
||||
#: settings/api/ldap.py:185
|
||||
msgid "Synchronization error: {}"
|
||||
msgstr "同步错误: {}"
|
||||
|
||||
#: settings/api/ldap.py:220
|
||||
#: settings/api/ldap.py:223
|
||||
msgid "Get ldap users is None"
|
||||
msgstr "获取 LDAP 用户为 None"
|
||||
|
||||
#: settings/api/ldap.py:230
|
||||
#: settings/api/ldap.py:233
|
||||
msgid "Imported {} users successfully (Organization: {})"
|
||||
msgstr "成功导入 {} 个用户 ( 组织: {} )"
|
||||
|
||||
|
@ -5013,10 +5057,6 @@ msgstr "启用登录验证码"
|
|||
msgid "Enable captcha to prevent robot authentication"
|
||||
msgstr "开启验证码,防止机器人登录"
|
||||
|
||||
#: settings/serializers/security.py:151
|
||||
msgid "Security"
|
||||
msgstr "安全"
|
||||
|
||||
#: settings/serializers/security.py:154
|
||||
msgid "Enable terminal register"
|
||||
msgstr "终端注册"
|
||||
|
@ -5558,7 +5598,7 @@ msgstr "严重"
|
|||
msgid "High"
|
||||
msgstr "较高"
|
||||
|
||||
#: terminal/const.py:32 terminal/const.py:66
|
||||
#: terminal/const.py:32 terminal/const.py:67
|
||||
#: users/templates/users/reset_password.html:50
|
||||
msgid "Normal"
|
||||
msgstr "正常"
|
||||
|
@ -5567,19 +5607,19 @@ msgstr "正常"
|
|||
msgid "Offline"
|
||||
msgstr "离线"
|
||||
|
||||
#: terminal/const.py:62
|
||||
#: terminal/const.py:63
|
||||
msgid "Mismatch"
|
||||
msgstr "未匹配"
|
||||
|
||||
#: terminal/const.py:67
|
||||
#: terminal/const.py:68
|
||||
msgid "Tunnel"
|
||||
msgstr "隧道"
|
||||
|
||||
#: terminal/const.py:72
|
||||
#: terminal/const.py:73
|
||||
msgid "Read Only"
|
||||
msgstr "只读"
|
||||
|
||||
#: terminal/const.py:73
|
||||
#: terminal/const.py:74
|
||||
msgid "Writable"
|
||||
msgstr "读写"
|
||||
|
||||
|
@ -5635,7 +5675,7 @@ msgstr "只支持自定义平台"
|
|||
msgid "Missing type in platform.yml"
|
||||
msgstr "在 platform.yml 中缺少类型"
|
||||
|
||||
#: terminal/models/applet/applet.py:242 terminal/models/applet/host.py:34
|
||||
#: terminal/models/applet/applet.py:246 terminal/models/applet/host.py:34
|
||||
#: terminal/models/applet/host.py:134
|
||||
msgid "Hosting"
|
||||
msgstr "宿主机"
|
||||
|
@ -5704,7 +5744,7 @@ msgstr "端点"
|
|||
msgid "IP group"
|
||||
msgstr "IP 组"
|
||||
|
||||
#: terminal/models/component/endpoint.py:103
|
||||
#: terminal/models/component/endpoint.py:104
|
||||
msgid "Endpoint rule"
|
||||
msgstr "端点规则"
|
||||
|
||||
|
@ -5782,39 +5822,39 @@ msgstr "可以上传会话录像"
|
|||
msgid "Can download session replay"
|
||||
msgstr "可以下载会话录像"
|
||||
|
||||
#: terminal/models/session/session.py:35
|
||||
#: terminal/models/session/session.py:34
|
||||
msgid "Account id"
|
||||
msgstr "账号 ID"
|
||||
|
||||
#: terminal/models/session/session.py:37 terminal/models/session/sharing.py:104
|
||||
#: terminal/models/session/session.py:36 terminal/models/session/sharing.py:104
|
||||
msgid "Login from"
|
||||
msgstr "登录来源"
|
||||
|
||||
#: terminal/models/session/session.py:42
|
||||
#: terminal/models/session/session.py:41
|
||||
msgid "Replay"
|
||||
msgstr "回放"
|
||||
|
||||
#: terminal/models/session/session.py:46
|
||||
#: terminal/models/session/session.py:45
|
||||
msgid "Date end"
|
||||
msgstr "结束日期"
|
||||
|
||||
#: terminal/models/session/session.py:243
|
||||
#: terminal/models/session/session.py:240
|
||||
msgid "Session record"
|
||||
msgstr "会话记录"
|
||||
|
||||
#: terminal/models/session/session.py:245
|
||||
#: terminal/models/session/session.py:242
|
||||
msgid "Can monitor session"
|
||||
msgstr "可以监控会话"
|
||||
|
||||
#: terminal/models/session/session.py:246
|
||||
#: terminal/models/session/session.py:243
|
||||
msgid "Can share session"
|
||||
msgstr "可以分享会话"
|
||||
|
||||
#: terminal/models/session/session.py:247
|
||||
#: terminal/models/session/session.py:244
|
||||
msgid "Can terminate session"
|
||||
msgstr "可以终断会话"
|
||||
|
||||
#: terminal/models/session/session.py:248
|
||||
#: terminal/models/session/session.py:245
|
||||
msgid "Can validate session action perm"
|
||||
msgstr "可以验证会话动作权限"
|
||||
|
||||
|
@ -6017,35 +6057,35 @@ msgstr "如果不同端点下的资产 IP 有冲突,使用资产标签实现"
|
|||
msgid "Asset IP"
|
||||
msgstr "资产 IP"
|
||||
|
||||
#: terminal/serializers/session.py:25 terminal/serializers/session.py:47
|
||||
#: terminal/serializers/session.py:22 terminal/serializers/session.py:44
|
||||
msgid "Can replay"
|
||||
msgstr "是否可重放"
|
||||
|
||||
#: terminal/serializers/session.py:26 terminal/serializers/session.py:48
|
||||
#: terminal/serializers/session.py:23 terminal/serializers/session.py:45
|
||||
msgid "Can join"
|
||||
msgstr "是否可加入"
|
||||
|
||||
#: terminal/serializers/session.py:27 terminal/serializers/session.py:51
|
||||
#: terminal/serializers/session.py:24 terminal/serializers/session.py:48
|
||||
msgid "Can terminate"
|
||||
msgstr "是否可中断"
|
||||
|
||||
#: terminal/serializers/session.py:43
|
||||
#: terminal/serializers/session.py:40
|
||||
msgid "User ID"
|
||||
msgstr "用户 ID"
|
||||
|
||||
#: terminal/serializers/session.py:44
|
||||
#: terminal/serializers/session.py:41
|
||||
msgid "Asset ID"
|
||||
msgstr "资产 ID"
|
||||
|
||||
#: terminal/serializers/session.py:45
|
||||
#: terminal/serializers/session.py:42
|
||||
msgid "Login from display"
|
||||
msgstr "登录来源名称"
|
||||
|
||||
#: terminal/serializers/session.py:52
|
||||
#: terminal/serializers/session.py:49
|
||||
msgid "Terminal display"
|
||||
msgstr "终端显示"
|
||||
|
||||
#: terminal/serializers/session.py:57
|
||||
#: terminal/serializers/session.py:54
|
||||
msgid "Command amount"
|
||||
msgstr "命令数量"
|
||||
|
||||
|
@ -6356,11 +6396,11 @@ msgstr "审批步骤"
|
|||
msgid "Relation snapshot"
|
||||
msgstr "工单快照"
|
||||
|
||||
#: tickets/models/ticket/general.py:392
|
||||
#: tickets/models/ticket/general.py:398
|
||||
msgid "Please try again"
|
||||
msgstr "请再次尝试"
|
||||
|
||||
#: tickets/models/ticket/general.py:461
|
||||
#: tickets/models/ticket/general.py:467
|
||||
msgid "Super ticket"
|
||||
msgstr "超级工单"
|
||||
|
||||
|
@ -7617,3 +7657,6 @@ msgstr "旗舰版"
|
|||
#: xpack/plugins/license/models.py:86
|
||||
msgid "Community edition"
|
||||
msgstr "社区版"
|
||||
|
||||
#~ msgid "Please enable cookies and try again."
|
||||
#~ msgstr "设置你的浏览器支持cookie"
|
||||
|
|
Loading…
Reference in New Issue