From 98efb98190fef178b9ccc3d5b991a41d8eafdf82 Mon Sep 17 00:00:00 2001 From: ssongliu Date: Wed, 1 Mar 2023 14:05:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=94=A8=E6=88=B7=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=E9=BB=98=E8=AE=A4=E5=A2=9E=E5=8A=A0=E5=A4=8D=E6=9D=82?= =?UTF-8?q?=E5=BA=A6=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/service/auth.go | 2 +- backend/init/migration/migrations/init.go | 2 +- frontend/src/global/form-rules.ts | 19 +++++++++++++++++++ frontend/src/lang/modules/en.ts | 1 + frontend/src/lang/modules/zh.ts | 1 + .../src/views/login/components/login-form.vue | 4 ++-- frontend/src/views/setting/panel/index.vue | 2 +- 7 files changed, 26 insertions(+), 5 deletions(-) diff --git a/backend/app/service/auth.go b/backend/app/service/auth.go index 5448220f5..e9ec66b01 100644 --- a/backend/app/service/auth.go +++ b/backend/app/service/auth.go @@ -60,7 +60,7 @@ func (u *AuthService) Login(c *gin.Context, info dto.Login) (*dto.UserLoginInfo, if err != nil { return nil, constant.ErrAuth } - if info.Password != pass && nameSetting.Value == info.Name { + if info.Password != pass || nameSetting.Value != info.Name { return nil, constant.ErrAuth } mfa, err := settingRepo.Get(settingRepo.WithByKey("MFAStatus")) diff --git a/backend/init/migration/migrations/init.go b/backend/init/migration/migrations/init.go index 3cf4e413c..9655c0dc0 100644 --- a/backend/init/migration/migrations/init.go +++ b/backend/init/migration/migrations/init.go @@ -107,7 +107,7 @@ var AddTableSetting = &gormigrate.Migration{ if err := tx.Create(&model.Setting{Key: "ExpirationDays", Value: "0"}).Error; err != nil { return err } - if err := tx.Create(&model.Setting{Key: "ComplexityVerification", Value: "disable"}).Error; err != nil { + if err := tx.Create(&model.Setting{Key: "ComplexityVerification", Value: "enable"}).Error; err != nil { return err } if err := tx.Create(&model.Setting{Key: "MFAStatus", Value: "disable"}).Error; err != nil { diff --git a/frontend/src/global/form-rules.ts b/frontend/src/global/form-rules.ts index 8ef4d24af..3a3761aa1 100644 --- a/frontend/src/global/form-rules.ts +++ b/frontend/src/global/form-rules.ts @@ -41,6 +41,19 @@ const checkName = (rule: any, value: any, callback: any) => { } }; +const checkUserName = (rule: any, value: any, callback: any) => { + if (value === '' || typeof value === 'undefined' || value == null) { + callback(new Error(i18n.global.t('commons.rule.userName'))); + } else { + const reg = /^[a-zA-Z\u4e00-\u9fa5]{1}[a-zA-Z0-9_\u4e00-\u9fa5]{5,30}$/; + if (!reg.test(value) && value !== '') { + callback(new Error(i18n.global.t('commons.rule.userName'))); + } else { + callback(); + } + } +}; + const checkSimpleName = (rule: any, value: any, callback: any) => { if (value === '' || typeof value === 'undefined' || value == null) { callback(new Error(i18n.global.t('commons.rule.simpleName'))); @@ -138,6 +151,7 @@ interface CommonRule { requiredSelect: FormItemRule; requiredSelectBusiness: FormItemRule; name: FormItemRule; + userName: FormItemRule; simpleName: FormItemRule; dbName: FormItemRule; imageName: FormItemRule; @@ -196,6 +210,11 @@ export const Rules: CommonRule = { validator: checkName, trigger: 'blur', }, + userName: { + required: true, + validator: checkUserName, + trigger: 'blur', + }, linuxName: { required: true, validator: checkLinuxName, diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts index ea69fcc45..96693bf43 100644 --- a/frontend/src/lang/modules/en.ts +++ b/frontend/src/lang/modules/en.ts @@ -120,6 +120,7 @@ export default { requiredInput: 'Please enter the required fields', requiredSelect: 'Please select the required fields', commonName: 'Support English, Chinese, numbers, .-, and _ length 1-30', + userName: 'Support English, Chinese, numbers and _ length 5-30', simpleName: 'Support English, numbers and _ length 1-30', dbName: 'Support English, Chinese, numbers, .-, and _ length 1-16', imageName: 'Support English, Chinese, numbers, :.-_, length 1-30', diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index 0a8fc16f6..cb1b64897 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -125,6 +125,7 @@ export default { requiredInput: '请填写必填项', requiredSelect: '请选择必选项', commonName: '支持英文、中文、数字、.-和_,长度1-30', + userName: '支持英文、中文、数字和_,长度5-30', simpleName: '支持英文、数字、_,长度1-30', dbName: '支持英文、中文、数字、.-_,长度1-16', imageName: '支持英文、中文、数字、:.-_,长度1-30', diff --git a/frontend/src/views/login/components/login-form.vue b/frontend/src/views/login/components/login-form.vue index 2a1315acf..2bd4617f5 100644 --- a/frontend/src/views/login/components/login-form.vue +++ b/frontend/src/views/login/components/login-form.vue @@ -190,8 +190,8 @@ const registerForm = reactive({ }); const registerRules = reactive({ name: [Rules.requiredInput], - password: [Rules.requiredInput], - rePassword: [Rules.requiredInput, { validator: checkPassword, trigger: 'blur' }], + password: [Rules.requiredInput, Rules.password], + rePassword: [Rules.requiredInput, Rules.password, { validator: checkPassword, trigger: 'blur' }], }); const loginButtonFocused = ref(); diff --git a/frontend/src/views/setting/panel/index.vue b/frontend/src/views/setting/panel/index.vue index 050aaeb5d..4c23bbac4 100644 --- a/frontend/src/views/setting/panel/index.vue +++ b/frontend/src/views/setting/panel/index.vue @@ -6,7 +6,7 @@
- +