Ruby Agent System PRD

Change Password

Change Password PRD,覆盖当前密码、新密码、确认密码、密码可见性、校验、提交和安全会话规则。

Change Password 是 Profile 模块的账号安全子页面,用于当前登录代理商主动修改自己的登录密码。

页面摘要

项目说明
页面性质当前账号密码修改页,不管理其他账号或权限
核心动作输入当前密码、新密码和确认密码,校验后提交密码修改
数据范围当前登录账号的登录密码和会话安全状态
当前状态表单、校验和提交规则已定义;新密码需满足 8-64 位强度规则,不得与当前密码相同;修改成功后保留当前会话并使其他设备会话失效

参考区

页面状态 Figma 截图

Profile

Profile - 1.3 Change Password 默认态

展示 Change Password 默认桌面态:当前密码、新密码、确认新密码和 Update 按钮。

截图说明只作为 Figma 证据摘要,不作为字段定义;字段口径、完整列、导出和权限规则以字段模型章节为准。

Profile - 1.4 Change Password 输入态

展示 Change Password 输入态:三个密码字段已输入掩码,Current Password 保持紫色焦点边框。

截图说明只作为 Figma 证据摘要,不作为字段定义;字段口径、完整列、导出和权限规则以字段模型章节为准。

功能规则

区域UI 表现对应功能规则
面包屑与页签Home > ProfileChange Password 紫色高亮,Profile Information 可切换页签与导航
密码表单Current Password、New Password、Confirm New Password 三个输入框密码输入
可见性图标每个密码输入框右侧展示眼睛图标密码可见性
Update 按钮紫色主按钮,位于表单下方,宽度与表单区域一致提交修改
反馈字段错误、页级错误和成功提示反馈规则

功能地图

页签与导航

项目说明
Change Password当前页签,只展示密码修改表单。
Profile Information点击后返回 Profile Information
切换规则页签切换不改变 Top、公告条或侧边栏状态。
输入保护如果用户已输入任一密码字段,切换页签前需要提示用户确认放弃输入。

密码输入

字段说明
Current Password必填,输入当前登录密码,默认掩码显示。
New Password必填,建议 8-64 个字符,必须满足系统密码强度规则。
Confirm New Password必填,必须与 New Password 完全一致。

密码输入支持键盘输入、粘贴和浏览器密码管理器填充。密码不得保存到本地存储、日志、URL、埋点或错误上报中。

密码表单字段模型

字段所在区域定义 / 口径展示规则提交备注
Current Password密码表单当前登录账号正在使用的密码。必填,默认掩码,可单独切换可见性。提交给后端校验,不在前端保存。连续错误 5 次后限流 15 分钟。
New Password密码表单用户希望设置的新登录密码。必填,8-64 位,至少包含字母和数字。校验通过后提交。不得与账号、当前密码或最近 5 次历史密码相同。
Confirm New Password密码表单新密码确认输入。必填,必须与 New Password 完全一致。仅用于本次校验,不作为独立密码保存。不一致时阻止提交。
Update密码表单提交密码修改的主按钮。校验通过前不提交;提交中 loading 或禁用。触发密码修改请求。成功后当前会话保持登录,其他会话失效。

密码可见性

交互规则
点击眼睛图标只切换当前字段的明文 / 掩码状态。
再次点击当前字段恢复掩码显示。
离开页面所有密码字段恢复掩码状态。
提交后无论成功或失败,客户端都不保留明文显示状态。

明文展示只能由用户主动点击眼睛图标触发,不能因为校验错误、复制、自动填充或浏览器记住密码而自动展示。

提交修改

交互规则
点击 Update先校验三个字段;校验通过后进入提交中状态。
校验失败不提交请求,在对应字段展示错误。
提交中Update 按钮 loading 或禁用,表单禁止重复提交。
修改成功清空三个密码字段,展示成功反馈;除当前会话外,其他设备按安全策略失效。
修改失败保留用户输入,展示明确失败原因;当前密码错误时允许用户重试。

反馈规则

类型适用场景展示规则
字段级错误空字段、新密码强度不足、确认密码不一致展示在对应字段附近,焦点回到第一个错误字段。
页级错误当前密码错误、账号状态异常、网络超时、系统繁忙展示在表单区域,不只依赖 toast。
成功反馈密码修改成功清空表单,并提示密码已更新。

当前 Change Password 输入态截图已展示三个字段的密码掩码和 Current Password 聚焦态。字段错误、页级错误和成功反馈未出图,按上述规则实现。

业务流程

用户进入 Profile 下的 Change Password 子页面。
用户输入 Current Password、New Password 和 Confirm New Password。
用户可点击眼睛图标临时查看某个字段内容。
用户点击 Update,页面执行必填、强度和一致性校验。
校验通过后提交修改,提交中禁止重复点击。
修改成功后清空表单,并按安全策略处理其他会话。

业务规则

  • Change Password 只能修改当前登录账号密码。

  • 当前密码必须通过系统校验后才能修改。

  • New Password 不能与 Current Password 相同。

  • Confirm New Password 必须与 New Password 完全一致。

  • 密码明文不得进入日志、本地存储、URL、埋点或错误上报。

  • 修改密码成功后,系统需要让其他设备或旧会话按安全策略失效。

  • 如果当前会话已过期,需要跳转到 Login,不能继续提交旧表单。

  • 密码强度规则:至少 8 位,必须包含字母和数字,不允许与账号或当前密码相同。

  • 历史密码限制:禁止复用最近 5 次密码。

  • 错误次数限制:当前密码连续错误 5 次后限流 15 分钟,并要求重新登录后再尝试。

  • 修改成功后的会话处理:当前会话保持登录,其他已登录会话失效。

页面特例

场景处理
Current Password 为空阻止提交,在当前密码字段展示必填错误。
New Password 为空或强度不足阻止提交,在新密码字段展示规则提示。
Confirm New Password 不一致阻止提交,在确认密码字段展示不一致错误。
当前密码错误不修改密码,保留新密码和确认密码输入,提示当前密码错误。
网络异常 / 超时保留输入内容,展示可重试提示。
提交中重复点击忽略后续点击,不产生重复请求。
修改成功后再次进入页面密码字段必须为空,不回显旧输入。

本页目录