grep -rn 'AppKey' dist/
curl -H 'X-App-Key: old-key' https://api.example.com/v1/ping

前端 dist 目录里能直接搜到 AppKey,第二天开放接口调用量从 2 万涨到 8 万,账单多出 600 元。这类现象通常不是突然出现的,往前翻半天日志能看到苗头。

追下去是这么回事:把服务端才该持有的 AppKey 写进了前端配置,打包后是明文。任何人打开控制台都能拿到,配上公开文档就能直接调。签名逻辑放在前端,等于把钥匙和锁一起给了出去。

「AppKey 泄露」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。同一份配置存在多处的,先确认改的是被加载的那一份。

新版本先放一台机器上跑一天再全量,问题一般在这段时间暴露。备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。

处理上按这个顺序:立刻在开放平台重置 AppKey 并下线旧 key;前端只保留回调地址 签名全部放服务端;按 app_id 加调用量突增告警;检查历史包和 CDN 上的旧文件。

确认没问题再收工,旧 key 请求返回 401 invalid app_key 调用量回落到日常水平。

作者 9823189