API 参考 / admin
PUT /api/v1/admin/settings/login-throttle · adminUpdateLoginThrottleSettings
覆盖口令登录的失败限速阈值(单 key upsert,support / attachment_storage 同款范式)。 保存即时生效,无需重启——这是运营在遭到撞库时需要当场调紧、平息后再放松的旋钮, 故按配置归属铁律(决策 0007)落 platform_settings 而不是环境变量(B-00263)。
两个维度各自独立计数:账号维度挡「拿一个弱口令账号硬撞」,IP 维度挡「拿一个 IP 遍历账号」。 语义是令牌桶而非锁定:burst 次失败之内不受阻,此后每次失败都要等回填; 额度随时间自动回填、无需管理员解锁,因此按账号计数不会变成「攻击者打几次就把别人的号锁死」。 只有失败消费额度,成功登录立刻清零两个维度。
取值区间:burst ∈ [3, 1000],refillPerMinute ∈ [0.1, 600]。越界返回 422,不静默钳到边界 ——运营以为自己设成了 10000、实际被悄悄改成 1000,比报错更糟。 没有「关闭限速」的开关:一个能被关掉的爆破防护,在真正被撞库的那天大概率是关着的。
写审计 platform.settings.update(阈值不是敏感值,如实进 metadata——调松限速需要可追责)。要求平台超管。
本接口要求浏览器会话。Bearer API Token 无法调用——Token 的生命周期管理必须在网页端完成。
accountBurst(必填)accountRefillPerMinute(必填)ipBurst(必填)ipRefillPerMinute(必填)accountBurst(必填)accountRefillPerMinute(必填)ipBurst(必填)ipRefillPerMinute(必填)401:Problem 错误响应403:Problem 错误响应422:Problem 错误响应curl -X PUT "https://你的项目.workflow.games/api/v1/admin/settings/login-throttle" \
-H "Authorization: Bearer wfp_…" \
-H "content-type: application/json" \
--data '{"accountBurst":1,"accountRefillPerMinute":1,"ipBurst":1,"ipRefillPerMinute":1}'HTTP/1.1 200
{
"accountBurst": 1,
"accountRefillPerMinute": 1,
"ipBurst": 1,
"ipRefillPerMinute": 1
}合同真值:OpenAPI 3.1(0.1.0)。
相关:Agent 接入指南 · 使用指南 · API 参考索引