用途:帮助用户在忘记密码时重新获得账户访问权限,也适用于修改可能已泄露的密码、管理员强制重置、检测到可疑活动后的账户恢复,以及安全策略要求的定期轮换。
主要能力:描述典型多步骤流程(邮件请求重置、接收限时令牌链接、设置新密码),并在安全性与可用性之间取得平衡。提供无障碍要点:用 for/id 关联标签与输入框,用 role="alert" 和 aria-describedby 播报错误,请求表单使用 autocomplete="email",重置表单使用 autocomplete="new-password",保证各步骤可键盘导航并保持清晰的标题层级。性能目标包括每步表单渲染小于 100ms、重置邮件 30 秒内送达、令牌服务端校验小于 200ms、密码更新小于 500ms、成功后跳转小于 200ms。
使用方式:先确认模式与问题及约束匹配,再从 references/pattern.md 的解剖与示例出发选择最小可行变体,应用无障碍、性能和交互护栏后再做视觉打磨,并按测试指引验证键盘、屏幕阅读器、响应式和失败场景。
限制与常见错误:避免在无密码认证、仅社交登录、仅 SSO 或管理员直接发放临时凭证的场景使用。不要暴露账户是否存在,应统一提示“如果账户存在,我们已发送重置链接”并保持响应时间一致;令牌应设为一小时或更短过期,过期时给出明确错误并提供重新请求入口;对重置请求限流,例如每邮箱每小时 3 次,且无论邮箱是否存在都返回相同响应与时间。不要使用对慢速用户不利的限时 CAPTCHA,不要仅靠颜色表示字段错误,也不要自动提交表单。具体实现细节、示例与测试说明见 references/pattern.md。