跳到正文
MuoCeon 文档中心
v1auth 上下文

验证挑战

邮箱、密码、通行密钥、验证器与恢复码的验证端点,以及失败时的响应形态。

验证挑战是登录/注册流程的中间步骤。所有端点都要求把流程令牌放在 Authorization: Bearer 里,成功后换发一枚新的流程令牌。

端点

方法路径说明
POST/verify/email向指定邮箱发送验证码
POST/verify/email/confirm提交邮箱验证码
POST/verify/password校验密码
POST/verify/passkey取通行密钥断言挑战
POST/verify/passkey/confirm提交通行密钥断言
POST/verify/authenticator校验验证器 TOTP
POST/verify/recovery-code校验恢复码

邮箱验证

POST /verify/email

参数类型必填说明
emailstring✅接收验证码的邮箱,3–255 字符,服务端去空白并转小写
{ "success": true, "flow_token": "eyJhbGciOi..." }

注册流程里该地址记为待绑定邮箱;登录流程里会与流程令牌记录的可用方式比对,不匹配时静默成功但不发信。

POST /verify/email/confirm

参数类型必填说明
codestring✅邮件中的验证码,4–32 字符

校验对象是流程令牌内记录的待验证码列表,成功后该邮箱在流程里被标记为已验证。

密码验证

参数类型必填说明
passwordstring✅密码,1–128 字符

登录时与库中哈希比对;注册时把 bcrypt 哈希写进流程令牌,等流程结束时落库。

通行密钥验证

POST /verify/passkey

无请求体。返回 PublicKeyCredentialRequestOptions,其中 allowCredentials 由账号已注册的通行密钥填充。

{ "options": { "challenge": "...", "allowCredentials": [] }, "flow_token": "eyJ..." }

POST /verify/passkey/confirm

请求体是 AuthenticationResponseJSON(原样透传给 WebAuthn 校验)。校验对象是服务端保存的挑战与凭据公钥。

验证器 TOTP

参数类型必填说明
codestring✅6 位数字验证码

恢复码

参数类型必填说明
codestring✅8–32 字符的一次性恢复码

恢复码在库中以哈希形式存放,匹配成功后立即从集合中移除,不能重复使用。

失败时的响应

端点失败形态
通行密钥确认200 + success: false,并带新的 flow_token
验证器 TOTP400 + success: false,并带新的 flow_token
恢复码400 + success: false,并带新的 flow_token

失败也返回流程令牌

客户端必须拿到新的流程令牌才能重试。若失败走 4xx 错误体,令牌就带不回来,用户只能从头开始登录。 通行密钥确认因此固定用 200 表达「这次断言没通过」,而不是用状态码。

相关

本页目录