Skip to content

忘记密码

Code Bird Cloud 支持用户通过邮箱或手机号接收验证码来重置密码。当用户忘记登录密码时,可以通过此流程自助完成密码重置,无需管理员介入。

前提条件

要使用忘记密码功能,系统需要满足以下条件:

如果系统未配置任何消息连接器,登录页面将不会显示 "忘记密码" 入口。

流程步骤

密码重置的完整流程如下:

第 1 步:发起密码重置

用户在登录页面点击 "忘记密码" 链接,进入密码重置页面。

第 2 步:输入标识符

用户输入注册时绑定的邮箱地址或手机号码。系统会验证该标识符是否存在对应的用户账户。

第 3 步:发送验证码

系统通过已配置的连接器(邮件或短信)向用户发送一次性验证码。

相关 API:

POST /api/interaction/verification-code
Content-Type: application/json

{
  "identifier": "user@example.com",
  "identifier_type": "email",
  "interaction_type": "forgot_password"
}

验证码有效期通常为 5 分钟(300 秒)。

第 4 步:验证身份

用户输入收到的验证码,系统验证其正确性。

相关 API:

POST /api/interaction/verify-code
Content-Type: application/json

{
  "identifier": "user@example.com",
  "identifier_type": "email",
  "interaction_type": "forgot_password",
  "code": "123456"
}

第 5 步:设置新密码

验证码验证通过后,用户可以设置新密码。新密码必须符合系统配置的密码策略。

相关 API:

POST /api/interaction/forgot-password
Content-Type: application/json

{
  "identifier": "user@example.com",
  "new_password": "newSecurePassword123"
}

第 6 步:完成重置

密码更新成功后,用户可以使用新密码进行登录。系统会引导用户返回登录页面。

密码策略

新密码必须符合管理员在登录体验中配置的密码策略,包括:

策略项说明默认值
最小长度密码的最少字符数(范围 6~32)8
要求大写字母密码是否必须包含大写字母
要求小写字母密码是否必须包含小写字母
要求数字密码是否必须包含数字
要求特殊字符密码是否必须包含特殊字符

如果新密码不符合密码策略,系统会返回具体的错误信息,提示用户调整密码。

安全注意事项

  • 验证码有效期:验证码在发送后 5 分钟内有效,过期后需要重新发送
  • 发送频率限制:系统对验证码发送频率进行限制,防止恶意请求。连续发送过于频繁时会返回 400 错误
  • 验证码使用次数:每个验证码只能使用一次,验证成功后立即失效
  • 标识符验证:系统会验证输入的邮箱或手机号是否对应已注册的用户,避免信息泄露
  • 密码策略强制执行:新密码必须满足系统配置的所有密码策略要求

相关文档

Released under the MIT License.