diff --git a/console/src/components/signup/SignupForm.vue b/console/src/components/signup/SignupForm.vue
index ef8db20d2..88bdd092b 100644
--- a/console/src/components/signup/SignupForm.vue
+++ b/console/src/components/signup/SignupForm.vue
@@ -125,7 +125,10 @@ const inputClasses = {
:validation-label="$t('core.signup.fields.password.placeholder')"
:classes="inputClasses"
type="password"
- validation="required|length:0,100"
+ validation="required:trim|length:5,100|matches:/^\S.*\S$/"
+ :validation-messages="{
+ matches: $t('core.formkit.validation.trim'),
+ }"
>
diff --git a/console/src/locales/en.yaml b/console/src/locales/en.yaml
index cc000f595..716016382 100644
--- a/console/src/locales/en.yaml
+++ b/console/src/locales/en.yaml
@@ -1105,6 +1105,8 @@ core:
creation_label: "Create {text} category"
tag_select:
creation_label: "Create {text} tag"
+ validation:
+ trim: Please remove the leading and trailing spaces
common:
buttons:
save: Save
diff --git a/console/src/locales/zh-CN.yaml b/console/src/locales/zh-CN.yaml
index f2326d10b..a0e6d6235 100644
--- a/console/src/locales/zh-CN.yaml
+++ b/console/src/locales/zh-CN.yaml
@@ -1105,6 +1105,8 @@ core:
creation_label: 创建 {text} 分类
tag_select:
creation_label: 创建 {text} 标签
+ validation:
+ trim: 不能以空格开头或结尾
common:
buttons:
save: 保存
diff --git a/console/src/locales/zh-TW.yaml b/console/src/locales/zh-TW.yaml
index 1756713d2..ba21806f7 100644
--- a/console/src/locales/zh-TW.yaml
+++ b/console/src/locales/zh-TW.yaml
@@ -1105,6 +1105,8 @@ core:
creation_label: 創建 {text} 分類
tag_select:
creation_label: 創建 {text} 標籤
+ validation:
+ trim: 不能以空格開頭或結尾
common:
buttons:
save: 保存
diff --git a/console/src/modules/system/users/components/UserCreationModal.vue b/console/src/modules/system/users/components/UserCreationModal.vue
index 42ba92a1d..b4f6d7c2d 100644
--- a/console/src/modules/system/users/components/UserCreationModal.vue
+++ b/console/src/modules/system/users/components/UserCreationModal.vue
@@ -161,7 +161,10 @@ const handleCreateUser = async () => {
:label="$t('core.user.change_password_modal.fields.new_password.label')"
type="password"
name="password"
- validation="required|length:0,100"
+ validation="required:trim|length:5,100|matches:/^\S.*\S$/"
+ :validation-messages="{
+ matches: $t('core.formkit.validation.trim'),
+ }"
>
{
:label="$t('core.user.change_password_modal.fields.new_password.label')"
name="password"
type="password"
- validation="required|length:0,100"
+ validation="required:trim|length:5,100|matches:/^\S.*\S$/"
+ :validation-messages="{
+ matches: $t('core.formkit.validation.trim'),
+ }"
>