定义密码恢复的参与者、入口点、状态、转换、恢复路径、消息和边缘情况。此参考规范确定采用边界、失败行为和可观察证据,同时允许配置环境特定的限制。
包状态: 参考上下文已准备好供人工审查。合同和测试场景已完成,但不保证采用的实现已通过测试。
决策
对于密码恢复,采用服务器端凭证和会话生命周期管理,并提供明确的保证。定义确定性的用户旅程,具有可见状态、尽可能可逆的选择、保留输入和可访问的恢复路径。此包为参考合同:采用团队必须根据自身环境中的证据选择数值限制、提供商、司法管辖区和运营负责人。
范围
- 本 UX 模块描述的密码恢复参与者、输入、输出、状态、策略或架构版本及外部可见结果。
- 主要和备用接口、后台工作、缓存、集成、支持路径及可行使相同边界的证据。
- 采用特定的配置、部署、恢复和验证职责,以安全应用参考规范。
本模块之外
- 为每个采用者选择通用供应商、框架、司法管辖区、数值阈值、保留期或服务级别目标。
- 声称已针对下游实现运行打包场景,或该参考规范授予法律、安全或无障碍认证。
合同
- 仅存储受保护的凭证材料,轮换签名和恢复密钥,且避免凭证出现在 URL、日志、分析和支持视图中。
- 将签发、使用、过期、撤销、恢复和重放处理绑定到命名主体和预期操作。
- 返回抗枚举的公共响应,同时保留足够的内部原因和关联数据以支持和应对滥用。
- 在主体、设备、认证器、风险或会话状态变化后重新评估敏感操作,而非永远信任过期登录。
- 仅在实际有待处理工作时显示进度,防止重复激活且不隐藏用户已确认的意图。
- 使用简单、针对操作的消息,区分验证、权限、连接、冲突和终止失败。
- 返回抗枚举响应,并仅通过已验证渠道发放一次性、短期、特定用途的恢复能力,且具备速率和滥用控制。
- 要求新的合规密钥,原子性消耗恢复能力,按策略轮换或撤销受影响的会话和凭证,通知账户,并且支持团队不得绕过身份验证。
实施指导
- 在确定顺畅路径布局前,先原型最长、空白、缓慢、离线、拒绝和辅助技术路径。
- 在选择框架或供应商细节前,建模密码恢复的输入、输出、参与者、状态、不变量、副作用和证据。
- 将适用的密码恢复合同或策略版本与材料状态一起存储,以便迁移、重放和支持决策可追溯。
- 在受控发布后引入路径,比较预期和观察结果,并保持经过测试的恢复路线,直到采纳证据完整。
失败处理和保障措施
- 缺失、过期、重放或矛盾的认证证据拒绝操作,并遵循速率限制的恢复路径。
- 无效或矛盾的密码恢复状态被拒绝或隔离;实现绝不猜测会扩大权限或重复效果的值。
- 重试次数有限且使用持久身份;耗尽后,工作进入可检查的终止状态并有责任人。
验证和运营
- 使用键盘、触摸、屏幕阅读器、窄视口、延迟网络和可恢复服务器错误完成整个流程。
- 监控密码恢复的成功、拒绝、验证失败、依赖失败、重试耗尽和按合同版本的恢复情况,不包含敏感负载维度。
- 在策略、架构、依赖、迁移或边界变更后,重新运行配对的正负测试用例,并保留产生的证据。
采用假设
- 示例中的名称和值为具体测试用例,不是通用默认;采用者通过文档化的证据和所有权替换它们。
- 采用系统能够提供经过身份验证的身份、持久操作或记录版本、有限的遥测数据和受控的变更路径。
本包中看似可执行的示例为测试用例和验收合同。请运行集合验证器检查结构和元数据,然后在目标仓库中翻译并执行场景,最后记录实施证据。
参考文献
- NIST SP 800-63B-4,认证与认证器管理(自 2026-09-08 起适用)