merge: with remote

pull/12723/head^2
ibuler 2024-02-28 16:32:46 +08:00
commit d46237f1bf
43 changed files with 517 additions and 844 deletions

View File

@ -42,7 +42,7 @@ class Migration(migrations.Migration):
default=True, max_length=2, verbose_name='Status')),
('datetime',
models.DateTimeField(default=django.utils.timezone.now,
verbose_name='Date login')),
verbose_name='Login Date')),
],
options={
'ordering': ['-datetime', 'username'],

View File

@ -24,6 +24,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='userloginlog',
name='datetime',
field=models.DateTimeField(db_index=True, default=django.utils.timezone.now, verbose_name='Date login'),
field=models.DateTimeField(db_index=True, default=django.utils.timezone.now, verbose_name='Login Date'),
),
]

View File

@ -207,7 +207,7 @@ class UserLoginLog(models.Model):
choices=LoginStatusChoices.choices,
verbose_name=_("Status"),
)
datetime = models.DateTimeField(default=timezone.now, verbose_name=_("Date login"), db_index=True)
datetime = models.DateTimeField(default=timezone.now, verbose_name=_("Login Date"), db_index=True)
backend = models.CharField(
max_length=32, default="", verbose_name=_("Authentication backend")
)

View File

@ -50,7 +50,7 @@ class PrepareRequestMixin:
if idp_metadata_xml.strip():
xml_idp_settings = IdPMetadataParse.parse(idp_metadata_xml)
except Exception as err:
logger.warning('Failed to get IDP metadata XML settings, error: %s', str(err))
logger.warning('Failed to get IDP Metadata XML settings, error: %s', str(err))
url_idp_settings = None
try:
@ -59,7 +59,7 @@ class PrepareRequestMixin:
idp_metadata_url, timeout=20
)
except Exception as err:
logger.warning('Failed to get IDP metadata URL settings, error: %s', str(err))
logger.warning('Failed to get IDP Metadata URL settings, error: %s', str(err))
idp_settings = url_idp_settings or xml_idp_settings

View File

@ -7,7 +7,7 @@
</p>
<p>
<b>{% trans 'Username' %}:</b> {{ username }}<br>
<b>{% trans 'Login time' %}:</b> {{ time }}<br>
<b>{% trans 'Login Date' %}:</b> {{ time }}<br>
<b>{% trans 'Login city' %}:</b> {{ city }}({{ ip }})
</p>

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0f38416ee042bf98512fadd5dc339c7476f1c40c99f8e4fd4fa6834c894c4345
size 1398
oid sha256:7b33b3fc460342e5c344d08fd5217d0d7abbfece053251332607a93d46b3ffbe
size 2319

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-20 15:15+0800\n"
"POT-Creation-Date: 2024-02-26 15:45+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"
@ -298,6 +298,7 @@ msgstr ""
#: ops/models/base.py:18 perms/models/asset_permission.py:75
#: perms/serializers/permission.py:45 settings/serializers/msg.py:33
#: terminal/backends/command/models.py:18 terminal/models/session/session.py:33
#: terminal/serializers/command.py:72
#: terminal/templates/terminal/_msg_command_warning.html:8
#: terminal/templates/terminal/_msg_session_sharing.html:8
#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:89
@ -404,7 +405,7 @@ msgstr ""
#: accounts/serializers/automations/change_secret.py:128
#: ops/serializers/job.py:67 terminal/serializers/session.py:49
msgid "Is success"
msgstr "Success"
msgstr "Is success"
#: accounts/models/automations/backup_account.py:143
msgid "Account backup execution"
@ -540,10 +541,8 @@ msgid "Gather account automation"
msgstr ""
#: accounts/models/automations/gather_account.py:56
#, fuzzy
#| msgid "Sync account"
msgid "Is sync account"
msgstr "Sync account"
msgstr "Is sync account"
#: accounts/models/automations/gather_account.py:75
#: accounts/tasks/gather_accounts.py:29
@ -928,7 +927,7 @@ msgstr ""
#: tickets/models/ticket/general.py:297 users/models/user.py:836
#: xpack/plugins/cloud/models.py:39 xpack/plugins/cloud/models.py:110
msgid "Comment"
msgstr "Description"
msgstr "Comment"
#: accounts/serializers/account/virtual.py:24
msgid ""
@ -974,8 +973,6 @@ msgstr ""
#: common/const/choices.py:18 ops/const.py:73 ops/serializers/celery.py:48
#: terminal/const.py:78 terminal/models/session/sharing.py:121
#: tickets/views/approve.py:117
#, fuzzy
#| msgid "Is success"
msgid "Success"
msgstr "Success"
@ -1135,7 +1132,7 @@ msgstr ""
#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
#: settings/models.py:182 settings/serializers/feature.py:19
#: xpack/plugins/license/models.py:30
#: settings/serializers/msg.py:78 xpack/plugins/license/models.py:30
msgid "Content"
msgstr ""
@ -1430,7 +1427,7 @@ msgstr ""
#: assets/const/category.py:16 common/sdk/sms/endpoint.py:20
msgid "Custom type"
msgstr ""
msgstr "Custom"
#: assets/const/cloud.py:7
msgid "Public cloud"
@ -1795,7 +1792,7 @@ msgstr ""
msgid "Ping asset"
msgstr ""
#: assets/models/base.py:19
#: assets/models/base.py:19 terminal/notifications.py:225
msgid "Connectivity"
msgstr ""
@ -2501,7 +2498,9 @@ msgid "MFA"
msgstr ""
#: audits/models.py:210
msgid "Date login"
#: authentication/templates/authentication/_msg_different_city.html:10
#: tickets/models/ticket/login_confirm.py:12
msgid "Login Date"
msgstr ""
#: audits/models.py:212 audits/models.py:266 audits/serializers.py:70
@ -2587,7 +2586,7 @@ msgstr ""
#: settings/serializers/auth/feishu.py:13 users/models/user.py:751
#: users/models/user.py:857
msgid "FeiShu"
msgstr ""
msgstr "Lark"
#: audits/signal_handlers/login_log.py:39 authentication/views/login.py:95
#: authentication/views/slack.py:87 notifications/backends/__init__.py:15
@ -2983,8 +2982,9 @@ msgstr ""
#: authentication/mfa/sms.py:12 authentication/serializers/password_mfa.py:16
#: authentication/serializers/password_mfa.py:24
#: settings/serializers/auth/sms.py:32 users/forms/profile.py:104
#: users/forms/profile.py:109 users/templates/users/forgot_password.html:155
#: settings/serializers/auth/sms.py:17 settings/serializers/auth/sms.py:32
#: users/forms/profile.py:104 users/forms/profile.py:109
#: users/templates/users/forgot_password.html:155
#: users/views/profile/reset.py:100
msgid "SMS"
msgstr ""
@ -3192,10 +3192,8 @@ msgstr ""
#: authentication/serializers/token.py:92 perms/serializers/permission.py:43
#: perms/serializers/permission.py:66 users/serializers/user.py:98
#: users/serializers/user.py:174
#, fuzzy
#| msgid "Valid"
msgid "Is valid"
msgstr "Valid"
msgstr "Is Valid"
#: authentication/tasks.py:11
msgid "Clean expired session"
@ -3278,10 +3276,6 @@ msgstr ""
msgid "Your account has remote login behavior, please pay attention"
msgstr ""
#: authentication/templates/authentication/_msg_different_city.html:10
msgid "Login time"
msgstr ""
#: authentication/templates/authentication/_msg_different_city.html:16
msgid ""
"If you suspect that the login behavior is abnormal, please modify the "
@ -3800,7 +3794,7 @@ msgstr ""
#: common/sdk/sms/endpoint.py:21
msgid "Custom type (File)"
msgstr ""
msgstr "Custom (File)"
#: common/sdk/sms/endpoint.py:32
msgid "SMS provider not support: {}"
@ -3937,10 +3931,8 @@ msgid "Labeled resource"
msgstr ""
#: labels/serializers.py:22
#, fuzzy
#| msgid "Executed amount"
msgid "Resource amount"
msgstr "Executions"
msgid "Resource count"
msgstr "Resource count"
#: labels/serializers.py:28
msgid "Cannot contain \":,\""
@ -4253,7 +4245,7 @@ msgstr ""
msgid "Runas policy"
msgstr ""
#: ops/models/job.py:216
#: ops/models/job.py:216 terminal/notifications.py:174
msgid "Job"
msgstr ""
@ -4277,8 +4269,8 @@ msgstr ""
msgid "VCS URL"
msgstr ""
#: ops/notifications.py:17 rbac/tree.py:57
msgid "App ops"
#: ops/notifications.py:17
msgid "Components"
msgstr ""
#: ops/notifications.py:18
@ -4318,8 +4310,8 @@ msgid "Next execution time"
msgstr ""
#: ops/serializers/job.py:15
msgid "Run after save"
msgstr ""
msgid "Execute after saving"
msgstr "Execute after saving"
#: ops/serializers/job.py:52
msgid "Average time cost"
@ -4786,14 +4778,18 @@ msgstr ""
msgid "Terminal setting"
msgstr ""
#: rbac/tree.py:55
msgid "Task Center"
#: rbac/tree.py:55 settings/serializers/feature.py:126
msgid "Job center"
msgstr ""
#: rbac/tree.py:56
msgid "My assets"
msgstr ""
#: rbac/tree.py:57
msgid "App ops"
msgstr ""
#: rbac/tree.py:58 terminal/models/applet/applet.py:52
#: terminal/models/applet/applet.py:317 terminal/models/applet/host.py:30
#: terminal/serializers/applet.py:15
@ -4809,7 +4805,7 @@ msgid "Ticket comment"
msgstr ""
#: rbac/tree.py:130 settings/serializers/feature.py:109
#: tickets/models/ticket/general.py:307
#: settings/serializers/feature.py:111 tickets/models/ticket/general.py:307
msgid "Ticket"
msgstr ""
@ -4993,21 +4989,13 @@ msgid "Forgot Password URL"
msgstr ""
#: settings/serializers/auth/base.py:29
msgid "Enable login redirect msg"
msgid "Login redirection prompt"
msgstr ""
#: settings/serializers/auth/cas.py:10
msgid "CAS"
msgstr ""
#: settings/serializers/auth/cas.py:12
msgid "Enable CAS Auth"
msgstr ""
#: settings/serializers/auth/cas.py:13 settings/serializers/auth/oidc.py:54
msgid "Server url"
msgstr ""
#: settings/serializers/auth/cas.py:16
msgid "Proxy server url"
msgstr ""
@ -5026,19 +5014,19 @@ msgid "Enable attributes map"
msgstr ""
#: settings/serializers/auth/cas.py:28 settings/serializers/auth/saml2.py:32
msgid "Rename attr"
msgid "User attribute"
msgstr ""
#: settings/serializers/auth/cas.py:29
msgid "Create user if not"
msgid "Create user"
msgstr ""
#: settings/serializers/auth/dingtalk.py:15
msgid "Enable DingTalk Auth"
msgid "Dingtalk"
msgstr ""
#: settings/serializers/auth/feishu.py:16
msgid "Enable FeiShu Auth"
msgid "Lark"
msgstr ""
#: settings/serializers/auth/ldap.py:39
@ -5046,7 +5034,7 @@ msgid "LDAP"
msgstr ""
#: settings/serializers/auth/ldap.py:42
msgid "LDAP server"
msgid "Server"
msgstr ""
#: settings/serializers/auth/ldap.py:43
@ -5074,11 +5062,6 @@ msgstr ""
msgid "Choice may be (cn|uid|sAMAccountName)=%(user)s)"
msgstr ""
#: settings/serializers/auth/ldap.py:58 settings/serializers/auth/oauth2.py:56
#: settings/serializers/auth/oidc.py:37
msgid "User attr map"
msgstr ""
#: settings/serializers/auth/ldap.py:59
msgid ""
"User attr map present how to map LDAP user attr to jumpserver, username,name,"
@ -5093,17 +5076,10 @@ msgstr ""
msgid "Search paged size (piece)"
msgstr ""
#: settings/serializers/auth/ldap.py:84
msgid "Enable LDAP auth"
msgstr ""
#: settings/serializers/auth/oauth2.py:18
msgid "OAuth2"
msgstr ""
#: settings/serializers/auth/oauth2.py:21
msgid "Enable OAuth2 Auth"
msgstr ""
#: settings/serializers/auth/oauth2.py:24
msgid "Logo"
@ -5123,11 +5099,11 @@ msgid "Client Secret"
msgstr ""
#: settings/serializers/auth/oauth2.py:39 settings/serializers/auth/oidc.py:68
msgid "Provider auth endpoint"
msgid "Authorization endpoint"
msgstr ""
#: settings/serializers/auth/oauth2.py:42 settings/serializers/auth/oidc.py:71
msgid "Provider token endpoint"
msgid "Token endpoint"
msgstr ""
#: settings/serializers/auth/oauth2.py:45 settings/serializers/auth/oidc.py:30
@ -5135,11 +5111,11 @@ msgid "Client authentication method"
msgstr ""
#: settings/serializers/auth/oauth2.py:49 settings/serializers/auth/oidc.py:77
msgid "Provider userinfo endpoint"
msgid "Userinfo endpoint"
msgstr ""
#: settings/serializers/auth/oauth2.py:52 settings/serializers/auth/oidc.py:80
msgid "Provider end session endpoint"
msgid "End session endpoint"
msgstr ""
#: settings/serializers/auth/oauth2.py:59 settings/serializers/auth/oidc.py:98
@ -5160,7 +5136,7 @@ msgid "Share session"
msgstr ""
#: settings/serializers/auth/oidc.py:34
msgid "Ignore ssl verification"
msgid "Ignore SSL verification"
msgstr ""
#: settings/serializers/auth/oidc.py:38
@ -5185,24 +5161,20 @@ msgstr ""
msgid "Realm name"
msgstr ""
#: settings/serializers/auth/oidc.py:63
msgid "Enable OPENID Auth"
msgstr ""
#: settings/serializers/auth/oidc.py:65
msgid "Provider endpoint"
msgstr ""
#: settings/serializers/auth/oidc.py:74
msgid "Provider jwks endpoint"
msgid "JWKS endpoint"
msgstr ""
#: settings/serializers/auth/oidc.py:83
msgid "Provider sign alg"
msgid "Signature algorithm"
msgstr ""
#: settings/serializers/auth/oidc.py:86
msgid "Provider sign key"
msgid "Signing key"
msgstr ""
#: settings/serializers/auth/oidc.py:88
@ -5210,11 +5182,11 @@ msgid "Scopes"
msgstr ""
#: settings/serializers/auth/oidc.py:90
msgid "Id token max age (s)"
msgid "ID Token max age (s)"
msgstr ""
#: settings/serializers/auth/oidc.py:93
msgid "Id token include claims"
msgid "ID Token include claims"
msgstr ""
#: settings/serializers/auth/oidc.py:95
@ -5225,10 +5197,6 @@ msgstr ""
msgid "Use nonce"
msgstr ""
#: settings/serializers/auth/passkey.py:11
msgid "Enable passkey Auth"
msgstr ""
#: settings/serializers/auth/passkey.py:12
msgid "Only SSL domain can use passkey auth"
msgstr ""
@ -5251,10 +5219,6 @@ msgstr ""
msgid "Radius"
msgstr ""
#: settings/serializers/auth/radius.py:15
msgid "Enable Radius Auth"
msgstr ""
#: settings/serializers/auth/radius.py:21
msgid "OTP in Radius"
msgstr ""
@ -5263,16 +5227,12 @@ msgstr ""
msgid "SAML2"
msgstr ""
#: settings/serializers/auth/saml2.py:13
msgid "Enable SAML2 Auth"
msgstr ""
#: settings/serializers/auth/saml2.py:16
msgid "IDP metadata URL"
msgid "IDP Metadata URL"
msgstr ""
#: settings/serializers/auth/saml2.py:19
msgid "IDP metadata XML"
msgid "IDP Metadata XML"
msgstr ""
#: settings/serializers/auth/saml2.py:22
@ -5287,14 +5247,6 @@ msgstr ""
msgid "SP cert"
msgstr ""
#: settings/serializers/auth/slack.py:12
msgid "Enable Slack Auth"
msgstr ""
#: settings/serializers/auth/sms.py:17
msgid "Enable SMS"
msgstr ""
#: settings/serializers/auth/sms.py:19
msgid "SMS provider / Protocol"
msgstr ""
@ -5327,19 +5279,19 @@ msgid "Signature channel number"
msgstr ""
#: settings/serializers/auth/sms.py:73
msgid "Enterprise code(SP id)"
msgid "Enterprise code"
msgstr ""
#: settings/serializers/auth/sms.py:74
msgid "Shared secret(Shared secret)"
msgid "Shared secret"
msgstr ""
#: settings/serializers/auth/sms.py:75
msgid "Original number(Src id)"
msgid "Original number"
msgstr ""
#: settings/serializers/auth/sms.py:76
msgid "Business type(Service id)"
msgid "Business type"
msgstr ""
#: settings/serializers/auth/sms.py:80
@ -5363,10 +5315,6 @@ msgstr ""
msgid "URL"
msgstr ""
#: settings/serializers/auth/sms.py:106
msgid "Request method"
msgstr ""
#: settings/serializers/auth/sso.py:16
msgid "Enable SSO auth"
msgstr ""
@ -5384,10 +5332,6 @@ msgstr ""
msgid "Unit: second"
msgstr ""
#: settings/serializers/auth/wecom.py:15
msgid "Enable WeCom Auth"
msgstr ""
#: settings/serializers/basic.py:11
msgid "Site URL"
msgstr ""
@ -5397,6 +5341,8 @@ msgid ""
"External URL, email links or other system callbacks are used to access it, "
"eg: http://dev.jumpserver.org:8080"
msgstr ""
"Site URL are commonly used in emails sent or as callback addresses for "
"external systems. eg: http://dev.jumpserver.org:8080"
#: settings/serializers/basic.py:18
msgid "User guide url"
@ -5416,7 +5362,7 @@ msgstr ""
#: settings/serializers/basic.py:26
msgid "Help Docs URL"
msgstr ""
msgstr "Document URL"
#: settings/serializers/basic.py:27
msgid "default: http://docs.jumpserver.org"
@ -5424,7 +5370,7 @@ msgstr ""
#: settings/serializers/basic.py:30
msgid "Help Support URL"
msgstr ""
msgstr "Support URL"
#: settings/serializers/basic.py:31
msgid "default: http://www.jumpserver.org/support/"
@ -5476,7 +5422,7 @@ msgid ""
"database, OSS will not be affected."
msgstr ""
#: settings/serializers/feature.py:18
#: settings/serializers/feature.py:18 settings/serializers/msg.py:68
msgid "Subject"
msgstr ""
@ -5484,16 +5430,13 @@ msgstr ""
msgid "More URL"
msgstr ""
#: settings/serializers/feature.py:36 settings/serializers/feature.py:39
#: settings/serializers/feature.py:36 settings/serializers/feature.py:38
#: settings/serializers/feature.py:39
msgid "Announcement"
msgstr ""
#: settings/serializers/feature.py:38
msgid "Enable announcement"
msgstr ""
#: settings/serializers/feature.py:46
msgid "Enable Vault"
msgid "Vault"
msgstr ""
#: settings/serializers/feature.py:55
@ -5502,7 +5445,7 @@ msgstr ""
#: settings/serializers/feature.py:60
msgid "Historical accounts retained count"
msgstr ""
msgstr "Retention"
#: settings/serializers/feature.py:62
msgid ""
@ -5512,14 +5455,10 @@ msgid ""
"account deletion will be performed."
msgstr ""
#: settings/serializers/feature.py:71
#: settings/serializers/feature.py:71 settings/serializers/feature.py:75
msgid "Chat AI"
msgstr ""
#: settings/serializers/feature.py:75
msgid "Enable Chat AI"
msgstr ""
#: settings/serializers/feature.py:78
msgid "Base URL"
msgstr ""
@ -5532,12 +5471,8 @@ msgstr ""
msgid "GPT Model"
msgstr ""
#: settings/serializers/feature.py:111
msgid "Enable tickets"
msgstr ""
#: settings/serializers/feature.py:114
msgid "Ticket authorize default time"
msgid "Default period"
msgstr ""
#: settings/serializers/feature.py:117
@ -5545,30 +5480,26 @@ msgid "hour"
msgstr ""
#: settings/serializers/feature.py:118
msgid "Ticket authorize default time unit"
msgid "Default unit"
msgstr ""
#: settings/serializers/feature.py:123
msgid "Feature"
msgstr ""
#: settings/serializers/feature.py:126
msgid "Operation center"
msgstr ""
#: settings/serializers/feature.py:127
msgid "Allow user run batch command or not using ansible"
msgstr ""
#: settings/serializers/feature.py:131
msgid "Operation center command blacklist"
msgid "Command blacklist"
msgstr ""
#: settings/serializers/feature.py:132
msgid "Commands that are not allowed execute."
msgstr ""
#: settings/serializers/feature.py:137
#: settings/serializers/feature.py:137 settings/serializers/feature.py:140
#: terminal/models/virtualapp/provider.py:17
#: terminal/models/virtualapp/virtualapp.py:36
#: terminal/models/virtualapp/virtualapp.py:97
@ -5576,10 +5507,6 @@ msgstr ""
msgid "Virtual app"
msgstr ""
#: settings/serializers/feature.py:140
msgid "Enable virtual app"
msgstr ""
#: settings/serializers/msg.py:25
msgid "SMTP"
msgstr ""
@ -5593,7 +5520,7 @@ msgid "Tips: Some provider use token except password"
msgstr ""
#: settings/serializers/msg.py:39
msgid "Send user"
msgid "Sender"
msgstr ""
#: settings/serializers/msg.py:40
@ -5633,10 +5560,6 @@ msgid ""
"This is used by default if no email is returned during SSO authentication"
msgstr ""
#: settings/serializers/msg.py:68
msgid "Create user email subject"
msgstr ""
#: settings/serializers/msg.py:69
msgid ""
"Tips: When creating a user, send the subject of the email (eg:Create account "
@ -5644,17 +5567,13 @@ msgid ""
msgstr ""
#: settings/serializers/msg.py:73
msgid "Create user honorific"
msgid "Honorific"
msgstr ""
#: settings/serializers/msg.py:74
msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)"
msgstr ""
#: settings/serializers/msg.py:78
msgid "Create user email content"
msgstr ""
#: settings/serializers/msg.py:80
#, python-brace-format
msgid ""
@ -5690,7 +5609,7 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:26
msgid "Number of repeated historical passwords"
msgid "Recent password count"
msgstr ""
#: settings/serializers/security.py:28
@ -5700,27 +5619,27 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:34
msgid "Password minimum length"
msgid "Minimum length (User)"
msgstr ""
#: settings/serializers/security.py:38
msgid "Admin user password minimum length"
msgid "Minimum length (Admin)"
msgstr ""
#: settings/serializers/security.py:41
msgid "Must contain capital"
msgid "Uppercase"
msgstr ""
#: settings/serializers/security.py:44
msgid "Must contain lowercase"
msgid "Lowercase"
msgstr ""
#: settings/serializers/security.py:47
msgid "Must contain numeric"
msgid "Digits"
msgstr ""
#: settings/serializers/security.py:50
msgid "Must contain special"
msgid "Special characters"
msgstr ""
#: settings/serializers/security.py:55
@ -5730,27 +5649,19 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:63
msgid "Limit the number of user login failures"
msgstr ""
#: settings/serializers/security.py:67
msgid "Block user login interval (minute)"
msgstr ""
#: settings/serializers/security.py:73
msgid "Limit the number of IP login failures"
msgid "Login failures count"
msgstr ""
#: settings/serializers/security.py:77
msgid "Block IP login interval (minute)"
msgid "Login failure period (minute)"
msgstr ""
#: settings/serializers/security.py:81
msgid "Login IP White List"
msgid "Login IP whitelist"
msgstr ""
#: settings/serializers/security.py:86
msgid "Login IP Black List"
msgid "Login IP blacklist"
msgstr ""
#: settings/serializers/security.py:91
@ -5804,7 +5715,7 @@ msgid "Global MFA auth"
msgstr ""
#: settings/serializers/security.py:124
msgid "Third-party login users perform MFA authentication"
msgid "Third-party login MFA"
msgstr ""
#: settings/serializers/security.py:125
@ -5846,7 +5757,7 @@ msgid "Reset password and send SMS code expiration time"
msgstr ""
#: settings/serializers/security.py:153
msgid "Enable Login dynamic code"
msgid "Login dynamic code"
msgstr ""
#: settings/serializers/security.py:154
@ -5856,7 +5767,7 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:158
msgid "Enable Login captcha"
msgid "Login captcha"
msgstr ""
#: settings/serializers/security.py:159
@ -5864,7 +5775,7 @@ msgid "Enable captcha to prevent robot authentication"
msgstr ""
#: settings/serializers/security.py:162
msgid "Remote Login Protection"
msgid "Suspicious Login Verification"
msgstr ""
#: settings/serializers/security.py:164
@ -5875,7 +5786,7 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:170
msgid "Unused user timeout (day)"
msgid "Auto Disable Threshold (day)"
msgstr ""
#: settings/serializers/security.py:171
@ -5885,7 +5796,7 @@ msgid ""
msgstr ""
#: settings/serializers/security.py:191
msgid "Enable watermark"
msgid "Watermark"
msgstr ""
#: settings/serializers/security.py:192
@ -5893,7 +5804,7 @@ msgid "Enabled, the web session and replay contains watermark information"
msgstr ""
#: settings/serializers/security.py:196
msgid "Connection max idle time (minute)"
msgid "Max idle time (minute)"
msgstr ""
#: settings/serializers/security.py:197
@ -5901,7 +5812,7 @@ msgid "If idle time more than it, disconnect connection."
msgstr ""
#: settings/serializers/security.py:201
msgid "Session max connection time (hour)"
msgid "Max online time (hour)"
msgstr ""
#: settings/serializers/security.py:202
@ -5947,7 +5858,7 @@ msgid "Auto"
msgstr ""
#: settings/serializers/terminal.py:22
msgid "Enable terminal register"
msgid "Terminal registration"
msgstr ""
#: settings/serializers/terminal.py:24
@ -5966,16 +5877,16 @@ msgstr ""
#: settings/serializers/terminal.py:30
msgid ""
"Tips: If use other auth method, like AD/LDAP, you should disable this to "
"Information: If use other auth method, like AD/LDAP, you should disable this to "
"avoid being able to log in after deleting"
msgstr ""
#: settings/serializers/terminal.py:34
msgid "List sort by"
msgid "Asset list sorting"
msgstr ""
#: settings/serializers/terminal.py:37
msgid "List page size"
msgid "Asset list page size"
msgstr ""
#: settings/serializers/terminal.py:39
@ -5986,10 +5897,6 @@ msgstr ""
msgid "Enable Razor"
msgstr ""
#: settings/serializers/terminal.py:41
msgid "Enable SSH Client"
msgstr ""
#: settings/tasks/ldap.py:28
msgid "Periodic import ldap user"
msgstr ""
@ -6806,7 +6713,7 @@ msgstr ""
msgid "Command warning"
msgstr ""
#: terminal/notifications.py:130
#: terminal/notifications.py:130 terminal/notifications.py:175
msgid "Command reject"
msgstr ""
@ -6814,17 +6721,9 @@ msgstr ""
msgid "Level"
msgstr ""
#: terminal/notifications.py:175
msgid "Batch danger command alert"
msgstr ""
#: terminal/notifications.py:224
msgid "Command and replay storage"
msgstr ""
#: terminal/notifications.py:225
msgid "Connectivity alarm"
msgstr ""
msgstr "Storage"
#: terminal/notifications.py:240 terminal/tasks.py:146
msgid "Test failure: Account invalid"
@ -6954,10 +6853,6 @@ msgstr ""
msgid "Invalid session id"
msgstr ""
#: terminal/serializers/command.py:72
msgid "Account "
msgstr ""
#: terminal/serializers/command.py:74
msgid "Timestamp"
msgstr ""
@ -7036,7 +6931,7 @@ msgstr ""
#: terminal/serializers/storage.py:33
#: xpack/plugins/cloud/serializers/account_attrs.py:17
msgid "Access key id"
msgid "Access key ID"
msgstr ""
#: terminal/serializers/storage.py:37
@ -7110,10 +7005,8 @@ msgid "Online sessions"
msgstr ""
#: terminal/serializers/terminal.py:43
#, fuzzy
#| msgid "Alive"
msgid "Is alive"
msgstr "Alive"
msgstr "Is alive"
#: terminal/serializers/terminal.py:49
msgid "Stat"
@ -7413,10 +7306,6 @@ msgstr ""
msgid "Apply Login Asset Ticket"
msgstr ""
#: tickets/models/ticket/login_confirm.py:12
msgid "Login datetime"
msgstr ""
#: tickets/models/ticket/login_confirm.py:15
msgid "Apply Login Ticket"
msgstr ""
@ -7689,10 +7578,8 @@ msgid "Force enable"
msgstr ""
#: users/models/user.py:812 users/serializers/user.py:175
#, fuzzy
#| msgid "Service account"
msgid "Is service account"
msgstr "Service account"
msgstr "Is service account"
#: users/models/user.py:814
msgid "Avatar"
@ -7902,7 +7789,7 @@ msgid "Is OTP bound"
msgstr "OTP bound"
#: users/serializers/user.py:101
msgid "Can public key authentication"
msgid "Can public key auth"
msgstr "Public key auth"
#: users/serializers/user.py:166
@ -8862,7 +8749,6 @@ msgid "Logo of logout page"
msgstr ""
#: xpack/plugins/interface/models.py:41
#: xpack/plugins/interface/serializers/interface.py:26
msgid "Theme"
msgstr ""
@ -8878,14 +8764,6 @@ msgstr ""
msgid "Interface setting"
msgstr ""
#: xpack/plugins/interface/serializers/interface.py:37
msgid "Wide logo on top"
msgstr ""
#: xpack/plugins/interface/serializers/interface.py:38
msgid "Small logo without text"
msgstr ""
#: xpack/plugins/license/api.py:52
msgid "License import successfully"
msgstr ""

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89339329adfc787fe38cd62cc18caf7adfe5824fa7bbddcb7d69598521a18d18
size 170670
oid sha256:6927f54b75facae0524e9d6cd4d021104780d96cdc128880f6e960ed72fb4ae5
size 168378

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-20 15:15+0800\n"
"POT-Creation-Date: 2024-02-26 15:45+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"
@ -298,6 +298,7 @@ msgstr "ソース ID"
#: ops/models/base.py:18 perms/models/asset_permission.py:75
#: perms/serializers/permission.py:45 settings/serializers/msg.py:33
#: terminal/backends/command/models.py:18 terminal/models/session/session.py:33
#: terminal/serializers/command.py:72
#: terminal/templates/terminal/_msg_command_warning.html:8
#: terminal/templates/terminal/_msg_session_sharing.html:8
#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:89
@ -1150,7 +1151,7 @@ msgstr "正規情報"
#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
#: settings/models.py:182 settings/serializers/feature.py:19
#: xpack/plugins/license/models.py:30
#: settings/serializers/msg.py:78 xpack/plugins/license/models.py:30
msgid "Content"
msgstr "コンテンツ"
@ -1831,7 +1832,7 @@ msgstr "資産情報の収集"
msgid "Ping asset"
msgstr "テストアセット"
#: assets/models/base.py:19
#: assets/models/base.py:19 terminal/notifications.py:225
msgid "Connectivity"
msgstr "接続性"
@ -2550,7 +2551,9 @@ msgid "MFA"
msgstr "MFA"
#: audits/models.py:210
msgid "Date login"
#: authentication/templates/authentication/_msg_different_city.html:10
#: tickets/models/ticket/login_confirm.py:12
msgid "Login Date"
msgstr "日付ログイン"
#: audits/models.py:212 audits/models.py:266 audits/serializers.py:70
@ -3050,8 +3053,9 @@ msgstr "メッセージ検証コードが無効"
#: authentication/mfa/sms.py:12 authentication/serializers/password_mfa.py:16
#: authentication/serializers/password_mfa.py:24
#: settings/serializers/auth/sms.py:32 users/forms/profile.py:104
#: users/forms/profile.py:109 users/templates/users/forgot_password.html:155
#: settings/serializers/auth/sms.py:17 settings/serializers/auth/sms.py:32
#: users/forms/profile.py:104 users/forms/profile.py:109
#: users/templates/users/forgot_password.html:155
#: users/views/profile/reset.py:100
msgid "SMS"
msgstr "メッセージ"
@ -3345,10 +3349,6 @@ msgstr "こんにちは"
msgid "Your account has remote login behavior, please pay attention"
msgstr "アカウントにリモートログイン動作があります。注意してください"
#: authentication/templates/authentication/_msg_different_city.html:10
msgid "Login time"
msgstr "ログイン時間"
#: authentication/templates/authentication/_msg_different_city.html:16
msgid ""
"If you suspect that the login behavior is abnormal, please modify the "
@ -4036,9 +4036,9 @@ msgstr "関連リソース"
#: labels/serializers.py:22
#, fuzzy
#| msgid "Resource count"
msgid "Resource amount"
msgstr "リソース"
#| msgid "Resource type"
msgid "Resource count"
msgstr "リソースタイプ"
#: labels/serializers.py:28
msgid "Cannot contain \":,\""
@ -4367,7 +4367,7 @@ msgstr "ユーザーとして実行"
msgid "Runas policy"
msgstr "ユーザー ポリシー"
#: ops/models/job.py:216
#: ops/models/job.py:216 terminal/notifications.py:174
msgid "Job"
msgstr "ジョブ#ジョブ#"
@ -4391,9 +4391,11 @@ msgstr "创建方式"
msgid "VCS URL"
msgstr "VCS URL"
#: ops/notifications.py:17 rbac/tree.py:57
msgid "App ops"
msgstr "アプリ操作"
#: ops/notifications.py:17
#, fuzzy
#| msgid "Component"
msgid "Components"
msgstr "コンポーネント"
#: ops/notifications.py:18
msgid "Server performance"
@ -4436,7 +4438,9 @@ msgid "Next execution time"
msgstr "最後の実行"
#: ops/serializers/job.py:15
msgid "Run after save"
#, fuzzy
#| msgid "Run after save"
msgid "Execute after saving"
msgstr "保存後に実行"
#: ops/serializers/job.py:52
@ -4923,14 +4927,18 @@ msgstr "資産の改ざん"
msgid "Terminal setting"
msgstr "ターミナル設定"
#: rbac/tree.py:55
msgid "Task Center"
#: rbac/tree.py:55 settings/serializers/feature.py:126
msgid "Job center"
msgstr "タスクセンター"
#: rbac/tree.py:56
msgid "My assets"
msgstr "私の資産"
#: rbac/tree.py:57
msgid "App ops"
msgstr "アプリ操作"
#: rbac/tree.py:58 terminal/models/applet/applet.py:52
#: terminal/models/applet/applet.py:317 terminal/models/applet/host.py:30
#: terminal/serializers/applet.py:15
@ -4946,7 +4954,7 @@ msgid "Ticket comment"
msgstr "チケットコメント"
#: rbac/tree.py:130 settings/serializers/feature.py:109
#: tickets/models/ticket/general.py:307
#: settings/serializers/feature.py:111 tickets/models/ticket/general.py:307
msgid "Ticket"
msgstr "チケット"
@ -5138,23 +5146,15 @@ msgid "Forgot Password URL"
msgstr "パスワードのURLを忘れた"
#: settings/serializers/auth/base.py:29
msgid "Enable login redirect msg"
msgid "Login redirection prompt"
msgstr "ログインリダイレクトの有効化msg"
#: settings/serializers/auth/cas.py:10
msgid "CAS"
msgstr "CAS"
#: settings/serializers/auth/cas.py:12
msgid "Enable CAS Auth"
msgstr "CAS 認証の有効化"
#: settings/serializers/auth/cas.py:13 settings/serializers/auth/oidc.py:54
msgid "Server url"
msgstr "サービス側アドレス"
#: settings/serializers/auth/cas.py:16
msgid "Proxy server url"
msgid "Proxy Server"
msgstr "コールバックアドレス"
#: settings/serializers/auth/cas.py:18 settings/serializers/auth/oauth2.py:54
@ -5171,19 +5171,19 @@ msgid "Enable attributes map"
msgstr "属性マップの有効化"
#: settings/serializers/auth/cas.py:28 settings/serializers/auth/saml2.py:32
msgid "Rename attr"
msgid "User attribute"
msgstr "マッピングのプロパティ"
#: settings/serializers/auth/cas.py:29
msgid "Create user if not"
msgid "Create user"
msgstr "そうでない場合はユーザーを作成"
#: settings/serializers/auth/dingtalk.py:15
msgid "Enable DingTalk Auth"
msgid "Dingtalk"
msgstr "ピン認証の有効化"
#: settings/serializers/auth/feishu.py:16
msgid "Enable FeiShu Auth"
msgid "Lark"
msgstr "飛本認証の有効化"
#: settings/serializers/auth/ldap.py:39
@ -5191,7 +5191,7 @@ msgid "LDAP"
msgstr "LDAP"
#: settings/serializers/auth/ldap.py:42
msgid "LDAP server"
msgid "Server"
msgstr "LDAPサーバー"
#: settings/serializers/auth/ldap.py:43
@ -5219,11 +5219,6 @@ msgstr "ユーザー検索フィルター"
msgid "Choice may be (cn|uid|sAMAccountName)=%(user)s)"
msgstr "選択は (cnまたはuidまたはsAMAccountName)=%(user)s)"
#: settings/serializers/auth/ldap.py:58 settings/serializers/auth/oauth2.py:56
#: settings/serializers/auth/oidc.py:37
msgid "User attr map"
msgstr "ユーザー属性マッピング"
#: settings/serializers/auth/ldap.py:59
msgid ""
"User attr map present how to map LDAP user attr to jumpserver, username,name,"
@ -5240,18 +5235,10 @@ msgstr "接続タイムアウト (秒)"
msgid "Search paged size (piece)"
msgstr "ページサイズを検索 (じょう)"
#: settings/serializers/auth/ldap.py:84
msgid "Enable LDAP auth"
msgstr "LDAP認証の有効化"
#: settings/serializers/auth/oauth2.py:18
msgid "OAuth2"
msgstr "OAuth2"
#: settings/serializers/auth/oauth2.py:21
msgid "Enable OAuth2 Auth"
msgstr "OAuth2認証の有効化"
#: settings/serializers/auth/oauth2.py:24
msgid "Logo"
msgstr "アイコン"
@ -5270,23 +5257,23 @@ msgid "Client Secret"
msgstr "クライアント秘密"
#: settings/serializers/auth/oauth2.py:39 settings/serializers/auth/oidc.py:68
msgid "Provider auth endpoint"
msgid "Authorization endpoint"
msgstr "認証エンドポイントアドレス"
#: settings/serializers/auth/oauth2.py:42 settings/serializers/auth/oidc.py:71
msgid "Provider token endpoint"
msgid "Token endpoint"
msgstr "プロバイダートークンエンドポイント"
#: settings/serializers/auth/oauth2.py:45 settings/serializers/auth/oidc.py:30
msgid "Client authentication method"
msgid "Request method"
msgstr "クライアント認証方式"
#: settings/serializers/auth/oauth2.py:49 settings/serializers/auth/oidc.py:77
msgid "Provider userinfo endpoint"
msgid "Userinfo endpoint"
msgstr "プロバイダーuserinfoエンドポイント"
#: settings/serializers/auth/oauth2.py:52 settings/serializers/auth/oidc.py:80
msgid "Provider end session endpoint"
msgid "End session endpoint"
msgstr "プロバイダーのセッション終了エンドポイント"
#: settings/serializers/auth/oauth2.py:59 settings/serializers/auth/oidc.py:98
@ -5307,7 +5294,7 @@ msgid "Share session"
msgstr "セッションの共有"
#: settings/serializers/auth/oidc.py:34
msgid "Ignore ssl verification"
msgid "Ignore SSL verification"
msgstr "Ssl検証を無視する"
#: settings/serializers/auth/oidc.py:38
@ -5334,24 +5321,20 @@ msgstr "Keycloakを使用する"
msgid "Realm name"
msgstr "レルム名"
#: settings/serializers/auth/oidc.py:63
msgid "Enable OPENID Auth"
msgstr "OIDC認証の有効化"
#: settings/serializers/auth/oidc.py:65
msgid "Provider endpoint"
msgstr "プロバイダーエンドポイント"
#: settings/serializers/auth/oidc.py:74
msgid "Provider jwks endpoint"
msgid "JWKS endpoint"
msgstr "プロバイダーjwksエンドポイント"
#: settings/serializers/auth/oidc.py:83
msgid "Provider sign alg"
msgid "Signature algorithm"
msgstr "プロビダーサインalg"
#: settings/serializers/auth/oidc.py:86
msgid "Provider sign key"
msgid "Signing key"
msgstr "プロバイダ署名キー"
#: settings/serializers/auth/oidc.py:88
@ -5359,11 +5342,11 @@ msgid "Scopes"
msgstr "スコープ"
#: settings/serializers/auth/oidc.py:90
msgid "Id token max age (s)"
msgid "ID Token max age (s)"
msgstr "IDトークンの最大年齢 (秒)"
#: settings/serializers/auth/oidc.py:93
msgid "Id token include claims"
msgid "ID Token include claims"
msgstr "IDトークンにはクレームが含まれます"
#: settings/serializers/auth/oidc.py:95
@ -5374,16 +5357,12 @@ msgstr "使用状態"
msgid "Use nonce"
msgstr "Nonceを使用"
#: settings/serializers/auth/passkey.py:11
msgid "Enable passkey Auth"
msgstr "パスキー認証を有効にする"
#: settings/serializers/auth/passkey.py:12
msgid "Only SSL domain can use passkey auth"
msgstr "SSLドメインのみがパスキー認証を使用できます"
#: settings/serializers/auth/passkey.py:15
msgid "FIDO server ID"
msgid "FIDO Server ID"
msgstr "FIDOサーバーID"
#: settings/serializers/auth/passkey.py:17
@ -5396,17 +5375,13 @@ msgstr ""
"ます"
#: settings/serializers/auth/passkey.py:22
msgid "FIDO server name"
msgid "FIDO Server name"
msgstr "FIDOサーバー名"
#: settings/serializers/auth/radius.py:13
msgid "Radius"
msgstr "Radius"
#: settings/serializers/auth/radius.py:15
msgid "Enable Radius Auth"
msgstr "Radius認証の有効化"
#: settings/serializers/auth/radius.py:21
msgid "OTP in Radius"
msgstr "Radius のOTP"
@ -5415,17 +5390,13 @@ msgstr "Radius のOTP"
msgid "SAML2"
msgstr "SAML2"
#: settings/serializers/auth/saml2.py:13
msgid "Enable SAML2 Auth"
msgstr "SAML2認証の有効化"
#: settings/serializers/auth/saml2.py:16
msgid "IDP metadata URL"
msgstr "IDP metadata アドレス"
msgid "IDP Metadata URL"
msgstr "IDP Metadataアドレス"
#: settings/serializers/auth/saml2.py:19
msgid "IDP metadata XML"
msgstr "IDP metadata XML"
msgid "IDP Metadata XML"
msgstr "IDP Metadata XML"
#: settings/serializers/auth/saml2.py:22
msgid "SP advanced settings"
@ -5439,14 +5410,6 @@ msgstr "SP プライベートキー"
msgid "SP cert"
msgstr "SP 証明書"
#: settings/serializers/auth/slack.py:12
msgid "Enable Slack Auth"
msgstr "Slack 認証の有効化"
#: settings/serializers/auth/sms.py:17
msgid "Enable SMS"
msgstr "SMSの有効化"
#: settings/serializers/auth/sms.py:19
msgid "SMS provider / Protocol"
msgstr "SMSプロバイダ / プロトコル"
@ -5479,19 +5442,19 @@ msgid "Signature channel number"
msgstr "署名チャネル番号"
#: settings/serializers/auth/sms.py:73
msgid "Enterprise code(SP id)"
msgid "Enterprise code"
msgstr "企業コード(SP id)"
#: settings/serializers/auth/sms.py:74
msgid "Shared secret(Shared secret)"
msgid "Shared secret"
msgstr "パスワードを共有する(Shared secret)"
#: settings/serializers/auth/sms.py:75
msgid "Original number(Src id)"
msgid "Original number"
msgstr "元の番号(Src id)"
#: settings/serializers/auth/sms.py:76
msgid "Business type(Service id)"
msgid "Business type"
msgstr "ビジネス・タイプ(Service id)"
#: settings/serializers/auth/sms.py:80
@ -5518,10 +5481,6 @@ msgstr "署名+テンプレートの長さは65文字以内"
msgid "URL"
msgstr "URL"
#: settings/serializers/auth/sms.py:106
msgid "Request method"
msgstr "請求方法です"
#: settings/serializers/auth/sso.py:16
msgid "Enable SSO auth"
msgstr "SSO Token認証の有効化"
@ -5540,10 +5499,6 @@ msgstr "Token有効期間"
msgid "Unit: second"
msgstr "単位: 秒"
#: settings/serializers/auth/wecom.py:15
msgid "Enable WeCom Auth"
msgstr "企業微信認証の有効化"
#: settings/serializers/basic.py:11
msgid "Site URL"
msgstr "サイトURL"
@ -5636,7 +5591,7 @@ msgstr ""
"この期間を超えるセッション、録音、およびコマンド レコードは削除されます (デー"
"タベースのバックアップに影響し、OSS などには影響しません)"
#: settings/serializers/feature.py:18
#: settings/serializers/feature.py:18 settings/serializers/msg.py:68
msgid "Subject"
msgstr "件名"
@ -5644,16 +5599,13 @@ msgstr "件名"
msgid "More URL"
msgstr "もっとURL"
#: settings/serializers/feature.py:36 settings/serializers/feature.py:39
#: settings/serializers/feature.py:36 settings/serializers/feature.py:38
#: settings/serializers/feature.py:39
msgid "Announcement"
msgstr "発表"
#: settings/serializers/feature.py:38
msgid "Enable announcement"
msgstr "アナウンスの有効化"
#: settings/serializers/feature.py:46
msgid "Enable Vault"
msgid "Vault"
msgstr "有効化 Vault"
#: settings/serializers/feature.py:55
@ -5675,14 +5627,10 @@ msgstr ""
"所定の数を超える履歴アカウントを確認して削除します。 値が 999 以上の場合、履"
"歴アカウントの削除は実行されません。"
#: settings/serializers/feature.py:71
#: settings/serializers/feature.py:71 settings/serializers/feature.py:75
msgid "Chat AI"
msgstr "チャットAI"
#: settings/serializers/feature.py:75
msgid "Enable Chat AI"
msgstr "チャットAIを起動する"
#: settings/serializers/feature.py:78
msgid "Base URL"
msgstr "基本的なUrl"
@ -5695,12 +5643,8 @@ msgstr "API Key"
msgid "GPT Model"
msgstr "GPTモデル"
#: settings/serializers/feature.py:111
msgid "Enable tickets"
msgstr "チケットを有効にする"
#: settings/serializers/feature.py:114
msgid "Ticket authorize default time"
msgid "Default period"
msgstr "デフォルト製造オーダ承認時間"
#: settings/serializers/feature.py:117
@ -5708,30 +5652,26 @@ msgid "hour"
msgstr "時"
#: settings/serializers/feature.py:118
msgid "Ticket authorize default time unit"
msgid "Default unit"
msgstr "デフォルト製造オーダ承認時間単位"
#: settings/serializers/feature.py:123
msgid "Feature"
msgstr "機能"
#: settings/serializers/feature.py:126
msgid "Operation center"
msgstr "職業センター"
#: settings/serializers/feature.py:127
msgid "Allow user run batch command or not using ansible"
msgstr "ユーザー実行バッチコマンドを許可するか、ansibleを使用しない"
#: settings/serializers/feature.py:131
msgid "Operation center command blacklist"
msgid "Command blacklist"
msgstr "オペレーション センター コマンド ブラックリスト"
#: settings/serializers/feature.py:132
msgid "Commands that are not allowed execute."
msgstr "実行が許可されていないコマンド"
#: settings/serializers/feature.py:137
#: settings/serializers/feature.py:137 settings/serializers/feature.py:140
#: terminal/models/virtualapp/provider.py:17
#: terminal/models/virtualapp/virtualapp.py:36
#: terminal/models/virtualapp/virtualapp.py:97
@ -5739,10 +5679,6 @@ msgstr "実行が許可されていないコマンド"
msgid "Virtual app"
msgstr "仮想アプリケーション"
#: settings/serializers/feature.py:140
msgid "Enable virtual app"
msgstr "仮想アプリケーションの有効化"
#: settings/serializers/msg.py:25
#, fuzzy
#| msgid "SMTP host"
@ -5758,7 +5694,7 @@ msgid "Tips: Some provider use token except password"
msgstr "ヒント: 一部のプロバイダーはパスワード以外のトークンを使用します"
#: settings/serializers/msg.py:39
msgid "Send user"
msgid "Sender"
msgstr "ユーザーを送信"
#: settings/serializers/msg.py:40
@ -5800,10 +5736,6 @@ msgid ""
"This is used by default if no email is returned during SSO authentication"
msgstr "これは、SSO認証中にメールが返されない場合にデフォルトで使用されます。"
#: settings/serializers/msg.py:68
msgid "Create user email subject"
msgstr "ユーザーメール件名の作成"
#: settings/serializers/msg.py:69
msgid ""
"Tips: When creating a user, send the subject of the email (eg:Create account "
@ -5813,7 +5745,7 @@ msgstr ""
"正常に作成)"
#: settings/serializers/msg.py:73
msgid "Create user honorific"
msgid "Honorific"
msgstr "ユーザー敬語の作成"
#: settings/serializers/msg.py:74
@ -5821,10 +5753,6 @@ msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)"
msgstr ""
"ヒント: ユーザーを作成するときは、メールの敬語を送信します (例: こんにちは)"
#: settings/serializers/msg.py:78
msgid "Create user email content"
msgstr "ユーザーのメールコンテンツを作成する"
#: settings/serializers/msg.py:80
#, python-brace-format
msgid ""
@ -5869,7 +5797,7 @@ msgstr ""
"れます。"
#: settings/serializers/security.py:26
msgid "Number of repeated historical passwords"
msgid "Recent password count"
msgstr "繰り返された履歴パスワードの数"
#: settings/serializers/security.py:28
@ -5881,27 +5809,27 @@ msgstr ""
"にすることはできません"
#: settings/serializers/security.py:34
msgid "Password minimum length"
msgid "Minimum length (User)"
msgstr "パスワードの最小長"
#: settings/serializers/security.py:38
msgid "Admin user password minimum length"
msgid "Minimum length (Admin)"
msgstr "管理者ユーザーパスワードの最小長"
#: settings/serializers/security.py:41
msgid "Must contain capital"
msgid "Uppercase"
msgstr "資本を含める必要があります"
#: settings/serializers/security.py:44
msgid "Must contain lowercase"
msgid "Lowercase"
msgstr "小文字を含める必要があります。"
#: settings/serializers/security.py:47
msgid "Must contain numeric"
msgid "Digits"
msgstr "数値を含める必要があります"
#: settings/serializers/security.py:50
msgid "Must contain special"
msgid "Special characters"
msgstr "特別な"
#: settings/serializers/security.py:55
@ -5913,27 +5841,19 @@ msgstr ""
"はできません。"
#: settings/serializers/security.py:63
msgid "Limit the number of user login failures"
msgid "Login failures count"
msgstr "ユーザーログインの失敗数を制限する"
#: settings/serializers/security.py:67
msgid "Block user login interval (minute)"
msgid "Login failure period (minute)"
msgstr "ユーザーのログイン間隔をブロックする(分)"
#: settings/serializers/security.py:73
msgid "Limit the number of IP login failures"
msgstr "IPログイン失敗の数を制限する"
#: settings/serializers/security.py:77
msgid "Block IP login interval (minute)"
msgstr "IPログイン間隔をブロックする"
#: settings/serializers/security.py:81
msgid "Login IP White List"
msgid "Login IP whitelist"
msgstr "ログインIPホワイトリスト"
#: settings/serializers/security.py:86
msgid "Login IP Black List"
msgid "Login IP blacklist"
msgstr "ログインIPブラックリスト"
#: settings/serializers/security.py:91
@ -5995,7 +5915,7 @@ msgid "Global MFA auth"
msgstr "グローバル有効化MFA認証"
#: settings/serializers/security.py:124
msgid "Third-party login users perform MFA authentication"
msgid "Third-party login MFA"
msgstr "サードパーティのログインユーザーがMFA認証を実行"
#: settings/serializers/security.py:125
@ -6038,7 +5958,7 @@ msgid "Reset password and send SMS code expiration time"
msgstr "パスワードをリセットしてSMSコードの有効期限を送信します"
#: settings/serializers/security.py:153
msgid "Enable Login dynamic code"
msgid "Login dynamic code"
msgstr "ログイン動的コードの有効化"
#: settings/serializers/security.py:154
@ -6050,7 +5970,7 @@ msgstr ""
"ます"
#: settings/serializers/security.py:158
msgid "Enable Login captcha"
msgid "Login captcha"
msgstr "ログインcaptchaの有効化"
#: settings/serializers/security.py:159
@ -6058,7 +5978,7 @@ msgid "Enable captcha to prevent robot authentication"
msgstr "Captchaを有効にしてロボット認証を防止する"
#: settings/serializers/security.py:162
msgid "Remote Login Protection"
msgid "Suspicious Login Verification"
msgstr "リモートログイン保護"
#: settings/serializers/security.py:164
@ -6072,7 +5992,7 @@ msgstr ""
"モートログインリマインダーを送信します"
#: settings/serializers/security.py:170
msgid "Unused user timeout (day)"
msgid "Auto Disable Threshold (day)"
msgstr "未使用のユーザータイムアウト(日)"
#: settings/serializers/security.py:171
@ -6084,7 +6004,7 @@ msgstr ""
"します。"
#: settings/serializers/security.py:191
msgid "Enable watermark"
msgid "Watermark"
msgstr "透かしの有効化"
#: settings/serializers/security.py:192
@ -6092,7 +6012,7 @@ msgid "Enabled, the web session and replay contains watermark information"
msgstr "Webセッションとリプレイには透かし情報が含まれています。"
#: settings/serializers/security.py:196
msgid "Connection max idle time (minute)"
msgid "Max idle time (minute)"
msgstr "接続最大アイドル時間(分)"
#: settings/serializers/security.py:197
@ -6100,7 +6020,7 @@ msgid "If idle time more than it, disconnect connection."
msgstr "この設定以上の操作がない場合、接続は切断されます"
#: settings/serializers/security.py:201
msgid "Session max connection time (hour)"
msgid "Max online time (hour)"
msgstr "セッション最大接続時間(時間)"
#: settings/serializers/security.py:202
@ -6147,7 +6067,7 @@ msgid "Auto"
msgstr "自動"
#: settings/serializers/terminal.py:22
msgid "Enable terminal register"
msgid "Terminal registration"
msgstr "ターミナルレジスタの有効化"
#: settings/serializers/terminal.py:24
@ -6168,18 +6088,18 @@ msgstr "鍵認証"
#: settings/serializers/terminal.py:30
msgid ""
"Tips: If use other auth method, like AD/LDAP, you should disable this to "
"Information: If use other auth method, like AD/LDAP, you should disable this to "
"avoid being able to log in after deleting"
msgstr ""
"ヒント: AD/LDAPなどの他の認証方法を使用する場合は、サードパーティ製システムの"
"削除後にこの項目を無効にする必要があります, ログインも可能"
#: settings/serializers/terminal.py:34
msgid "List sort by"
msgid "Asset list sorting"
msgstr "リストの並べ替え"
#: settings/serializers/terminal.py:37
msgid "List page size"
msgid "Asset list page size"
msgstr "ページサイズを一覧表示"
#: settings/serializers/terminal.py:39
@ -6191,7 +6111,7 @@ msgid "Enable Razor"
msgstr "Razor の有効化"
#: settings/serializers/terminal.py:41
msgid "Enable SSH Client"
msgid "SSH Client"
msgstr "SSH Clientの有効化"
#: settings/tasks/ldap.py:28
@ -6612,10 +6532,6 @@ msgstr "出力"
msgid "Risk level"
msgstr "リスクレベル"
#: terminal/connect_methods.py:29
msgid "SSH Client"
msgstr "SSH クライアント"
#: terminal/connect_methods.py:30
msgid "SSH Guide"
msgstr "SSH ガイド人"
@ -7042,7 +6958,7 @@ msgstr "セッション"
msgid "Command warning"
msgstr "コマンド警告"
#: terminal/notifications.py:130
#: terminal/notifications.py:130 terminal/notifications.py:175
msgid "Command reject"
msgstr "コマンド拒否"
@ -7050,18 +6966,10 @@ msgstr "コマンド拒否"
msgid "Level"
msgstr "レベル"
#: terminal/notifications.py:175
msgid "Batch danger command alert"
msgstr "一括危険コマンド警告"
#: terminal/notifications.py:224
msgid "Command and replay storage"
msgstr "コマンド及び録画記憶"
#: terminal/notifications.py:225
msgid "Connectivity alarm"
msgstr "接続性アラーム"
#: terminal/notifications.py:240 terminal/tasks.py:146
msgid "Test failure: Account invalid"
msgstr "テスト失敗: アカウントが無効"
@ -7207,10 +7115,6 @@ msgstr "無効なコマンドグループID"
msgid "Invalid session id"
msgstr "無効なセッションID"
#: terminal/serializers/command.py:72
msgid "Account "
msgstr "アカウント"
#: terminal/serializers/command.py:74
msgid "Timestamp"
msgstr "タイムスタンプ"
@ -7296,7 +7200,7 @@ msgstr "バケット"
#: terminal/serializers/storage.py:33
#: xpack/plugins/cloud/serializers/account_attrs.py:17
msgid "Access key id"
msgid "Access key ID"
msgstr "アクセスキー"
#: terminal/serializers/storage.py:37
@ -7686,10 +7590,6 @@ msgstr "ログインアカウント"
msgid "Apply Login Asset Ticket"
msgstr "資産ログインレビュー製造オーダ"
#: tickets/models/ticket/login_confirm.py:12
msgid "Login datetime"
msgstr "ログイン日時"
#: tickets/models/ticket/login_confirm.py:15
msgid "Apply Login Ticket"
msgstr "ユーザーログインレビュー製造オーダ"
@ -8194,7 +8094,7 @@ msgid "Is OTP bound"
msgstr "仮想MFAがバインドされているか"
#: users/serializers/user.py:101
msgid "Can public key authentication"
msgid "Can public key auth"
msgstr "公開鍵認証が可能"
#: users/serializers/user.py:166
@ -8203,7 +8103,7 @@ msgstr ""
#: users/serializers/user.py:169
#, fuzzy
#| msgid "Send user"
#| msgid "Sender"
msgid "Superuser"
msgstr "ユーザーを送信"
@ -9180,7 +9080,6 @@ msgid "Logo of logout page"
msgstr "ログアウトページのロゴ"
#: xpack/plugins/interface/models.py:41
#: xpack/plugins/interface/serializers/interface.py:26
msgid "Theme"
msgstr "テーマ"
@ -9196,14 +9095,6 @@ msgstr "公安網登録番号"
msgid "Interface setting"
msgstr "インターフェイスの設定"
#: xpack/plugins/interface/serializers/interface.py:37
msgid "Wide logo on top"
msgstr ""
#: xpack/plugins/interface/serializers/interface.py:38
msgid "Small logo without text"
msgstr ""
#: xpack/plugins/license/api.py:52
msgid "License import successfully"
msgstr "ライセンスのインポートに成功"
@ -9232,6 +9123,18 @@ msgstr "エンタープライズプロフェッショナル版"
msgid "Ultimate edition"
msgstr "エンタープライズ・フラッグシップ・エディション"
#~ msgid "Email Subject"
#~ msgstr "ユーザーメール件名の作成"
#~ msgid "Command reject (Job)"
#~ msgstr "一括危険コマンド警告"
#~ msgid "Account "
#~ msgstr "アカウント"
#~ msgid "Login time"
#~ msgstr "ログイン時間"
#~ msgid "SMTP port"
#~ msgstr "SMTPポート"

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c0874d399c18f41aa406ea85ee8eaf60fb870eadcd31ed7f1d9a70c10e83240e
size 141057
oid sha256:7422fdff60206636c98e63ee17b1b509d7d6678c95379163e6279c3e55e27eb4
size 139220

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: JumpServer 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-20 15:15+0800\n"
"POT-Creation-Date: 2024-02-26 15:45+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"
@ -297,6 +297,7 @@ msgstr "来源 ID"
#: ops/models/base.py:18 perms/models/asset_permission.py:75
#: perms/serializers/permission.py:45 settings/serializers/msg.py:33
#: terminal/backends/command/models.py:18 terminal/models/session/session.py:33
#: terminal/serializers/command.py:72
#: terminal/templates/terminal/_msg_command_warning.html:8
#: terminal/templates/terminal/_msg_session_sharing.html:8
#: tickets/models/ticket/command_confirm.py:13 xpack/plugins/cloud/models.py:89
@ -1142,7 +1143,7 @@ msgstr "正则表达式"
#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
#: settings/models.py:182 settings/serializers/feature.py:19
#: xpack/plugins/license/models.py:30
#: settings/serializers/msg.py:78 xpack/plugins/license/models.py:30
msgid "Content"
msgstr "内容"
@ -1815,7 +1816,7 @@ msgstr "收集资产信息"
msgid "Ping asset"
msgstr "测试资产"
#: assets/models/base.py:19
#: assets/models/base.py:19 terminal/notifications.py:225
msgid "Connectivity"
msgstr "连接性"
@ -2523,7 +2524,9 @@ msgid "MFA"
msgstr "MFA"
#: audits/models.py:210
msgid "Date login"
#: authentication/templates/authentication/_msg_different_city.html:10
#: tickets/models/ticket/login_confirm.py:12
msgid "Login Date"
msgstr "登录日期"
#: audits/models.py:212 audits/models.py:266 audits/serializers.py:70
@ -3008,8 +3011,9 @@ msgstr "短信验证码校验失败"
#: authentication/mfa/sms.py:12 authentication/serializers/password_mfa.py:16
#: authentication/serializers/password_mfa.py:24
#: settings/serializers/auth/sms.py:32 users/forms/profile.py:104
#: users/forms/profile.py:109 users/templates/users/forgot_password.html:155
#: settings/serializers/auth/sms.py:17 settings/serializers/auth/sms.py:32
#: users/forms/profile.py:104 users/forms/profile.py:109
#: users/templates/users/forgot_password.html:155
#: users/views/profile/reset.py:100
msgid "SMS"
msgstr "短信"
@ -3301,10 +3305,6 @@ msgstr "你好"
msgid "Your account has remote login behavior, please pay attention"
msgstr "你的账号存在异地登录行为,请关注。"
#: authentication/templates/authentication/_msg_different_city.html:10
msgid "Login time"
msgstr "登录日期"
#: authentication/templates/authentication/_msg_different_city.html:16
msgid ""
"If you suspect that the login behavior is abnormal, please modify the "
@ -3972,9 +3972,7 @@ msgid "Labeled resource"
msgstr "关联的资源"
#: labels/serializers.py:22
#, fuzzy
#| msgid "Resource count"
msgid "Resource amount"
msgid "Resource count"
msgstr "资源数量"
#: labels/serializers.py:28
@ -4290,7 +4288,7 @@ msgstr "运行用户"
msgid "Runas policy"
msgstr "用户策略"
#: ops/models/job.py:216
#: ops/models/job.py:216 terminal/notifications.py:174
msgid "Job"
msgstr "作业"
@ -4314,9 +4312,11 @@ msgstr "创建方式"
msgid "VCS URL"
msgstr "VCS URL"
#: ops/notifications.py:17 rbac/tree.py:57
msgid "App ops"
msgstr "作业中心"
#: ops/notifications.py:17
#, fuzzy
#| msgid "Component"
msgid "Components"
msgstr "组件"
#: ops/notifications.py:18
msgid "Server performance"
@ -4355,7 +4355,7 @@ msgid "Next execution time"
msgstr "下次执行时间"
#: ops/serializers/job.py:15
msgid "Run after save"
msgid "Execute after saving"
msgstr "保存后执行"
#: ops/serializers/job.py:52
@ -4826,14 +4826,18 @@ msgstr "资产改密"
msgid "Terminal setting"
msgstr "终端设置"
#: rbac/tree.py:55
msgid "Task Center"
#: rbac/tree.py:55 settings/serializers/feature.py:126
msgid "Job center"
msgstr "任务中心"
#: rbac/tree.py:56
msgid "My assets"
msgstr "我的资产"
#: rbac/tree.py:57
msgid "App ops"
msgstr "作业中心"
#: rbac/tree.py:58 terminal/models/applet/applet.py:52
#: terminal/models/applet/applet.py:317 terminal/models/applet/host.py:30
#: terminal/serializers/applet.py:15
@ -4849,7 +4853,7 @@ msgid "Ticket comment"
msgstr "工单评论"
#: rbac/tree.py:130 settings/serializers/feature.py:109
#: tickets/models/ticket/general.py:307
#: settings/serializers/feature.py:111 tickets/models/ticket/general.py:307
msgid "Ticket"
msgstr "工单"
@ -4973,10 +4977,8 @@ msgid "Chat prompt"
msgstr "聊天提示"
#: settings/notifications.py:23
#, fuzzy
#| msgid "Notification of account backup route task results"
msgid "Notification of Synchronized LDAP User Task Results"
msgstr "账号备份任务结果通知"
msgstr "同步 LDAP 用户任务结果的通知"
#: settings/serializers/auth/base.py:10
msgid "Authentication"
@ -5035,23 +5037,15 @@ msgid "Forgot Password URL"
msgstr "忘记密码 URL"
#: settings/serializers/auth/base.py:29
msgid "Enable login redirect msg"
msgid "Login redirection prompt"
msgstr "启用登录跳转提示"
#: settings/serializers/auth/cas.py:10
msgid "CAS"
msgstr "CAS"
#: settings/serializers/auth/cas.py:12
msgid "Enable CAS Auth"
msgstr "启用 CAS 认证"
#: settings/serializers/auth/cas.py:13 settings/serializers/auth/oidc.py:54
msgid "Server url"
msgstr "服务端地址"
#: settings/serializers/auth/cas.py:16
msgid "Proxy server url"
msgid "Proxy Server"
msgstr "回调地址"
#: settings/serializers/auth/cas.py:18 settings/serializers/auth/oauth2.py:54
@ -5068,19 +5062,19 @@ msgid "Enable attributes map"
msgstr "启用属性映射"
#: settings/serializers/auth/cas.py:28 settings/serializers/auth/saml2.py:32
msgid "Rename attr"
msgid "User attribute"
msgstr "映射属性"
#: settings/serializers/auth/cas.py:29
msgid "Create user if not"
msgid "Create user"
msgstr "创建用户(如果不存在)"
#: settings/serializers/auth/dingtalk.py:15
msgid "Enable DingTalk Auth"
msgid "Dingtalk"
msgstr "启用钉钉认证"
#: settings/serializers/auth/feishu.py:16
msgid "Enable FeiShu Auth"
msgid "Lark"
msgstr "启用飞书认证"
#: settings/serializers/auth/ldap.py:39
@ -5088,7 +5082,7 @@ msgid "LDAP"
msgstr "LDAP"
#: settings/serializers/auth/ldap.py:42
msgid "LDAP server"
msgid "Server"
msgstr "LDAP 地址"
#: settings/serializers/auth/ldap.py:43
@ -5116,11 +5110,6 @@ msgstr "用户过滤器"
msgid "Choice may be (cn|uid|sAMAccountName)=%(user)s)"
msgstr "可能的选项是(cn或uid或sAMAccountName=%(user)s)"
#: settings/serializers/auth/ldap.py:58 settings/serializers/auth/oauth2.py:56
#: settings/serializers/auth/oidc.py:37
msgid "User attr map"
msgstr "用户属性映射"
#: settings/serializers/auth/ldap.py:59
msgid ""
"User attr map present how to map LDAP user attr to jumpserver, username,name,"
@ -5137,18 +5126,10 @@ msgstr "连接超时时间 (秒)"
msgid "Search paged size (piece)"
msgstr "搜索分页数量 (条)"
#: settings/serializers/auth/ldap.py:84
msgid "Enable LDAP auth"
msgstr "启用 LDAP 认证"
#: settings/serializers/auth/oauth2.py:18
msgid "OAuth2"
msgstr "OAuth2"
#: settings/serializers/auth/oauth2.py:21
msgid "Enable OAuth2 Auth"
msgstr "启用 OAuth2 认证"
#: settings/serializers/auth/oauth2.py:24
msgid "Logo"
msgstr "图标"
@ -5167,23 +5148,23 @@ msgid "Client Secret"
msgstr "客户端密钥"
#: settings/serializers/auth/oauth2.py:39 settings/serializers/auth/oidc.py:68
msgid "Provider auth endpoint"
msgid "Authorization endpoint"
msgstr "授权端点地址"
#: settings/serializers/auth/oauth2.py:42 settings/serializers/auth/oidc.py:71
msgid "Provider token endpoint"
msgid "Token endpoint"
msgstr "token 端点地址"
#: settings/serializers/auth/oauth2.py:45 settings/serializers/auth/oidc.py:30
msgid "Client authentication method"
msgid "Request method"
msgstr "客户端认证方式"
#: settings/serializers/auth/oauth2.py:49 settings/serializers/auth/oidc.py:77
msgid "Provider userinfo endpoint"
msgid "Userinfo endpoint"
msgstr "用户信息端点地址"
#: settings/serializers/auth/oauth2.py:52 settings/serializers/auth/oidc.py:80
msgid "Provider end session endpoint"
msgid "End session endpoint"
msgstr "注销会话端点地址"
#: settings/serializers/auth/oauth2.py:59 settings/serializers/auth/oidc.py:98
@ -5191,10 +5172,6 @@ msgstr "注销会话端点地址"
msgid "Always update user"
msgstr "总是更新用户信息"
#: settings/serializers/auth/oidc.py:12
msgid "OIDC"
msgstr "OIDC"
#: settings/serializers/auth/oidc.py:16
msgid "Base site URL"
msgstr "JumpServer 地址"
@ -5204,7 +5181,7 @@ msgid "Share session"
msgstr "共享会话"
#: settings/serializers/auth/oidc.py:34
msgid "Ignore ssl verification"
msgid "Ignore SSL verification"
msgstr "忽略 SSL 证书验证"
#: settings/serializers/auth/oidc.py:38
@ -5232,7 +5209,7 @@ msgid "Realm name"
msgstr "域"
#: settings/serializers/auth/oidc.py:63
msgid "Enable OPENID Auth"
msgid "OIDC"
msgstr "启用 OIDC 认证"
#: settings/serializers/auth/oidc.py:65
@ -5240,15 +5217,15 @@ msgid "Provider endpoint"
msgstr "端点地址"
#: settings/serializers/auth/oidc.py:74
msgid "Provider jwks endpoint"
msgid "JWKS endpoint"
msgstr "jwks 端点地址"
#: settings/serializers/auth/oidc.py:83
msgid "Provider sign alg"
msgid "Signature algorithm"
msgstr "签名算法"
#: settings/serializers/auth/oidc.py:86
msgid "Provider sign key"
msgid "Signing key"
msgstr "签名 Key"
#: settings/serializers/auth/oidc.py:88
@ -5256,11 +5233,11 @@ msgid "Scopes"
msgstr "连接范围"
#: settings/serializers/auth/oidc.py:90
msgid "Id token max age (s)"
msgid "ID Token max age (s)"
msgstr "令牌有效时间 (秒)"
#: settings/serializers/auth/oidc.py:93
msgid "Id token include claims"
msgid "ID Token include claims"
msgstr "声明"
#: settings/serializers/auth/oidc.py:95
@ -5271,16 +5248,12 @@ msgstr "使用状态"
msgid "Use nonce"
msgstr "临时使用"
#: settings/serializers/auth/passkey.py:11
msgid "Enable passkey Auth"
msgstr "启用 Passkey 认证"
#: settings/serializers/auth/passkey.py:12
msgid "Only SSL domain can use passkey auth"
msgstr "只有 SSL 域名可以使用 Passkey(通行密钥)认证"
#: settings/serializers/auth/passkey.py:15
msgid "FIDO server ID"
msgid "FIDO Server ID"
msgstr "Passkey 服务域名"
#: settings/serializers/auth/passkey.py:17
@ -5292,17 +5265,13 @@ msgstr ""
"DOMAINS中), 如果有多个域名,使用逗号分隔, 不需要端口号"
#: settings/serializers/auth/passkey.py:22
msgid "FIDO server name"
msgid "FIDO Server name"
msgstr "Passkey 服务名称"
#: settings/serializers/auth/radius.py:13
msgid "Radius"
msgstr "Radius"
#: settings/serializers/auth/radius.py:15
msgid "Enable Radius Auth"
msgstr "启用 Radius 认证"
#: settings/serializers/auth/radius.py:21
msgid "OTP in Radius"
msgstr "使用 Radius OTP"
@ -5311,17 +5280,13 @@ msgstr "使用 Radius OTP"
msgid "SAML2"
msgstr "SAML2"
#: settings/serializers/auth/saml2.py:13
msgid "Enable SAML2 Auth"
msgstr "启用 SAML2 认证"
#: settings/serializers/auth/saml2.py:16
msgid "IDP metadata URL"
msgstr "IDP metadata 地址"
msgid "IDP Metadata URL"
msgstr "IDP Metadata 地址"
#: settings/serializers/auth/saml2.py:19
msgid "IDP metadata XML"
msgstr "IDP metadata XML"
msgstr "IDP Metadata XML"
#: settings/serializers/auth/saml2.py:22
msgid "SP advanced settings"
@ -5335,14 +5300,6 @@ msgstr "SP 密钥"
msgid "SP cert"
msgstr "SP 证书"
#: settings/serializers/auth/slack.py:12
msgid "Enable Slack Auth"
msgstr "启用 Slack 认证"
#: settings/serializers/auth/sms.py:17
msgid "Enable SMS"
msgstr "启用 SMS"
#: settings/serializers/auth/sms.py:19
msgid "SMS provider / Protocol"
msgstr "短信服务商 / 协议"
@ -5375,19 +5332,19 @@ msgid "Signature channel number"
msgstr "签名通道号"
#: settings/serializers/auth/sms.py:73
msgid "Enterprise code(SP id)"
msgid "Enterprise code"
msgstr "企业代码(SP id)"
#: settings/serializers/auth/sms.py:74
msgid "Shared secret(Shared secret)"
msgid "Shared secret"
msgstr "共享密码(Shared secret)"
#: settings/serializers/auth/sms.py:75
msgid "Original number(Src id)"
msgid "Original number"
msgstr "原始号码(Src id)"
#: settings/serializers/auth/sms.py:76
msgid "Business type(Service id)"
msgid "Business type"
msgstr "业务类型(Service id)"
#: settings/serializers/auth/sms.py:80
@ -5413,10 +5370,6 @@ msgstr "模板+签名不能超过65个字"
msgid "URL"
msgstr "URL"
#: settings/serializers/auth/sms.py:106
msgid "Request method"
msgstr "请求方式"
#: settings/serializers/auth/sso.py:16
msgid "Enable SSO auth"
msgstr "启用 SSO 令牌认证"
@ -5434,10 +5387,6 @@ msgstr "令牌有效期"
msgid "Unit: second"
msgstr "单位: 秒"
#: settings/serializers/auth/wecom.py:15
msgid "Enable WeCom Auth"
msgstr "启用企业微信认证"
#: settings/serializers/basic.py:11
msgid "Site URL"
msgstr "当前站点 URL"
@ -5529,7 +5478,7 @@ msgid ""
msgstr ""
"会话、录像,命令记录超过该时长将会被清除 (影响数据库存储OSS 等不受影响)"
#: settings/serializers/feature.py:18
#: settings/serializers/feature.py:18 settings/serializers/msg.py:68
msgid "Subject"
msgstr "主题"
@ -5537,16 +5486,13 @@ msgstr "主题"
msgid "More URL"
msgstr "更多信息 URL"
#: settings/serializers/feature.py:36 settings/serializers/feature.py:39
#: settings/serializers/feature.py:36 settings/serializers/feature.py:38
#: settings/serializers/feature.py:39
msgid "Announcement"
msgstr "公告"
#: settings/serializers/feature.py:38
msgid "Enable announcement"
msgstr "启用公告"
#: settings/serializers/feature.py:46
msgid "Enable Vault"
msgid "Vault"
msgstr "启用 Vault"
#: settings/serializers/feature.py:55
@ -5567,14 +5513,10 @@ msgstr ""
"若特定数值小于999系统将在每日晚间自动执行任务检查并删除超出预定数量的历史"
"账号。如果该数值达到或超过999则不进行任何历史账号的删除操作。"
#: settings/serializers/feature.py:71
#: settings/serializers/feature.py:71 settings/serializers/feature.py:75
msgid "Chat AI"
msgstr "聊天 AI"
#: settings/serializers/feature.py:75
msgid "Enable Chat AI"
msgstr "启动聊天 AI"
#: settings/serializers/feature.py:78
msgid "Base URL"
msgstr "基本地址"
@ -5587,12 +5529,8 @@ msgstr "API Key"
msgid "GPT Model"
msgstr "GPT 模型"
#: settings/serializers/feature.py:111
msgid "Enable tickets"
msgstr "启用工单"
#: settings/serializers/feature.py:114
msgid "Ticket authorize default time"
msgid "Default period"
msgstr "默认工单授权时间"
#: settings/serializers/feature.py:117
@ -5600,30 +5538,26 @@ msgid "hour"
msgstr "时"
#: settings/serializers/feature.py:118
msgid "Ticket authorize default time unit"
msgid "Default unit"
msgstr "默认工单授权时间单位"
#: settings/serializers/feature.py:123
msgid "Feature"
msgstr "功能"
#: settings/serializers/feature.py:126
msgid "Operation center"
msgstr "作业中心"
#: settings/serializers/feature.py:127
msgid "Allow user run batch command or not using ansible"
msgstr "是否允许用户使用 ansible 执行批量命令"
#: settings/serializers/feature.py:131
msgid "Operation center command blacklist"
msgid "Command blacklist"
msgstr "作业中心命令黑名单"
#: settings/serializers/feature.py:132
msgid "Commands that are not allowed execute."
msgstr "不允许执行的命令"
#: settings/serializers/feature.py:137
#: settings/serializers/feature.py:137 settings/serializers/feature.py:140
#: terminal/models/virtualapp/provider.py:17
#: terminal/models/virtualapp/virtualapp.py:36
#: terminal/models/virtualapp/virtualapp.py:97
@ -5631,10 +5565,6 @@ msgstr "不允许执行的命令"
msgid "Virtual app"
msgstr "虚拟应用"
#: settings/serializers/feature.py:140
msgid "Enable virtual app"
msgstr "启用虚拟应用"
#: settings/serializers/msg.py:25
msgid "SMTP"
msgstr "SMTP"
@ -5648,7 +5578,7 @@ msgid "Tips: Some provider use token except password"
msgstr "提示:一些邮件提供商需要输入的是授权码"
#: settings/serializers/msg.py:39
msgid "Send user"
msgid "Sender"
msgstr "发件人"
#: settings/serializers/msg.py:40
@ -5688,10 +5618,6 @@ msgid ""
"This is used by default if no email is returned during SSO authentication"
msgstr "SSO认证时如果没有返回邮件地址将使用该后缀"
#: settings/serializers/msg.py:68
msgid "Create user email subject"
msgstr "邮件主题"
#: settings/serializers/msg.py:69
msgid ""
"Tips: When creating a user, send the subject of the email (eg:Create account "
@ -5699,17 +5625,13 @@ msgid ""
msgstr "提示: 创建用户时,发送设置密码邮件的主题 (例如: 创建用户成功)"
#: settings/serializers/msg.py:73
msgid "Create user honorific"
msgid "Honorific"
msgstr "邮件问候语"
#: settings/serializers/msg.py:74
msgid "Tips: When creating a user, send the honorific of the email (eg:Hello)"
msgstr "提示: 创建用户时,发送设置密码邮件的敬语 (例如: 你好)"
#: settings/serializers/msg.py:78
msgid "Create user email content"
msgstr "邮件的内容"
#: settings/serializers/msg.py:80
#, python-brace-format
msgid ""
@ -5750,7 +5672,7 @@ msgstr ""
"期前5天内由系统 (每天)自动发送给用户"
#: settings/serializers/security.py:26
msgid "Number of repeated historical passwords"
msgid "Recent password count"
msgstr "不能设置近几次密码"
#: settings/serializers/security.py:28
@ -5760,27 +5682,27 @@ msgid ""
msgstr "提示:用户重置密码时,不能为该用户前几次使用过的密码"
#: settings/serializers/security.py:34
msgid "Password minimum length"
msgid "Minimum length (User)"
msgstr "密码最小长度"
#: settings/serializers/security.py:38
msgid "Admin user password minimum length"
msgid "Minimum length (Admin)"
msgstr "管理员密码最小长度"
#: settings/serializers/security.py:41
msgid "Must contain capital"
msgid "Uppercase"
msgstr "必须包含大写字符"
#: settings/serializers/security.py:44
msgid "Must contain lowercase"
msgid "Lowercase"
msgstr "必须包含小写字符"
#: settings/serializers/security.py:47
msgid "Must contain numeric"
msgid "Digits"
msgstr "必须包含数字"
#: settings/serializers/security.py:50
msgid "Must contain special"
msgid "Special characters"
msgstr "必须包含特殊字符"
#: settings/serializers/security.py:55
@ -5790,27 +5712,19 @@ msgid ""
msgstr "当用户登录失败次数达到限制后,那么在此间隔内禁止登录"
#: settings/serializers/security.py:63
msgid "Limit the number of user login failures"
msgid "Login failures count"
msgstr "限制用户登录失败次数"
#: settings/serializers/security.py:67
msgid "Block user login interval (minute)"
msgid "Login failure period (minute)"
msgstr "禁止用户登录间隔 (分)"
#: settings/serializers/security.py:73
msgid "Limit the number of IP login failures"
msgstr "限制 IP 登录失败次数"
#: settings/serializers/security.py:77
msgid "Block IP login interval (minute)"
msgstr "禁止 IP 登录间隔 (分)"
#: settings/serializers/security.py:81
msgid "Login IP White List"
msgid "Login IP whitelist"
msgstr "IP 登录白名单"
#: settings/serializers/security.py:86
msgid "Login IP Black List"
msgid "Login IP blacklist"
msgstr "IP 登录黑名单"
#: settings/serializers/security.py:91
@ -5868,7 +5782,7 @@ msgid "Global MFA auth"
msgstr "全局启用 MFA 认证"
#: settings/serializers/security.py:124
msgid "Third-party login users perform MFA authentication"
msgid "Third-party login MFA"
msgstr "第三方认证开启 MFA"
#: settings/serializers/security.py:125
@ -5910,7 +5824,7 @@ msgid "Reset password and send SMS code expiration time"
msgstr "重置密码的验证码及发送短信的验证码过期时间"
#: settings/serializers/security.py:153
msgid "Enable Login dynamic code"
msgid "Login dynamic code"
msgstr "启用登录附加码"
#: settings/serializers/security.py:154
@ -5922,7 +5836,7 @@ msgstr ""
"码+6位数字 完成认证"
#: settings/serializers/security.py:158
msgid "Enable Login captcha"
msgid "Login captcha"
msgstr "启用登录验证码"
#: settings/serializers/security.py:159
@ -5930,7 +5844,7 @@ msgid "Enable captcha to prevent robot authentication"
msgstr "开启验证码,防止机器人登录"
#: settings/serializers/security.py:162
msgid "Remote Login Protection"
msgid "Suspicious Login Verification"
msgstr "异地登录通知"
#: settings/serializers/security.py:164
@ -5943,7 +5857,7 @@ msgstr ""
"登录提醒"
#: settings/serializers/security.py:170
msgid "Unused user timeout (day)"
msgid "Auto Disable Threshold (day)"
msgstr "不活跃用户自动禁用 (天)"
#: settings/serializers/security.py:171
@ -5953,7 +5867,7 @@ msgid ""
msgstr "每天检测一次,超过预设时间的用户自动禁用"
#: settings/serializers/security.py:191
msgid "Enable watermark"
msgid "Watermark"
msgstr "开启水印"
#: settings/serializers/security.py:192
@ -5961,7 +5875,7 @@ msgid "Enabled, the web session and replay contains watermark information"
msgstr "启用后Web 会话和录像将包含水印信息"
#: settings/serializers/security.py:196
msgid "Connection max idle time (minute)"
msgid "Max idle time (minute)"
msgstr "连接最大空闲时间 (分)"
#: settings/serializers/security.py:197
@ -5969,7 +5883,7 @@ msgid "If idle time more than it, disconnect connection."
msgstr "提示:如果超过该配置没有操作,连接会被断开"
#: settings/serializers/security.py:201
msgid "Session max connection time (hour)"
msgid "Max online time (hour)"
msgstr "会话连接最大时间 (时)"
#: settings/serializers/security.py:202
@ -6015,7 +5929,7 @@ msgid "Auto"
msgstr "自动"
#: settings/serializers/terminal.py:22
msgid "Enable terminal register"
msgid "Terminal registration"
msgstr "组件注册"
#: settings/serializers/terminal.py:24
@ -6034,18 +5948,18 @@ msgstr "密钥认证"
#: settings/serializers/terminal.py:30
msgid ""
"Tips: If use other auth method, like AD/LDAP, you should disable this to "
"Information: If use other auth method, like AD/LDAP, you should disable this to "
"avoid being able to log in after deleting"
msgstr ""
"提示:如果你使用其它认证方式,如 AD/LDAP你应该禁用此项以避免第三方系统删"
"除后,还可以登录"
#: settings/serializers/terminal.py:34
msgid "List sort by"
msgid "Asset list sorting"
msgstr "资产列表排序"
#: settings/serializers/terminal.py:37
msgid "List page size"
msgid "Asset list page size"
msgstr "资产列表每页数量"
#: settings/serializers/terminal.py:39
@ -6057,7 +5971,7 @@ msgid "Enable Razor"
msgstr "启用 Razor 服务"
#: settings/serializers/terminal.py:41
msgid "Enable SSH Client"
msgid "SSH Client"
msgstr "启用 SSH Client"
#: settings/tasks/ldap.py:28
@ -6466,10 +6380,6 @@ msgstr "输出"
msgid "Risk level"
msgstr "风险等级"
#: terminal/connect_methods.py:29
msgid "SSH Client"
msgstr "SSH 客户端"
#: terminal/connect_methods.py:30
msgid "SSH Guide"
msgstr "SSH 向导"
@ -6896,7 +6806,7 @@ msgstr "会话"
msgid "Command warning"
msgstr "命令告警"
#: terminal/notifications.py:130
#: terminal/notifications.py:130 terminal/notifications.py:175
msgid "Command reject"
msgstr "命令拒绝"
@ -6904,18 +6814,10 @@ msgstr "命令拒绝"
msgid "Level"
msgstr "级别"
#: terminal/notifications.py:175
msgid "Batch danger command alert"
msgstr "批量危险命令告警"
#: terminal/notifications.py:224
msgid "Command and replay storage"
msgstr "命令及录像存储"
#: terminal/notifications.py:225
msgid "Connectivity alarm"
msgstr "可连接性告警"
#: terminal/notifications.py:240 terminal/tasks.py:146
msgid "Test failure: Account invalid"
msgstr "测试失败: 账号无效"
@ -7057,10 +6959,6 @@ msgstr "无效的 命令组 ID"
msgid "Invalid session id"
msgstr "无效的 Session ID"
#: terminal/serializers/command.py:72
msgid "Account "
msgstr "账号"
#: terminal/serializers/command.py:74
msgid "Timestamp"
msgstr "时间戳"
@ -7143,7 +7041,7 @@ msgstr "桶名称"
#: terminal/serializers/storage.py:33
#: xpack/plugins/cloud/serializers/account_attrs.py:17
msgid "Access key id"
msgid "Access key ID"
msgstr "Access key ID(AK)"
#: terminal/serializers/storage.py:37
@ -7521,10 +7419,6 @@ msgstr "登录账号"
msgid "Apply Login Asset Ticket"
msgstr "资产登录复核工单"
#: tickets/models/ticket/login_confirm.py:12
msgid "Login datetime"
msgstr "登录日期"
#: tickets/models/ticket/login_confirm.py:15
msgid "Apply Login Ticket"
msgstr "用户登录复核工单"
@ -8018,7 +7912,7 @@ msgid "Is OTP bound"
msgstr "是否绑定了虚拟 MFA"
#: users/serializers/user.py:101
msgid "Can public key authentication"
msgid "Can public key auth"
msgstr "可以使用公钥认证"
#: users/serializers/user.py:166
@ -8986,7 +8880,6 @@ msgid "Logo of logout page"
msgstr "退出页面 Logo"
#: xpack/plugins/interface/models.py:41
#: xpack/plugins/interface/serializers/interface.py:26
msgid "Theme"
msgstr "主题"
@ -9002,14 +8895,6 @@ msgstr "公安联网备案号"
msgid "Interface setting"
msgstr "界面设置"
#: xpack/plugins/interface/serializers/interface.py:37
msgid "Wide logo on top"
msgstr "顶部宽 Logo"
#: xpack/plugins/interface/serializers/interface.py:38
msgid "Small logo without text"
msgstr "方形小 Logo"
#: xpack/plugins/license/api.py:52
msgid "License import successfully"
msgstr "许可证导入成功"
@ -9038,6 +8923,21 @@ msgstr "企业专业版"
msgid "Ultimate edition"
msgstr "企业旗舰版"
#~ msgid "Email Subject"
#~ msgstr "邮件主题"
#~ msgid "Command reject (Job)"
#~ msgstr "批量危险命令告警"
#~ msgid "Account "
#~ msgstr "账号"
#~ msgid "Wide logo on top"
#~ msgstr "顶部宽 Logo"
#~ msgid "Small logo without text"
#~ msgstr "方形小 Logo"
#~ msgid "Password can not contains `{{` or `}}`"
#~ msgstr "密码不能包含 `{{` 或 `}}` 字符"

View File

@ -6,29 +6,26 @@
"AccessKey": "Access Key",
"Account": "Account",
"AccountBackup": "Account Backup",
"AccountChangeSecret": "Change Secret",
"AccountBackupCreate": "Create Account Backup",
"AccountBackupUpdate": "Update Account Backup",
"AccountBatchUpdate": "Updated selected",
"AccountChangeSecret": "Password Change",
"AccountCreate": "Create Account",
"AccountDeleteConfirmMsg": "Delete Account, continue?",
"AccountDetail": "Account Details",
"AccountExportTips": "The exported information contains sensitive information such as encrypted account numbers. The exported format is an encrypted zip file (if you have not set the encryption password, please go to Personal Info to set the file encryption password).",
"AccountGatherList": "Collection Task",
"AccountGatherTaskCreate": "Create Task",
"AccountGatherTaskList": "Account Collect",
"AccountGatherTaskUpdate": "Update Task",
"AccountList": "Accounts",
"AccountPolicy": "Account Policy",
"AccountPushCreate": "Create Account Push",
"AccountPushExecutionList": "Execute History",
"AccountPushList": "Account Push",
"AccountPushUpdate": "Update Account Push",
"AccountStorage": "Account Storage",
"AccountStorage": "Account",
"HistoryRecord": "History record",
"AccountTemplate": "Template",
"AccountTemplateList": "Templates",
"AccountTemplateUpdateSecretHelpText": "The account list shows the accounts created through the template. When the secret is updated, the ciphertext of the accounts created through the template will be updated.",
"AccountUpdate": "Update Account",
"Accounts": "Account",
"Action": "Action",
"ActionCount": "Actions",
@ -44,7 +41,6 @@
"ActiveUsers": "Active Users",
"Activity": "Activities",
"Add": "Add",
"AddAccount": "Add Account",
"AddAccountResult": "Second-Level Approver",
"AddAllMembersWarningMsg": "Are you sure you want to add all members?",
"AddAsset": "Add Assets",
@ -79,19 +75,19 @@
"ApiKey": "API Key",
"ApiKeyList": "Authenticate via Api key in the header of each request, which differs from one request to another, offering greater security than Token method. Please consult the documentation for usage.<br>To minimize the risk of leaks, the Secret can only be viewed upon creation, and each user can create up to 10",
"ApiKeyWarning": "To reduce the risk of AccessKey leakage, the Secret is only provided at creation and cannot be queried later, please keep it safe.",
"AppEndpoint": "Application Access Address",
"AppOps": "Task Center",
"AppEndpoint": "App Access Address",
"AppOps": "Job center",
"AppProvider": "Application Providers",
"AppProviderDetail": "Application Provider Details",
"AppletDetail": "Remote Apps",
"AppletDetail": "RemoteApp",
"AppletHelpText": "In the upload process, if the application does not exist, create the application; If it exists, update the application.",
"AppletHostCreate": "Add Remote Application Release Machine",
"AppletHostDetail": "Remote Application Publishing Machine Details",
"AppletHostDomainHelpText": "This domain belongs to the System Organization",
"AppletHostSelectHelpMessage": "When connecting to an asset, the selection of the application publishing machine is random (but the last used one is preferred). If you want to assign a specific publishing machine to an asset, you can tag it as <Publishing Machine: Publishing Machine Name> or <AppletHost: Publishing Machine Name>; <br>When selecting an account for the publishing machine, the following situations will choose the user's own <b>account with the same name or proprietary account (starting with js)</b>, otherwise use a public account (starting with jms):<br>&nbsp; 1. Both the publishing machine and application support concurrent;<br>&nbsp; 2. The publishing machine supports concurrent, but the application does not, and the current application does not use a proprietary account;<br>&nbsp; 3. The publishing machine does not support concurrent, the application either supports or does not support concurrent, and no application uses a proprietary account;<br> Note: Whether the application supports concurrent connections is decided by the developer, and whether the host supports concurrent connections is decided by the single user single session setting in the publishing machine configuration",
"AppletHostUpdate": "Update Remote App Publishing Machine",
"AppletHosts": "Remote App Machine",
"Applets": "Remote Apps",
"AppletHosts": "RemoteApp machine",
"Applets": "RemoteApp",
"Applicant": "Applicant",
"Applications": "Assets",
"ApplyAsset": "Apply for Assets",
@ -113,22 +109,21 @@
"AssetAccountDetail": "Account Details",
"AssetAclCreate": "Create Asset Connect Rule",
"AssetAclDetail": "Asset Connect Rule Details",
"AssetAclList": "Asset Connect",
"AssetAclList": "Asset Connect ACL",
"AssetAclUpdate": "Update Asset Connect Rules",
"AssetAddress": "Asset (IP/Hostname)",
"AssetAmount": "Assets",
"AssetAmount": "Asset amount",
"AssetAndNode": "Assets/Nodes",
"AssetBulkUpdateTips": "Network Devices, Cloud Services, Web, Batch Updating of Domains Not Supported",
"AssetChangeSecretCreate": "Create Account Password Change",
"AssetChangeSecretUpdate": "Update Account Password Change",
"AssetCount": "Asset Quantity",
"AssetData": "Asset Data",
"AssetDetail": "Asset Details",
"AssetList": "Assets",
"AssetListHelpMessage": "On the left is the asset tree. Right-click to create, delete or modify tree nodes. Assets are also organized in node form. On the right are the assets under this node. \n",
"AssetLoginACLHelpMsg": "When logging into assets, it can be audited based on the user's login IP and time segment to determine whether the assets can be logged into",
"AssetName": "Asset Name",
"AssetPermission": "Authorization",
"AssetPermission": "Asset Authorization",
"AssetPermissionCreate": "Create Asset Authorization Rule",
"AssetPermissionDetail": "Asset Authorization Details",
"AssetPermissionHelpMsg": "Asset authorization allows you to select users and assets, grant the assets to users for access. Once completed, users can conveniently view these assets. Additionally, you can set specific permissions to further define the users' rights to the assets.",
@ -140,19 +135,18 @@
"AssetsAmount": "Asset",
"AssetsTotal": "Asset Total",
"AssignedInfo": "Approval Information",
"AssignedMe": "Pending My Approval",
"AssignedTicketList": "Pending My Approval",
"AwaitingMyApproval": "Awaiting my approval",
"Assignee": "Handler",
"Assignees": "Pending Handler",
"AttrName": "Attribute Name",
"AttrValue": "Attribute value",
"Audits": "Audit",
"Auth": "Authentication",
"AuthLimit": "Login Restrictions",
"AuthLimit": "Login restriction",
"AuthSAMLCertHelpText": "Save after uploading the certificate key, then view SP Metadata",
"AuthSAMLKeyHelpText": "SP Certificates and keys are used for encrypted communication with IDP",
"AuthSaml2UserAttrMapHelpText": "The keys on the left are SAML2 user attributes, the values on the right are authentication platform user attributes",
"AuthSecurity": "Authentication Security",
"AuthSecurity": "User Login",
"AuthSetting": "Authentication",
"AuthSettings": "Authentication Configuration",
"AuthUserAttrMapHelpText": "The Key on the Left Belongs to the JumpServer User Properties, and the Value on the Right Belongs to the Authentication Platform User Properties",
@ -162,13 +156,14 @@
"AverageTimeCost": "Average spend time",
"Azure": "Azure (China)",
"Backup": "Backup",
"BatchTest": "Batch Test",
"BadConflictErrorMsg": "Refreshing, please try again later",
"BadRequestErrorMsg": "Request Error, please check the filled content",
"BadRoleErrorMsg": "Request Error, No Permission for this Action",
"BaiduCloud": "Baidu Cloud",
"BasePort": "Listening Ports",
"Basic": "Basic",
"BasicInfo": "Basic Info",
"BasicInfo": "Basic",
"BasicSetting": "Basic",
"BatchConsent": "Batch Approval",
"BatchProcessing": "{Number} items selected",
@ -191,8 +186,8 @@
"BulkOffline": "Batch Offline",
"BulkSyncDelete": "Bulk Sync Delete",
"BulkSyncErrorMsg": "Bulk Synchronization Failed:",
"BulkTransfer": "Batch Transfer",
"BulkUnblock": "Batch Unlock",
"BulkTransfer": "Bulk Transfer",
"BulkUnblock": "Bulk Unlock",
"BulkUpdatePlatformHelpText": "Updates will only be performed when the original platform type of the asset is the same as the selected platform type. If the platform type is different before and after the update, it will not be updated.",
"BulkVerify": "Verify selected",
"CACertificate": "CA Certificate",
@ -209,9 +204,9 @@
"Certificate": "Certificate",
"CertificateKey": "Client Key",
"ChangeField": "Change Field",
"ChangeReceiver": "Change Recipient",
"ChangeOrganization": "Change organization",
"ChangePassword": "Change Password",
"ChangeReceiver": "Modify Message Recipient",
"ChangeSecretParams": "Change Password Parameters",
"ChangeViewHelpText": "Click to Switch Different Views",
"Chat": "Chat",
@ -224,7 +219,7 @@
"Cleaning": "Regular Clean-up",
"Clear": "Clear",
"ClearScreen": "Clear Screen",
"ClearSecret": "Clear selected secret",
"ClearSecret": "Clear secret",
"ClearSelection": "Clear Selection",
"ClearSuccessMsg": "Clear Successful",
"ClickCopy": "Click to Copy",
@ -250,7 +245,7 @@
"CommandFilterACLHelpMsg": "By filtering commands, you can control if commands can be sent to assets. Based on your set rules, some commands can be allowed while others are prohibited.",
"CommandFilterAclCreate": "Create Command Filter Rule",
"CommandFilterAclDetail": "Details of Command Filter Rule",
"CommandFilterAclList": "Command Filter",
"CommandFilterAclList": "Command Filter ACL",
"CommandFilterAclUpdate": "Update Command Filter Rule",
"CommandFilterRuleContentHelpText": "One command per line",
"CommandFilterRules": "Command Filter Rules",
@ -261,12 +256,12 @@
"CommandGroupUpdate": "Update Command Group",
"CommandStorage": "Command Storage",
"CommandStorageUpdate": "Update Cmd Storage",
"Commands": "Command Record",
"Commands": "Command Records",
"Comment": "Note",
"CommentHelpText": "Note: Remarks will be displayed when hovered over in the Luna page's user authorization asset tree. Ordinary users can view, please do not fill in sensitive information.",
"CommunityEdition": "Community Version",
"Component": "Component",
"ComponentMonitor": "Component Monitoring",
"ComponentMonitor": "Monitoring",
"ConceptContent": "I want you to act like a Python interpreter. I will give you Python code, and you will execute it. Do not provide any explanations. Respond with nothing except the output of the code.",
"ConceptTitle": "🤔 Python Interpreter",
"Config": "Settings",
@ -276,7 +271,7 @@
"ConnectMethodACLHelpMsg": "Connect Methods can be filtered to control whether users can use a certain Connect Method to log in to the asset. According to your set rules, some Connect Methods can be allowed, while others can be prohibited (globally effective).",
"ConnectMethodAclCreate": "Create Connect Method Control",
"ConnectMethodAclDetail": "Connect Method Control Details",
"ConnectMethodAclList": "Connect Method",
"ConnectMethodAclList": "Connect Method ACL",
"ConnectMethodAclUpdate": "Update Connect Method Control",
"ConnectWebSocketError": "Connection to WebSocket Failed",
"ConnectionDropped": "Connection Disconnected",
@ -303,7 +298,7 @@
"CreatePlaybook": "Create Playbook",
"CreateReplayStorage": "Create Object Storage",
"CreateSuccessMsg": "Import Successful, Total: {count}",
"CreateUserSetting": "Create User Content",
"CreateUserSetting": "User creation",
"Created": "Created",
"CreatedBy": "Creator",
"CriticalLoad": "Serious",
@ -349,7 +344,7 @@
"DateSync": "Sync Date",
"DateUpdated": "Update Date",
"Day": "Day",
"DeclassificationLogNum": "Change Password Log Count",
"DeclassificationLogNum": "Password Change Logs",
"DefaultDatabase": "Default Database",
"DefaultPort": "Default Port",
"Delete": "Delete",
@ -391,12 +386,13 @@
"DownloadReplay": "Download Recording",
"DownloadUpdateTemplateMsg": "Download Update Template",
"DragUploadFileInfo": "Drag files here, or click here to upload",
"Duration": "Duration",
"DuplicateFileExists": "Uploading a file with the same name is not allowed, please delete the file with the same name",
"DynamicUsername": "Dynamic Username",
"Edit": "Edit",
"Edition": "Version",
"Email": "Email",
"EmailContent": "Custom Email Content",
"EmailContent": "Custom Content",
"EmailTest": "Test Connection",
"Empty": "Empty",
"Enable": "Enable",
@ -444,10 +440,10 @@
"FailedAsset": "Failed Assets",
"FaviconTip": "Note: Website Icon (Suggested Image Size: 16px*16px)",
"Features": "Features",
"FeiShu": "Feishu",
"FeiShu": "Lark",
"FeiShuTest": "Test",
"FieldRequiredError": "This field is required",
"FileManager": "File",
"FileManagement": "File management",
"FileNameTooLong": "Filename too long",
"FileSizeExceedsLimit": "File size exceeds limit\"",
"FileTransfer": "File Transfer",
@ -481,14 +477,14 @@
"Goto": "Go to",
"GrantedAssets": "Authorized Assets",
"GreatEqualThan": "Greater than or Equal to",
"GroupsAmount": "User Group",
"GroupsAmount": "User group",
"HandleTicket": "Handle Work Orders",
"Hardware": "Hardware Information",
"HardwareInfo": "Hardware Information",
"HasImportErrorItemMsg": "There are import failures, click on the left x to view the failure reasons, after editing the table, you can continue to import failures.",
"Help": "Help",
"HelpDocumentTip": "You can change the URL of the website navigation bar Help -> Documentation",
"HelpSupportTip": "Can Change the URL of Help -> Support in Website Navigation Bar",
"HelpDocumentTip": "Document URL for navigation bar 'Help -> Document' redirection.",
"HelpSupportTip": "Support URL for the navigation bar 'Help -> Support' redirection.",
"HighLoad": "Higher",
"HistoricalSessionNum": "Historical Session Count",
"History": "History Record",
@ -506,13 +502,13 @@
"IAgree": "I agree",
"ID": "ID",
"IP": "IP",
"IPLoginLimit": "IP Login Restrictions",
"IPLoginLimit": "IP restriction",
"IPMatch": "IP Matching",
"IPNetworkSegment": "IP Segment",
"Id": "ID",
"IdeaContent": "I want you to act as a Linux terminal. I will input the commands, you will respond with what the terminal should display. I hope you to reply only in a unique code block, not others. No interpretations. When I need to tell you something, I'm gonna put the words in braces {note text}",
"IdeaTitle": "🌱 Linux Terminal",
"IdpMetadataHelpText": "Either IDP metadata URL or IDP metadata XML is acceptable, with IDP metadata URL having higher priority",
"IdpMetadataHelpText": "Either IDP Metadata URL or IDP Metadata XML is acceptable, with IDP Metadata URL having higher priority",
"IdpMetadataUrlHelpText": "Load IDP Metadata from Remote Address",
"ImageName": "Image Name",
"Images": "Image",
@ -559,12 +555,12 @@
"IsSyncAccountHelpText": "Upon Collection Completion, the Collected Account Will Be Synced to Asset",
"IsSyncAccountLabel": "Sync to Assets",
"JDCloud": "Jingdong Cloud",
"Job": "Action",
"JobCenter": "Task Center",
"Job": "Job",
"JobCenter": "Job center",
"JobCreate": "Create Job",
"JobDetail": "Job Details",
"JobExecutionLog": "Job Log",
"JobList": "Job",
"JobExecutionLog": "Job Logs",
"JobManagement": "Job Management",
"JobUpdate": "Update Job",
"KingSoftCloud": "Kingsoft Cloud",
"KokoSettingUpdate": "Koko Configuration Settings",
@ -608,7 +604,7 @@
"LoginFailed": "Login Failed",
"LoginFrom": "Login Source",
"LoginImageTip": "Note: It will appear on the enterprise user login page (recommended image size: 492*472px)",
"LoginLog": "Login Log",
"LoginLog": "Login Logs",
"LoginNum": "Login Count",
"LoginPasswordSetting": "Login Password Settings",
"LoginRequiredMsg": "The account has logged out, please log in again.",
@ -620,14 +616,15 @@
"LogoIndexTip": "Tip: It will be displayed in the upper left corner of the page (Recommended image size: 185px*55px)",
"LogoLogoutTip": "Tip: It will be displayed on the web terminal page of Enterprise Edition users (recommended image size: 82px*82px)",
"Logout": "Logout",
"LogsAudit": "Log auditing",
"LogsAudit": "Log audit",
"Lowercase": "Lowercase",
"LunaSettingUpdate": "Luna Configuration Settings",
"MFAErrorMsg": "MFA errors, please check",
"MFAOfUserFirstLoginPersonalInformationImprovementPage": "Enable multi-factor authentication to make your account more secure. <br/>After enabling, you will enter the multi-factor authentication binding process the next time you log in; you can also directly bind in (Personal Information->Quick Modification->Change Multi-factor Settings)!",
"MFAOfUserFirstLoginUserGuidePage": "In order to protect your and the company's security, please carefully safeguard important sensitive information such as your account, password, and key (for example, set a complex password, and enable multi-factor authentication) <br/> Personal information such as email, mobile number, and WeChat are only used for user authentication and platform internal message notifications.",
"MailRecipient": "Email Recipient",
"MailSend": "Email Sending",
"MailSend": "Sending",
"Server": "Server",
"ManualAccount": "Manual Account",
"ManualAccountTip": "Manual input of Username/Password upon Login",
"ManualExecutePlan": "Manual Execute Plan",
@ -643,7 +640,7 @@
"MenuAcls": "ACLs",
"MenuAssets": "Assets",
"MenuMore": "Others",
"MenuPermissions": "Policies",
"MenuPermissions": "Permissions",
"MenuUsers": "Users",
"Message": "Message",
"MessageSubscription": "Message Subscription",
@ -658,11 +655,11 @@
"More": "More",
"MoreActions": "Actions",
"MoveAssetToNode": "Move Assets to Nodes",
"MsgSubscribe": "Message Subscription",
"MsgSubscribe": "Subscription",
"MyAssets": "My Assets",
"MyTickets": "I Initiated",
"Name": "Name",
"NavHelp": "Navigation Bar Link",
"NavHelp": "Navigation",
"NeedReLogin": "Need to Re-Login",
"New": "Create",
"NewChat": "New Chat",
@ -689,7 +686,7 @@
"NotSet": "Not Set",
"NotSpecialEmoji": "Special Emoji Input Not Allowed",
"Nothing": "None",
"Notifications": "Notification",
"Notifications": "Notifications",
"Now": "Now",
"Number": "Number",
"NumberOfVisits": "Visits",
@ -715,7 +712,7 @@
"OpenStack": "OpenStack",
"OpenStatus": "In Approval",
"OpenTicket": "Create a Ticket",
"OperateLog": "Operation Log",
"OperateLog": "Operation Logs",
"OperationLogNum": "Operation Logs",
"OrgAdmin": "Organization Admin",
"OrgAuditor": "Org Auditors",
@ -741,12 +738,12 @@
"PasskeyAddDisableInfo": "Your authentication source is {source}, and adding a Passkey is not supported",
"Passphrase": "Key Password",
"Password": "Password",
"PasswordChangeLog": "Password Change Log",
"PasswordChangeLog": "Password Change Logs",
"PasswordExpired": "Password Expired",
"PasswordPlaceholder": "Please Enter Password",
"PasswordRecord": "Password Record",
"PasswordRule": "Password Rules",
"PasswordSecurity": "Password Security",
"PasswordSecurity": "User Password",
"PasswordStrategy": "Secret Strategy",
"PasswordWillExpiredPrefixMsg": "Password will be in",
"PasswordWillExpiredSuffixMsg": "It will expire in days, please change your password as soon as possible.",
@ -905,7 +902,7 @@
"RunTaskManually": "Manually Execute",
"RunasHelpText": "Enter Username for Running Script",
"RunasPolicy": "Account Policy",
"RunasPolicyHelpText": "When the current asset does not have this running user, what kind of account selection strategy should be adopted? Skip: do not perform. Preferring privileged account: If there is a privileged account, choose the privileged account first. If not, choose the regular account. Only privileged accounts: Choose only from privileged accounts. If not, do not execute",
"RunasPolicyHelpText": "When there are no users currently running on the asset, what account selection strategy should be adopted. Skip: Do not execute. Prioritize privileged accounts: If there are privileged accounts, select them first; if not, select regular accounts. Only privileged accounts: Select only from privileged accounts; if none exist, do not execute.",
"RunningPath": "Running Path",
"RunningPathHelpText": "Enter the run path of the script, this setting only applies to shell scripts",
"RunningTimes": "Last 5 Run Times",
@ -967,11 +964,11 @@
"SessionData": "Session Data",
"SessionDetail": "Session Details",
"SessionID": "Session ID",
"SessionList": "Conversation History",
"SessionList": "Session Records",
"SessionMonitor": "Monitor",
"SessionOffline": "Historical Sessions",
"SessionOnline": "Online Session",
"SessionSecurity": "Session security",
"SessionOnline": "Online Sessions",
"SessionSecurity": "Asset Session",
"SessionState": "Session Status",
"SessionTerminate": "Session Termination",
"SessionTrend": "Session Trends",
@ -996,7 +993,7 @@
"ShowAssetAllChildrenNode": "Show All Sub-nodes Assets",
"ShowAssetOnlyCurrentNode": "Only Show Current Node Assets",
"ShowNodeInfo": "Show Node Details",
"SignChannelNum": "Channel Number Signature",
"SignChannelNum": "Channel Signature",
"SiteMessage": "Site Message",
"SiteMessageList": "Internal Mail",
"Skip": "Ignore Current Asset",
@ -1019,6 +1016,7 @@
"StatusRed": "Last Task Execution Failed",
"StatusYellow": "There have been recent failures",
"Stop": "Stop",
"Storage": "Storage",
"StorageSetting": "Storage",
"Strategy": "Strategy",
"StrategyCreate": "Create Policy",
@ -1071,7 +1069,7 @@
"TaskMonitor": "Task Monitoring",
"TechnologyConsult": "Technical Consultation",
"TempPassword": "The temporary password is valid for 300 seconds and becomes invalid immediately after use",
"Template": "Template",
"TemplateManagement": "Template Management",
"TemplateAdd": "Add from template",
"TemplateCreate": "Create Template",
"TemplateHelpText": "When selecting a template to add, accounts that do not exist under the asset will be automatically created and pushed",
@ -1094,7 +1092,7 @@
"TestPortErrorMsg": "Port Error, Please Re-enter",
"TestSuccessMsg": "Test Succeeded",
"Thursday": "Thursday",
"Ticket": "Work Orders",
"Ticket": "Ticket",
"TicketDetail": "Work Order Details",
"TicketFlow": "Work Order Flow",
"TicketFlowCreate": "Create Approval Flow",
@ -1174,9 +1172,9 @@
"UserLoginACLHelpMsg": "When logging into the system, the user's login IP and time range can be audited to determine whether they are allowed to log into the system (effective globally)",
"UserLoginAclCreate": "Create User Login Control",
"UserLoginAclDetail": "User Login Control Details",
"UserLoginAclList": "User Login",
"UserLoginAclList": "User Login ACL",
"UserLoginAclUpdate": "Update User Login Control",
"UserLoginLimit": "User Login Restriction",
"UserLoginLimit": "User Restriction",
"UserLoginTrend": "Account Login Trend",
"UserProfile": "Profile",
"UserSession": "Asset Sessions",
@ -1194,7 +1192,7 @@
"VariableHelpText": "You Can Use {{ key }} to Read Built-in Variables in Commands",
"VaultHelpText": "1. For security reasons, Vault storage must be enabled in the configuration file.<br>2. After enabled, fill in other configurations, and perform tests.<br>3. Carry out data synchronization, which is one-way, only syncing from the local database to the distant Vault, once synchronization is completed, the local database will no longer store passwords, please back up your data.<br>4. After modifying Vault configuration the second time, you need to restart the service.",
"VerificationCodeSent": "Verification code has been sent",
"VerifySignTmpl": "Verification Code SMS Template",
"VerifySignTmpl": "SMS Template",
"Version": "Version",
"View": "View",
"ViewBlockedIPSHelpText": "View List of Locked IPs",
@ -1204,10 +1202,10 @@
"VirtualAccountDetail": "Details of virtual account",
"VirtualAccountUpdate": "Virtual Account Update",
"VirtualAccounts": "Virtual Accounts",
"VirtualApp": "Virtual Application",
"VirtualApp": "Virtual App",
"VirtualAppDetail": "Virtual App Details",
"VirtualApps": "Virtual Application",
"WeCom": "WeChat for Business",
"VirtualApps": "Virtual App",
"WeCom": "WeCom",
"WeComTest": "Test",
"WebCreate": "Create Asset-Web",
"WebHelpMessage": "Web type assets depend on remote applications, please go to system settings and configure in remote applications",
@ -1224,5 +1222,6 @@
"Workbench": "Workspace",
"Workspace": "Workspace",
"Yes": "Yes",
"ZStack": "ZStack"
}
"ZStack": "ZStack",
"AssetPermsAmount": "Asset authorization"
}

View File

@ -6,27 +6,18 @@
"AccessKey": "访问密钥",
"Account": "账号信息",
"AccountBackup": "账号备份",
"AccountBackupCreate": "创建账号备份",
"AccountBackupUpdate": "更新账号备份",
"AccountChangeSecret": "账号改密",
"AccountCreate": "创建账户",
"AccountDeleteConfirmMsg": "删除账号,是否继续?",
"AccountDetail": "账户详情",
"AccountExportTips": "导出信息中包含账号密文涉及敏感信息导出的格式为一个加密的zip文件若没有设置加密密码请前往个人信息中设置文件加密密码。",
"AccountGatherList": "收集任务",
"AccountGatherTaskCreate": "创建任务",
"AccountGatherTaskList": "账号收集",
"AccountGatherTaskUpdate": "更新任务",
"AccountList": "云账号",
"AccountPolicy": "账号策略",
"AccountPushCreate": "创建账号推送",
"AccountPushExecutionList": "执行列表",
"AccountPushList": "账号推送",
"AccountPushUpdate": "账号推送更新",
"AccountStorage": "账号存储",
"AccountTemplate": "账号模版",
"AccountTemplateUpdateSecretHelpText": "账号列表展示通过模版创建的账号。更新密文时,会更新通过模版所创建账号的密文。",
"AccountUpdate": "更新账户",
"Accounts": "账号管理",
"Action": "动作",
"ActionCount": "动作数量",
@ -40,7 +31,6 @@
"ActiveUser": "近期登录过",
"Activity": "活动",
"Add": "新增",
"AddAccount": "添加账号",
"AddAccountResult": "账号批量添加结果",
"AddAllMembersWarningMsg": "你确定要添加全部成员?",
"AddAsset": "添加资产",
@ -117,7 +107,6 @@
"AssetBulkUpdateTips": "网络设备、云服务、web不支持批量更新网域",
"AssetChangeSecretCreate": "创建账号改密",
"AssetChangeSecretUpdate": "更新账号改密",
"AssetCount": "资产数量",
"AssetData": "资产数据",
"AssetDetail": "资产详情",
"AssetList": "资产列表",
@ -136,8 +125,7 @@
"AssetsAmount": "资产",
"AssetsTotal": "资产总数",
"AssignedInfo": "审批信息",
"AssignedMe": "待我审批",
"AssignedTicketList": "待我审批",
"AwaitingMyApproval": "待我审批",
"Assignee": "处理人",
"Assignees": "待处理人",
"AttrName": "属性名",
@ -158,6 +146,7 @@
"AverageTimeCost": "平均花费时间",
"Azure": "Azure(中国)",
"Backup": "备份",
"BatchTest": "批量测试",
"BadConflictErrorMsg": "正在刷新中,请稍后再试",
"BadRequestErrorMsg": "请求错误,请检查填写内容",
"BadRoleErrorMsg": "请求错误,无该操作权限",
@ -383,6 +372,7 @@
"DownloadUpdateTemplateMsg": "下载更新模板",
"DragUploadFileInfo": "将文件拖到此处,或点击此处上传",
"DuplicateFileExists": "不允许上传同名文件,请删除同名文件",
"Duration": "时长",
"DynamicUsername": "动态用户名",
"Edit": "编辑",
"Edition": "版本",
@ -438,7 +428,7 @@
"FeiShu": "飞书",
"FeiShuTest": "测试",
"FieldRequiredError": "此字段是必填项",
"FileManager": "文件管理",
"FileManagement": "文件管理",
"FileNameTooLong": "文件名太长",
"FileSizeExceedsLimit": "文件大小超出限制",
"FileTransfer": "文件传输",
@ -502,7 +492,7 @@
"Id": "ID",
"IdeaContent": "我想让你充当一个 Linux 终端。我将输入命令,你将回答终端应该显示的内容。我希望你只在一个独特的代码块内回复终端输出,而不是其他。不要写解释。当我需要告诉你一些事情时,我会把文字放在大括号里{备注文本}。",
"IdeaTitle": "🌱 Linux 终端",
"IdpMetadataHelpText": "IDP metadata URL 和 IDP metadata XML参数二选一即可IDP metadata URL的优先级高",
"IdpMetadataHelpText": "IDP Metadata URL 和 IDP MetadataXML参数二选一即可IDP MetadataURL的优先级高",
"IdpMetadataUrlHelpText": "从远端地址中加载 IDP Metadata",
"ImageName": "镜像名",
"Images": "图片",
@ -554,7 +544,7 @@
"JobCreate": "创建作业",
"JobDetail": "作业详情",
"JobExecutionLog": "作业日志",
"JobList": "作业管理",
"JobManagement": "作业管理",
"JobUpdate": "更新作业",
"KingSoftCloud": "金山云",
"KokoSettingUpdate": "Koko 配置设置",
@ -1059,7 +1049,7 @@
"TaskMonitor": "任务监控",
"TechnologyConsult": "技术咨询",
"TempPassword": "临时密码有效期为 300 秒,使用后立刻失效",
"Template": "模版管理",
"TemplateManagement": "模版管理",
"TemplateAdd": "模版添加",
"TemplateCreate": "创建模版",
"TemplateHelpText": "选择模版添加时,会自动创建资产下不存在的账号并推送",

View File

@ -140,7 +140,7 @@
"Refresh": "Refresh",
"Remember password": "Remember me",
"Remember select": "Remember selected",
"Remote apps": "Remote apps",
"RemoteApp": "RemoteApp",
"Reselect connection method": "Reselect asset connection method",
"Resume": "Resume",
"Resume task has been send": "Resume task has been send",

View File

@ -138,7 +138,7 @@
"Refresh": "刷新",
"Remember password": "记住密码",
"Remember select": "记住选择",
"Remote apps": "远程应用",
"RemoteApp": "远程应用",
"Reselect connection method": "可重新选择连接方式",
"Resume": "恢复",
"Resume task has been send": "恢复任务已发送",

View File

@ -19,7 +19,7 @@ class LabelSerializer(BulkOrgResourceModelSerializer):
]
read_only_fields = ('date_created', 'date_updated', 'res_count')
extra_kwargs = {
'res_count': {'label': _('Resource amount')},
'res_count': {'label': _('Resource count')},
}
@staticmethod

View File

@ -8,7 +8,7 @@ from common.utils import get_logger
__all__ = ["AdHoc"]
from ops.const import AdHocModules
from ops.const import AdHocModules
from orgs.mixins.models import JMSOrgBaseModel

View File

@ -13,8 +13,8 @@ __all__ = ('ServerPerformanceMessage', 'ServerPerformanceCheckUtil')
class ServerPerformanceMessage(SystemMessage):
category = 'Operations'
category_label = _('App ops')
category = 'Components'
category_label = _('Components')
message_type_label = _('Server performance')
def __init__(self, terms_with_errors):

View File

@ -12,7 +12,7 @@ from orgs.mixins.serializers import BulkOrgResourceModelSerializer
class JobSerializer(BulkOrgResourceModelSerializer, PeriodTaskSerializerMixin):
creator = ReadableHiddenField(default=serializers.CurrentUserDefault())
run_after_save = serializers.BooleanField(label=_("Run after save"), default=False, required=False)
run_after_save = serializers.BooleanField(label=_("Execute after saving"), default=False, required=False)
nodes = serializers.ListField(required=False, child=serializers.CharField())
date_last_run = serializers.DateTimeField(label=_('Date last run'), read_only=True)
name = serializers.CharField(label=_('Name'), max_length=128, allow_blank=True, required=False)

View File

@ -52,7 +52,7 @@ extra_nodes_data = [
{"id": "push_account_node", "name": _("Push account"), "pId": "accounts"},
{"id": "asset_change_plan_node", "name": _("Asset change auth"), "pId": "accounts"},
{"id": "terminal_node", "name": _("Terminal setting"), "pId": "view_setting"},
{'id': "task_center", "name": _("Task Center"), "pId": "view_console"},
{'id': "task_center", "name": _("Job center"), "pId": "view_console"},
{'id': "my_assets", "name": _("My assets"), "pId": "view_workbench"},
{'id': "operation_center", "name": _('App ops'), "pId": "view_workbench"},
{'id': "remote_application", "name": _("Applet"), "pId": "view_setting"},

View File

@ -26,5 +26,5 @@ class AuthSettingSerializer(serializers.Serializer):
label=_("Forgot Password URL")
)
LOGIN_REDIRECT_MSG_ENABLED = serializers.BooleanField(
required=False, label=_("Enable login redirect msg")
required=False, label=_("Login redirection prompt")
)

View File

@ -9,11 +9,11 @@ __all__ = [
class CASSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('CAS')
AUTH_CAS = serializers.BooleanField(required=False, label=_('Enable CAS Auth'))
CAS_SERVER_URL = serializers.CharField(required=False, max_length=1024, label=_('Server url'))
AUTH_CAS = serializers.BooleanField(required=False, label=_('CAS'))
CAS_SERVER_URL = serializers.CharField(required=False, max_length=1024, label=_('Server'))
CAS_ROOT_PROXIED_AS = serializers.CharField(
required=False, allow_null=True, allow_blank=True,
max_length=1024, label=_('Proxy server url')
max_length=1024, label=_('Proxy Server')
)
CAS_LOGOUT_COMPLETELY = serializers.BooleanField(required=False, label=_('Logout completely'))
CAS_VERSION = serializers.IntegerField(
@ -25,5 +25,8 @@ class CASSettingSerializer(serializers.Serializer):
CAS_APPLY_ATTRIBUTES_TO_USER = serializers.BooleanField(
required=False, label=_('Enable attributes map')
)
CAS_RENAME_ATTRIBUTES = serializers.JSONField(required=False, label=_('Rename attr'))
CAS_CREATE_USER = serializers.BooleanField(required=False, label=_('Create user if not'))
CAS_RENAME_ATTRIBUTES = serializers.JSONField(required=False, label=_('User attribute'))
CAS_CREATE_USER = serializers.BooleanField(
required=False, label=_('Create user'),
help_text=_('Automatically create a new user if not found.')
)

View File

@ -9,7 +9,7 @@ __all__ = ['DingTalkSettingSerializer']
class DingTalkSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('DingTalk')
DINGTALK_AGENTID = serializers.CharField(max_length=256, required=True, label='AgentId')
DINGTALK_APPKEY = serializers.CharField(max_length=256, required=True, label='AppKey')
DINGTALK_APPSECRET = EncryptedField(max_length=256, required=False, label='AppSecret')
AUTH_DINGTALK = serializers.BooleanField(default=False, label=_('Enable DingTalk Auth'))
DINGTALK_AGENTID = serializers.CharField(max_length=256, required=True, label='Agent ID')
DINGTALK_APPKEY = serializers.CharField(max_length=256, required=True, label='App Key')
DINGTALK_APPSECRET = EncryptedField(max_length=256, required=False, label='App Secret')
AUTH_DINGTALK = serializers.BooleanField(default=False, label=_('Dingtalk'))

View File

@ -13,7 +13,7 @@ class FeiShuSettingSerializer(serializers.Serializer):
('feishu', _('FeiShu')),
('lark', 'Lark')
)
AUTH_FEISHU = serializers.BooleanField(default=False, label=_('Enable FeiShu Auth'))
AUTH_FEISHU = serializers.BooleanField(default=False, label=_('Lark'))
FEISHU_APP_ID = serializers.CharField(max_length=256, required=True, label='App ID')
FEISHU_APP_SECRET = EncryptedField(max_length=256, required=False, label='App Secret')
FEISHU_VERSION = serializers.ChoiceField(

View File

@ -39,7 +39,7 @@ class LDAPSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('LDAP')
AUTH_LDAP_SERVER_URI = serializers.CharField(
required=True, max_length=1024, label=_('LDAP server'),
required=True, max_length=1024, label=_('Server'),
help_text=_('eg: ldap://localhost:389')
)
AUTH_LDAP_BIND_DN = serializers.CharField(required=False, max_length=1024, label=_('Bind DN'))
@ -55,7 +55,7 @@ class LDAPSettingSerializer(serializers.Serializer):
help_text=_('Choice may be (cn|uid|sAMAccountName)=%(user)s)')
)
AUTH_LDAP_USER_ATTR_MAP = serializers.JSONField(
required=True, label=_('User attr map'),
required=True, label=_('User attribute'),
help_text=_('User attr map present how to map LDAP user attr to '
'jumpserver, username,name,email is jumpserver attr')
)
@ -81,7 +81,7 @@ class LDAPSettingSerializer(serializers.Serializer):
required=False, label=_('Recipient'), max_length=36
)
AUTH_LDAP = serializers.BooleanField(required=False, label=_('Enable LDAP auth'))
AUTH_LDAP = serializers.BooleanField(required=False, label=_('LDAP'))
@staticmethod
def post_save():

View File

@ -18,7 +18,7 @@ class OAuth2SettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('OAuth2')
AUTH_OAUTH2 = serializers.BooleanField(
default=False, label=_('Enable OAuth2 Auth')
default=False, label=_('OAuth2')
)
AUTH_OAUTH2_LOGO_PATH = SettingImageField(
allow_null=True, required=False, label=_('Logo')
@ -36,24 +36,24 @@ class OAuth2SettingSerializer(serializers.Serializer):
required=True, max_length=1024, label=_('Scope'), allow_blank=True
)
AUTH_OAUTH2_PROVIDER_AUTHORIZATION_ENDPOINT = serializers.CharField(
required=True, max_length=1024, label=_('Provider auth endpoint')
required=True, max_length=1024, label=_('Authorization endpoint')
)
AUTH_OAUTH2_ACCESS_TOKEN_ENDPOINT = serializers.CharField(
required=True, max_length=1024, label=_('Provider token endpoint')
required=True, max_length=1024, label=_('Token endpoint')
)
AUTH_OAUTH2_ACCESS_TOKEN_METHOD = serializers.ChoiceField(
default='GET', label=_('Client authentication method'),
default='GET', label=_('Request method'),
choices=(('GET', 'GET'), ('POST', 'POST-DATA'), ('POST_JSON', 'POST-JSON'))
)
AUTH_OAUTH2_PROVIDER_USERINFO_ENDPOINT = serializers.CharField(
required=True, max_length=1024, label=_('Provider userinfo endpoint')
required=True, max_length=1024, label=_('Userinfo endpoint')
)
AUTH_OAUTH2_PROVIDER_END_SESSION_ENDPOINT = serializers.CharField(
required=False, allow_blank=True, max_length=1024, label=_('Provider end session endpoint')
required=False, allow_blank=True, max_length=1024, label=_('End session endpoint')
)
AUTH_OAUTH2_LOGOUT_COMPLETELY = serializers.BooleanField(required=False, label=_('Logout completely'))
AUTH_OAUTH2_USER_ATTR_MAP = serializers.JSONField(
required=True, label=_('User attr map')
required=True, label=_('User attribute')
)
AUTH_OAUTH2_ALWAYS_UPDATE_USER = serializers.BooleanField(
default=True, label=_('Always update user')

View File

@ -27,14 +27,14 @@ class CommonSettingSerializer(serializers.Serializer):
('client_secret_basic', 'Client Secret Basic'),
('client_secret_post', 'Client Secret Post')
),
label=_('Client authentication method')
label=_('Request method')
)
AUTH_OPENID_SHARE_SESSION = serializers.BooleanField(required=False, label=_('Share session'))
AUTH_OPENID_IGNORE_SSL_VERIFICATION = serializers.BooleanField(
required=False, label=_('Ignore ssl verification')
required=False, label=_('Ignore SSL verification')
)
AUTH_OPENID_USER_ATTR_MAP = serializers.JSONField(
required=True, label=_('User attr map'),
required=True, label=_('User attribute'),
help_text=_('User attr map present how to map OpenID user attr to '
'jumpserver, username,name,email is jumpserver attr')
)
@ -51,7 +51,7 @@ class KeycloakSettingSerializer(CommonSettingSerializer):
label=_("Use Keycloak"), required=False, default=False
)
AUTH_OPENID_SERVER_URL = serializers.CharField(
required=False, max_length=1024, label=_('Server url')
required=False, max_length=1024, label=_('Server')
)
AUTH_OPENID_REALM_NAME = serializers.CharField(
required=False, max_length=1024, allow_null=True, label=_('Realm name')
@ -60,37 +60,37 @@ class KeycloakSettingSerializer(CommonSettingSerializer):
class OIDCSettingSerializer(KeycloakSettingSerializer):
# OpenID 新配置参数 (version >= 1.5.9)
AUTH_OPENID = serializers.BooleanField(required=False, label=_('Enable OPENID Auth'))
AUTH_OPENID = serializers.BooleanField(required=False, label=_('OIDC'))
AUTH_OPENID_PROVIDER_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider endpoint')
)
AUTH_OPENID_PROVIDER_AUTHORIZATION_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider auth endpoint')
required=False, max_length=1024, label=_('Authorization endpoint')
)
AUTH_OPENID_PROVIDER_TOKEN_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider token endpoint')
required=False, max_length=1024, label=_('Token endpoint')
)
AUTH_OPENID_PROVIDER_JWKS_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider jwks endpoint')
required=False, max_length=1024, label=_('JWKS endpoint')
)
AUTH_OPENID_PROVIDER_USERINFO_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider userinfo endpoint')
required=False, max_length=1024, label=_('Userinfo endpoint')
)
AUTH_OPENID_PROVIDER_END_SESSION_ENDPOINT = serializers.CharField(
required=False, max_length=1024, label=_('Provider end session endpoint')
required=False, max_length=1024, label=_('End session endpoint')
)
AUTH_OPENID_PROVIDER_SIGNATURE_ALG = serializers.CharField(
required=False, max_length=1024, label=_('Provider sign alg')
required=False, max_length=1024, label=_('Signature algorithm')
)
AUTH_OPENID_PROVIDER_SIGNATURE_KEY = serializers.CharField(
required=False, max_length=1024, allow_null=True, label=_('Provider sign key')
required=False, max_length=1024, allow_null=True, label=_('Signing key')
)
AUTH_OPENID_SCOPES = serializers.CharField(required=False, max_length=1024, label=_('Scopes'))
AUTH_OPENID_ID_TOKEN_MAX_AGE = serializers.IntegerField(
required=False, label=_('Id token max age (s)')
required=False, label=_('ID Token max age (s)')
)
AUTH_OPENID_ID_TOKEN_INCLUDE_CLAIMS = serializers.BooleanField(
required=False, label=_('Id token include claims')
required=False, label=_('ID Token include claims')
)
AUTH_OPENID_USE_STATE = serializers.BooleanField(required=False, label=_('Use state'))
AUTH_OPENID_USE_NONCE = serializers.BooleanField(required=False, label=_('Use nonce'))

View File

@ -8,15 +8,15 @@ class PasskeySettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Passkey')
AUTH_PASSKEY = serializers.BooleanField(
default=False, label=_('Enable passkey Auth'),
default=False, label=_('Passkey'),
help_text=_('Only SSL domain can use passkey auth')
)
FIDO_SERVER_ID = serializers.CharField(
max_length=255, label=_('FIDO server ID'), required=False, allow_blank=True,
max_length=255, label=_('FIDO Server ID'), required=False, allow_blank=True,
help_text=_(
'The hostname can using passkey auth, If not set, '
'will use request host and the request host in DOMAINS, '
'If multiple domains, use comma to separate'
)
)
FIDO_SERVER_NAME = serializers.CharField(max_length=255, label=_('FIDO server name'))
FIDO_SERVER_NAME = serializers.CharField(max_length=255, label=_('FIDO Server name'))

View File

@ -12,7 +12,7 @@ __all__ = ['RadiusSettingSerializer']
class RadiusSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Radius')
AUTH_RADIUS = serializers.BooleanField(required=False, label=_('Enable Radius Auth'))
AUTH_RADIUS = serializers.BooleanField(required=False, label=_('Radius'))
RADIUS_SERVER = serializers.CharField(required=False, allow_blank=True, max_length=1024, label=_('Host'))
RADIUS_PORT = serializers.IntegerField(required=False, label=_('Port'))
RADIUS_SECRET = EncryptedField(

View File

@ -10,13 +10,13 @@ class SAML2SettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('SAML2')
AUTH_SAML2 = serializers.BooleanField(
default=False, required=False, label=_('Enable SAML2 Auth')
default=False, required=False, label=_('SAML2')
)
SAML2_IDP_METADATA_URL = serializers.URLField(
allow_blank=True, required=False, label=_('IDP metadata URL')
allow_blank=True, required=False, label=_('IDP Metadata URL')
)
SAML2_IDP_METADATA_XML = serializers.CharField(
allow_blank=True, required=False, label=_('IDP metadata XML')
allow_blank=True, required=False, label=_('IDP Metadata XML')
)
SAML2_SP_ADVANCED_SETTINGS = serializers.JSONField(
required=False, label=_('SP advanced settings')
@ -29,6 +29,6 @@ class SAML2SettingSerializer(serializers.Serializer):
allow_blank=True, required=False,
write_only=True, label=_('SP cert')
)
SAML2_RENAME_ATTRIBUTES = serializers.JSONField(required=False, label=_('Rename attr'))
SAML2_RENAME_ATTRIBUTES = serializers.JSONField(required=False, label=_('User attribute'))
SAML2_LOGOUT_COMPLETELY = serializers.BooleanField(required=False, label=_('Logout completely'))
AUTH_SAML2_ALWAYS_UPDATE_USER = serializers.BooleanField(required=False, label=_('Always update user'))

View File

@ -9,7 +9,7 @@ __all__ = ['SlackSettingSerializer']
class SlackSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Slack')
AUTH_SLACK = serializers.BooleanField(default=False, label=_('Enable Slack Auth'))
AUTH_SLACK = serializers.BooleanField(default=False, label=_('Slack'))
SLACK_CLIENT_ID = serializers.CharField(max_length=256, required=True, label='Client ID')
SLACK_CLIENT_SECRET = EncryptedField(max_length=256, required=False, label='Client Secret')
SLACK_BOT_TOKEN = EncryptedField(max_length=256, required=False, label='Client bot Token')

View File

@ -14,7 +14,7 @@ __all__ = [
class SMSSettingSerializer(serializers.Serializer):
SMS_ENABLED = serializers.BooleanField(default=False, label=_('Enable SMS'))
SMS_ENABLED = serializers.BooleanField(default=False, label=_('SMS'))
SMS_BACKEND = serializers.ChoiceField(
choices=BACKENDS.choices, default=BACKENDS.ALIBABA, label=_('SMS provider / Protocol')
)
@ -70,10 +70,10 @@ class HuaweiSMSSettingSerializer(BaseSMSSettingSerializer):
class CMPP2SMSSettingSerializer(BaseSMSSettingSerializer):
CMPP2_HOST = serializers.CharField(max_length=256, required=True, label=_('Host'))
CMPP2_PORT = serializers.IntegerField(default=7890, label=_('Port'))
CMPP2_SP_ID = serializers.CharField(max_length=128, required=True, label=_('Enterprise code(SP id)'))
CMPP2_SP_SECRET = EncryptedField(max_length=256, required=False, label=_('Shared secret(Shared secret)'))
CMPP2_SRC_ID = serializers.CharField(max_length=256, required=False, label=_('Original number(Src id)'))
CMPP2_SERVICE_ID = serializers.CharField(max_length=256, required=True, label=_('Business type(Service id)'))
CMPP2_SP_ID = serializers.CharField(max_length=128, required=True, label=_('Enterprise code'))
CMPP2_SP_SECRET = EncryptedField(max_length=256, required=False, label=_('Shared secret'))
CMPP2_SRC_ID = serializers.CharField(max_length=256, required=False, label=_('Original number'))
CMPP2_SERVICE_ID = serializers.CharField(max_length=256, required=True, label=_('Business type'))
CMPP2_VERIFY_SIGN_NAME = serializers.CharField(max_length=256, required=True, label=_('Signature'))
CMPP2_VERIFY_TEMPLATE_CODE = serializers.CharField(
max_length=69, required=True, label=_('Template'),

View File

@ -9,7 +9,7 @@ __all__ = ['WeComSettingSerializer']
class WeComSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('WeCom')
WECOM_CORPID = serializers.CharField(max_length=256, required=True, label='corpid')
WECOM_AGENTID = serializers.CharField(max_length=256, required=True, label='agentid')
WECOM_SECRET = EncryptedField(max_length=256, required=False, label='secret')
AUTH_WECOM = serializers.BooleanField(default=False, label=_('Enable WeCom Auth'))
WECOM_CORPID = serializers.CharField(max_length=256, required=True, label='Corporation ID')
WECOM_AGENTID = serializers.CharField(max_length=256, required=True, label='App Agent ID')
WECOM_SECRET = EncryptedField(max_length=256, required=False, label='App Secret')
AUTH_WECOM = serializers.BooleanField(default=False, label=_('WeCom'))

View File

@ -35,7 +35,7 @@ class AnnouncementSerializer(serializers.Serializer):
class AnnouncementSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Announcement')
ANNOUNCEMENT_ENABLED = serializers.BooleanField(label=_('Enable announcement'), default=True)
ANNOUNCEMENT_ENABLED = serializers.BooleanField(label=_('Announcement'), default=True)
ANNOUNCEMENT = AnnouncementSerializer(label=_("Announcement"))
@ -43,7 +43,7 @@ class VaultSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('HCP Vault')
VAULT_ENABLED = serializers.BooleanField(
required=False, label=_('Enable Vault'), read_only=True
required=False, label=_('Vault'), read_only=True
)
VAULT_HCP_HOST = serializers.CharField(
max_length=256, allow_blank=True, required=False, label=_('Host')
@ -72,7 +72,7 @@ class ChatAISettingSerializer(serializers.Serializer):
GPT_MODEL_CHOICES = []
CHAT_AI_ENABLED = serializers.BooleanField(
required=False, label=_('Enable Chat AI')
required=False, label=_('Chat AI')
)
GPT_BASE_URL = serializers.CharField(
max_length=256, allow_blank=True, required=False, label=_('Base URL')
@ -108,14 +108,14 @@ class ChatAISettingSerializer(serializers.Serializer):
class TicketSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Ticket')
TICKETS_ENABLED = serializers.BooleanField(required=False, default=True, label=_("Enable tickets"))
TICKETS_ENABLED = serializers.BooleanField(required=False, default=True, label=_("Ticket"))
TICKET_AUTHORIZE_DEFAULT_TIME = serializers.IntegerField(
min_value=1, max_value=999999, required=False,
label=_("Ticket authorize default time")
label=_("Default period")
)
TICKET_AUTHORIZE_DEFAULT_TIME_UNIT = serializers.ChoiceField(
choices=[('day', _("day")), ('hour', _("hour"))],
label=_("Ticket authorize default time unit"), required=False,
label=_("Default unit"), required=False,
)
@ -123,12 +123,12 @@ class OpsSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Feature')
SECURITY_COMMAND_EXECUTION = serializers.BooleanField(
required=False, label=_('Operation center'),
required=False, label=_('Job center'),
help_text=_('Allow user run batch command or not using ansible')
)
SECURITY_COMMAND_BLACKLIST = serializers.ListField(
child=serializers.CharField(max_length=1024, ),
label=_('Operation center command blacklist'),
label=_('Command blacklist'),
help_text=_("Commands that are not allowed execute.")
)
@ -137,5 +137,5 @@ class VirtualAppSerializer(serializers.Serializer):
PREFIX_TITLE = _('Virtual app')
VIRTUAL_APP_ENABLED = serializers.BooleanField(
required=False, label=_('Enable virtual app'),
required=False, label=_('Virtual app'),
)

View File

@ -36,7 +36,7 @@ class EmailSettingSerializer(serializers.Serializer):
help_text=_("Tips: Some provider use token except password")
)
EMAIL_FROM = serializers.CharField(
max_length=128, allow_blank=True, required=False, label=_('Send user'),
max_length=128, allow_blank=True, required=False, label=_('Sender'),
help_text=_('Tips: Send mail account, default SMTP account as the send account')
)
EMAIL_RECIPIENT = serializers.CharField(
@ -65,17 +65,17 @@ class EmailContentSettingSerializer(serializers.Serializer):
EMAIL_CUSTOM_USER_CREATED_SUBJECT = serializers.CharField(
max_length=1024, allow_blank=True, required=False,
label=_('Create user email subject'),
label=_('Subject'),
help_text=_('Tips: When creating a user, send the subject of the email (eg:Create account successfully)')
)
EMAIL_CUSTOM_USER_CREATED_HONORIFIC = serializers.CharField(
max_length=1024, allow_blank=True, required=False,
label=_('Create user honorific'),
label=_('Honorific'),
help_text=_('Tips: When creating a user, send the honorific of the email (eg:Hello)')
)
EMAIL_CUSTOM_USER_CREATED_BODY = serializers.CharField(
max_length=4096, allow_blank=True, required=False,
label=_('Create user email content'),
label=_('Content'),
help_text=_(
'Tips: When creating a user, send the content of the email, support {username} {name} {email} label')
)

View File

@ -23,7 +23,7 @@ class SecurityPasswordRuleSerializer(serializers.Serializer):
)
OLD_PASSWORD_HISTORY_LIMIT_COUNT = serializers.IntegerField(
min_value=0, max_value=99999, required=True,
label=_('Number of repeated historical passwords'),
label=_('Recent password count'),
help_text=_(
'Tip: When the user resets the password, it cannot be '
'the previous n historical passwords of the user'
@ -31,23 +31,23 @@ class SecurityPasswordRuleSerializer(serializers.Serializer):
)
SECURITY_PASSWORD_MIN_LENGTH = serializers.IntegerField(
min_value=6, max_value=30, required=True,
label=_('Password minimum length')
label=_("Minimum length (User)")
)
SECURITY_ADMIN_USER_PASSWORD_MIN_LENGTH = serializers.IntegerField(
min_value=6, max_value=30, required=True,
label=_('Admin user password minimum length')
label=_('Minimum length (Admin)')
)
SECURITY_PASSWORD_UPPER_CASE = serializers.BooleanField(
required=False, label=_('Must contain capital')
required=False, label=_('Uppercase')
)
SECURITY_PASSWORD_LOWER_CASE = serializers.BooleanField(
required=False, label=_('Must contain lowercase')
required=False, label=_('Lowercase')
)
SECURITY_PASSWORD_NUMBER = serializers.BooleanField(
required=False, label=_('Must contain numeric')
required=False, label=_('Digits')
)
SECURITY_PASSWORD_SPECIAL_CHAR = serializers.BooleanField(
required=False, label=_('Must contain special')
required=False, label=_('Special characters')
)
@ -60,30 +60,30 @@ login_ip_limit_time_help_text = _(
class SecurityLoginLimitSerializer(serializers.Serializer):
SECURITY_LOGIN_LIMIT_COUNT = serializers.IntegerField(
min_value=3, max_value=99999,
label=_('Limit the number of user login failures')
label=_('Login failures count')
)
SECURITY_LOGIN_LIMIT_TIME = serializers.IntegerField(
min_value=5, max_value=99999, required=True,
label=_('Block user login interval (minute)'),
label=_('Login failure period (minute)'),
help_text=login_ip_limit_time_help_text
)
SECURITY_LOGIN_IP_LIMIT_COUNT = serializers.IntegerField(
min_value=3, max_value=99999,
label=_('Limit the number of IP login failures')
label=_('Login failures count')
)
SECURITY_LOGIN_IP_LIMIT_TIME = serializers.IntegerField(
min_value=5, max_value=99999, required=True,
label=_('Block IP login interval (minute)'),
label=_('Login failure period (minute)'),
help_text=login_ip_limit_time_help_text
)
SECURITY_LOGIN_IP_WHITE_LIST = serializers.ListField(
default=[], label=_('Login IP White List'), allow_empty=True,
default=[], label=_('Login IP whitelist'), allow_empty=True,
child=serializers.CharField(max_length=1024, validators=[ip_group_child_validator]),
help_text=ip_group_help_text
)
SECURITY_LOGIN_IP_BLACK_LIST = serializers.ListField(
default=[], label=_('Login IP Black List'), allow_empty=True,
default=[], label=_('Login IP blacklist'), allow_empty=True,
child=serializers.CharField(max_length=1024, validators=[ip_group_child_validator]),
help_text=ip_group_help_text
)
@ -121,7 +121,7 @@ class SecurityAuthSerializer(serializers.Serializer):
)
SECURITY_MFA_AUTH_ENABLED_FOR_THIRD_PARTY = serializers.BooleanField(
required=False, default=True,
label=_('Third-party login users perform MFA authentication'),
label=_('Third-party login MFA'),
help_text=_('The third-party login modes include OIDC, CAS, and SAML2'),
)
OTP_ISSUER_NAME = serializers.CharField(
@ -150,16 +150,16 @@ class SecurityAuthSerializer(serializers.Serializer):
)
SECURITY_LOGIN_CHALLENGE_ENABLED = serializers.BooleanField(
required=False, default=False,
label=_("Enable Login dynamic code"),
label=_("Login dynamic code"),
help_text=_("The password and additional code are sent to a third party "
"authentication system for verification")
)
SECURITY_LOGIN_CAPTCHA_ENABLED = serializers.BooleanField(
required=False, default=False, label=_("Enable Login captcha"),
required=False, default=False, label=_("Login captcha"),
help_text=_("Enable captcha to prevent robot authentication")
)
SECURITY_CHECK_DIFFERENT_CITY_LOGIN = serializers.BooleanField(
required=False, label=_('Remote Login Protection'),
required=False, label=_('Suspicious Login Verification'),
help_text=_(
'The system determines whether the login IP address belongs to a common login city. '
'If the account is logged in from a common login city, the system sends a remote login reminder'
@ -167,7 +167,7 @@ class SecurityAuthSerializer(serializers.Serializer):
)
SECURITY_UNCOMMON_USERS_TTL = serializers.IntegerField(
min_value=30, max_value=99999, required=False,
label=_('Unused user timeout (day)'),
label=_('Auto Disable Threshold (day)'),
help_text=_("Detect infrequent users daily and disable them if they exceed the predetermined time limit.")
)
@ -188,17 +188,17 @@ class SecurityAuthSerializer(serializers.Serializer):
class SecuritySessionSerializer(serializers.Serializer):
SECURITY_WATERMARK_ENABLED = serializers.BooleanField(
required=True, label=_('Enable watermark'),
required=True, label=_('Watermark'),
help_text=_('Enabled, the web session and replay contains watermark information')
)
SECURITY_MAX_IDLE_TIME = serializers.IntegerField(
min_value=1, max_value=99999, required=False,
label=_('Connection max idle time (minute)'),
label=_('Max idle time (minute)'),
help_text=_('If idle time more than it, disconnect connection.')
)
SECURITY_MAX_SESSION_TIME = serializers.IntegerField(
min_value=1, max_value=99999, required=False,
label=_('Session max connection time (hour)'),
label=_('Max online time (hour)'),
help_text=_('If session connection time more than it, disconnect connection.')
)
SECURITY_LUNA_REMEMBER_AUTH = serializers.BooleanField(

View File

@ -6,8 +6,8 @@ class TerminalSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Terminal')
SORT_BY_CHOICES = (
('name', _('Hostname')),
('ip', _('IP'))
('name', _('Name')),
('ip', _('Address'))
)
PAGE_SIZE_CHOICES = (
@ -19,23 +19,23 @@ class TerminalSettingSerializer(serializers.Serializer):
('50', '50'),
)
SECURITY_SERVICE_ACCOUNT_REGISTRATION = serializers.BooleanField(
required=True, label=_('Enable terminal register'),
required=True, label=_('Terminal registration'),
help_text=_(
"Allow terminal register, after all terminal setup, you should disable this for security"
)
)
TERMINAL_PASSWORD_AUTH = serializers.BooleanField(required=False, label=_('Password auth'))
TERMINAL_PASSWORD_AUTH = serializers.BooleanField(required=False, label=_("Password auth"))
TERMINAL_PUBLIC_KEY_AUTH = serializers.BooleanField(
required=False, label=_('Public key auth'),
help_text=_('Tips: If use other auth method, like AD/LDAP, you should disable this to '
required=False, label=_("public key auth"),
help_text=_('Information: If use other auth method, like AD/LDAP, you should disable this to '
'avoid being able to log in after deleting')
)
TERMINAL_ASSET_LIST_SORT_BY = serializers.ChoiceField(
SORT_BY_CHOICES, required=False, label=_('List sort by')
SORT_BY_CHOICES, required=False, label=_('Asset list sorting')
)
TERMINAL_ASSET_LIST_PAGE_SIZE = serializers.ChoiceField(
PAGE_SIZE_CHOICES, required=False, label=_('List page size')
PAGE_SIZE_CHOICES, required=False, label=_('Asset list page size')
)
TERMINAL_MAGNUS_ENABLED = serializers.BooleanField(label=_("Enable database proxy"))
TERMINAL_RAZOR_ENABLED = serializers.BooleanField(label=_("Enable Razor"))
TERMINAL_KOKO_SSH_ENABLED = serializers.BooleanField(label=_("Enable SSH Client"))
TERMINAL_MAGNUS_ENABLED = serializers.BooleanField(label="Magnus")
TERMINAL_RAZOR_ENABLED = serializers.BooleanField(label="Razor")
TERMINAL_KOKO_SSH_ENABLED = serializers.BooleanField(label="Koko")

View File

@ -170,9 +170,9 @@ class CommandAlertMessage(CommandAlertMixin, SystemMessage):
class CommandExecutionAlert(CommandAlertMixin, SystemMessage):
category = CATEGORY
category_label = CATEGORY_LABEL
message_type_label = _('Batch danger command alert')
category = 'Workbench'
category_label = _('Job')
message_type_label = _('Command reject')
def __init__(self, command):
self.command = command
@ -222,7 +222,7 @@ class CommandExecutionAlert(CommandAlertMixin, SystemMessage):
class StorageConnectivityMessage(SystemMessage):
category = 'storage'
category_label = _('Command and replay storage')
message_type_label = _('Connectivity alarm')
message_type_label = _('Connectivity')
def __init__(self, errors):
self.errors = errors

View File

@ -69,7 +69,7 @@ class SessionCommandSerializerMixin(serializers.Serializer):
"""使用这个类作为基础Command Log Serializer类, 用来序列化"""
id = serializers.UUIDField(read_only=True)
# 限制 64 字符,不能直接迁移成 128 字符,命令表数据量会比较大
account = serializers.CharField(label=_("Account "))
account = serializers.CharField(label=_("Account"))
output = serializers.CharField(max_length=2048, allow_blank=True, label=_("Output"))
timestamp = serializers.IntegerField(label=_('Timestamp'))
timestamp_display = serializers.DateTimeField(read_only=True, label=_('Datetime'))

View File

@ -30,7 +30,7 @@ class ReplayStorageTypeBaseSerializer(serializers.Serializer):
)
ACCESS_KEY = serializers.CharField(
max_length=1024, required=False, allow_blank=True,
label=_('Access key id'), allow_null=True,
label=_('Access key ID'), allow_null=True,
)
SECRET_KEY = EncryptedField(
max_length=1024, required=False, allow_blank=True,

View File

@ -23,7 +23,7 @@ class Migration(migrations.Migration):
primary_key=True, serialize=False, to='tickets.ticket')),
('apply_login_ip', models.GenericIPAddressField(null=True, verbose_name='Login IP')),
('apply_login_city', models.CharField(max_length=64, null=True, verbose_name='Login city')),
('apply_login_datetime', models.DateTimeField(null=True, verbose_name='Login datetime')),
('apply_login_datetime', models.DateTimeField(null=True, verbose_name='Login Date')),
],
options={
'abstract': False,

View File

@ -9,7 +9,7 @@ __all__ = ['ApplyLoginTicket']
class ApplyLoginTicket(Ticket):
apply_login_ip = models.GenericIPAddressField(verbose_name=_('Login IP'), null=True)
apply_login_city = models.CharField(max_length=64, verbose_name=_('Login city'), null=True)
apply_login_datetime = models.DateTimeField(verbose_name=_('Login datetime'), null=True)
apply_login_datetime = models.DateTimeField(verbose_name=_('Login Date'), null=True)
class Meta:
verbose_name = _('Apply Login Ticket')

View File

@ -100,7 +100,7 @@ class Migration(migrations.Migration):
('ip', models.GenericIPAddressField(verbose_name='Login IP')),
('city', models.CharField(blank=True, max_length=254, null=True, verbose_name='Login city')),
('user_agent', models.CharField(blank=True, max_length=254, null=True, verbose_name='User agent')),
('datetime', models.DateTimeField(auto_now_add=True, verbose_name='Date login')),
('datetime', models.DateTimeField(auto_now_add=True, verbose_name='Login Date')),
],
options={
'ordering': ['-datetime', 'username'],