diff --git a/apps/locale/ja/LC_MESSAGES/django.mo b/apps/locale/ja/LC_MESSAGES/django.mo index ef4ae4516..a922b4d2e 100644 --- a/apps/locale/ja/LC_MESSAGES/django.mo +++ b/apps/locale/ja/LC_MESSAGES/django.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c612630da01a1ec5265966e044f6cf98d557f7db507e9d23c8ba15d409adfbed -size 132739 +oid sha256:7db985efdf818137dafe489f339955f4d71a245ffd6becc8f6efac539a625682 +size 133463 diff --git a/apps/locale/ja/LC_MESSAGES/django.po b/apps/locale/ja/LC_MESSAGES/django.po index 0b68759b8..c7b3c58a2 100644 --- a/apps/locale/ja/LC_MESSAGES/django.po +++ b/apps/locale/ja/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-11-16 09:29+0800\n" +"POT-Creation-Date: 2022-11-16 20:24+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -474,7 +474,9 @@ msgstr "Chromeパスワード" msgid "" "Typically, the port is 9000,the HTTP interface and the native interface use " "different ports" -msgstr "デフォルトポートは9000で、HTTPインタフェースとネイティブインタフェースは異なるポートを使用する" +msgstr "" +"デフォルトポートは9000で、HTTPインタフェースとネイティブインタフェースは異な" +"るポートを使用する" #: applications/serializers/attrs/application_type/custom.py:12 msgid "Operating parameter" @@ -1689,7 +1691,7 @@ msgstr "現在のユーザーはmfaタイプをサポートしていません: { msgid "User does not exist: {}" msgstr "ユーザーが存在しない: {}" -#: authentication/api/password.py:31 users/views/profile/reset.py:122 +#: authentication/api/password.py:31 users/views/profile/reset.py:127 msgid "No user matched" msgstr "ユーザーにマッチしなかった" @@ -2026,7 +2028,7 @@ msgstr "メッセージ検証コードが無効" #: authentication/serializers/password_mfa.py:24 #: settings/serializers/auth/sms.py:27 users/forms/profile.py:103 #: users/forms/profile.py:106 users/templates/users/forgot_password.html:111 -#: users/views/profile/reset.py:74 +#: users/views/profile/reset.py:79 msgid "SMS" msgstr "メッセージ" @@ -2165,7 +2167,7 @@ msgstr "アセットまたはアプリが必要" #: settings/serializers/email.py:50 users/forms/profile.py:102 #: users/forms/profile.py:106 users/models/user.py:675 #: users/templates/users/forgot_password.html:116 -#: users/views/profile/reset.py:68 +#: users/views/profile/reset.py:73 msgid "Email" msgstr "メール" @@ -4729,8 +4731,8 @@ msgstr "期限切れです。" #, python-format msgid "" "\n" -" Your password has expired, please click this link update password.\n" +" Your password has expired, please click this link update password.\n" " " msgstr "" "\n" @@ -4751,34 +4753,34 @@ msgid "" " " msgstr "" "\n" -" クリックしてください リンク パスワードの更新\n" +" クリックしてください リンク パスワードの更新\n" " " #: templates/_message.html:43 #, python-format msgid "" "\n" -" Your information was incomplete. Please click this link to complete your information.\n" +" Your information was incomplete. Please click this link to complete your information.\n" " " msgstr "" "\n" -" あなたの情報が不完全なので、クリックしてください。 リンク 補完\n" +" あなたの情報が不完全なので、クリックしてください。 リンク 補完\n" " " #: templates/_message.html:56 #, python-format msgid "" "\n" -" Your ssh public key not set or expired. Please click this link to update\n" +" Your ssh public key not set or expired. Please click this link to update\n" " " msgstr "" "\n" -" SSHキーが設定されていないか無効になっている場合は、 リンク 更新\n" +" SSHキーが設定されていないか無効になっている場合は、 リンク 更新\n" " " #: templates/_mfa_login_field.html:28 @@ -5907,7 +5909,7 @@ msgstr "ユーザーパスワード履歴" msgid "Reset password" msgstr "パスワードのリセット" -#: users/notifications.py:85 users/views/profile/reset.py:189 +#: users/notifications.py:85 users/views/profile/reset.py:194 msgid "Reset password success" msgstr "パスワードのリセット成功" @@ -6271,23 +6273,30 @@ msgstr "OTP無効化成功、ログインページを返す" msgid "Password invalid" msgstr "パスワード無効" -#: users/views/profile/reset.py:144 users/views/profile/reset.py:155 +#: users/views/profile/reset.py:47 +msgid "" +"Non-local users can log in only from third-party platforms and cannot change " +"their passwords: {}" +msgstr "ローカル以外のユーザーは、サードパーティ プラットフォームからのログインのみが許可され、" +"パスワードの変更はサポートされていません: {}" + +#: users/views/profile/reset.py:149 users/views/profile/reset.py:160 msgid "Token invalid or expired" msgstr "トークンが無効または期限切れ" -#: users/views/profile/reset.py:160 +#: users/views/profile/reset.py:165 msgid "User auth from {}, go there change password" msgstr "ユーザー認証ソース {}, 対応するシステムにパスワードを変更してください" -#: users/views/profile/reset.py:167 +#: users/views/profile/reset.py:172 msgid "* Your password does not meet the requirements" msgstr "* パスワードが要件を満たしていない" -#: users/views/profile/reset.py:173 +#: users/views/profile/reset.py:178 msgid "* The new password cannot be the last {} passwords" msgstr "* 新しいパスワードを最後の {} パスワードにすることはできません" -#: users/views/profile/reset.py:190 +#: users/views/profile/reset.py:195 msgid "Reset password success, return to login page" msgstr "パスワードの成功をリセットし、ログインページに戻る" diff --git a/apps/locale/zh/LC_MESSAGES/django.mo b/apps/locale/zh/LC_MESSAGES/django.mo index 3b4c0a0d2..a06c70b86 100644 --- a/apps/locale/zh/LC_MESSAGES/django.mo +++ b/apps/locale/zh/LC_MESSAGES/django.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a77697e0f3332c8679c554fdbd1579b2337cc641a7e42cca2c039360c9056d95 -size 108944 +oid sha256:b143c62843946c3e18b623d05065f12e9d3c578efe5cd0d2016056d2b8448ae8 +size 109495 diff --git a/apps/locale/zh/LC_MESSAGES/django.po b/apps/locale/zh/LC_MESSAGES/django.po index 097dda878..ac9bd433c 100644 --- a/apps/locale/zh/LC_MESSAGES/django.po +++ b/apps/locale/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-11-16 09:32+0800\n" +"POT-Creation-Date: 2022-11-16 20:24+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -1677,7 +1677,7 @@ msgstr "当前用户不支持 MFA 类型: {}" msgid "User does not exist: {}" msgstr "用户不存在: {}" -#: authentication/api/password.py:31 users/views/profile/reset.py:122 +#: authentication/api/password.py:31 users/views/profile/reset.py:127 msgid "No user matched" msgstr "没有匹配到用户" @@ -2002,7 +2002,7 @@ msgstr "短信验证码校验失败" #: authentication/serializers/password_mfa.py:24 #: settings/serializers/auth/sms.py:27 users/forms/profile.py:103 #: users/forms/profile.py:106 users/templates/users/forgot_password.html:111 -#: users/views/profile/reset.py:74 +#: users/views/profile/reset.py:79 msgid "SMS" msgstr "短信" @@ -2137,7 +2137,7 @@ msgstr "资产或应用必填" #: settings/serializers/email.py:50 users/forms/profile.py:102 #: users/forms/profile.py:106 users/models/user.py:675 #: users/templates/users/forgot_password.html:116 -#: users/views/profile/reset.py:68 +#: users/views/profile/reset.py:73 msgid "Email" msgstr "邮箱" @@ -4652,13 +4652,13 @@ msgstr "过期。" #, python-format msgid "" "\n" -" Your password has expired, please click this link update password.\n" +" Your password has expired, please click this link update password.\n" " " msgstr "" "\n" -" 您的密码已经过期,请点击 链接 更新密码\n" +" 您的密码已经过期,请点击 链接 更新密码\n" " " #: templates/_message.html:30 @@ -4682,8 +4682,8 @@ msgstr "" #, python-format msgid "" "\n" -" Your information was incomplete. Please click this link to complete your information.\n" +" Your information was incomplete. Please click this link to complete your information.\n" " " msgstr "" "\n" @@ -4695,13 +4695,13 @@ msgstr "" #, python-format msgid "" "\n" -" Your ssh public key not set or expired. Please click this link to update\n" +" Your ssh public key not set or expired. Please click this link to update\n" " " msgstr "" "\n" -" 您的SSH密钥没有设置或已失效,请点击 链接 更新\n" +" 您的SSH密钥没有设置或已失效,请点击 链接 更新\n" " " #: templates/_mfa_login_field.html:28 @@ -5814,7 +5814,7 @@ msgstr "用户密码历史" msgid "Reset password" msgstr "重置密码" -#: users/notifications.py:85 users/views/profile/reset.py:189 +#: users/notifications.py:85 users/views/profile/reset.py:194 msgid "Reset password success" msgstr "重置密码成功" @@ -6168,23 +6168,29 @@ msgstr "MFA(OTP) 禁用成功,返回登录页面" msgid "Password invalid" msgstr "用户名或密码无效" -#: users/views/profile/reset.py:144 users/views/profile/reset.py:155 +#: users/views/profile/reset.py:47 +msgid "" +"Non-local users can log in only from third-party platforms and cannot change " +"their passwords: {}" +msgstr "非本地用户仅允许从第三方平台登录,不支持修改密码: {}" + +#: users/views/profile/reset.py:149 users/views/profile/reset.py:160 msgid "Token invalid or expired" msgstr "Token错误或失效" -#: users/views/profile/reset.py:160 +#: users/views/profile/reset.py:165 msgid "User auth from {}, go there change password" msgstr "用户认证源来自 {}, 请去相应系统修改密码" -#: users/views/profile/reset.py:167 +#: users/views/profile/reset.py:172 msgid "* Your password does not meet the requirements" msgstr "* 您的密码不符合要求" -#: users/views/profile/reset.py:173 +#: users/views/profile/reset.py:178 msgid "* The new password cannot be the last {} passwords" msgstr "* 新密码不能是最近 {} 次的密码" -#: users/views/profile/reset.py:190 +#: users/views/profile/reset.py:195 msgid "Reset password success, return to login page" msgstr "重置密码成功,返回到登录页面" diff --git a/apps/users/views/profile/reset.py b/apps/users/views/profile/reset.py index fd68efb87..2972225ef 100644 --- a/apps/users/views/profile/reset.py +++ b/apps/users/views/profile/reset.py @@ -43,6 +43,11 @@ class UserForgotPasswordPreviewingView(FormView): if not user: form.add_error('username', _('User does not exist: {}').format(username)) return super().form_invalid(form) + if settings.ONLY_ALLOW_AUTH_FROM_SOURCE and not user.is_local: + error = _('Non-local users can log in only from third-party platforms ' + 'and cannot change their passwords: {}').format(username) + form.add_error('username', error) + return super().form_invalid(form) token = random_string(36) user_map = {'username': user.username, 'phone': user.phone, 'email': user.email}