分享
3步解决n8n被薅羊毛:Turnstile验证拯救你的API账单
输入“/”快速插入内容
3步解决n8n被薅羊毛:Turnstile验证拯救你的API账单
用户7863
用户7863
2025年8月1日修改
在上一篇文章里,我介绍了
n8n webhook 的三种认证方式
——API密钥、基础认证和 Bearer Token。但那些方案?仅仅适用于后端服务间的调用罢了。它们就像是服务器之间的"暗号",适合机器对机器的通信。
然而,当我们将 webhook 作为前端服务直接展现给用户时,游戏规则完全变了。用户不会记住复杂的 API 密钥,也不应该暴露这些敏感信息给浏览器。更关键的是,当你的服务 URL 暴露在公网上时,又该如何有效防止恶意自动化请求呢?
这个问题,比想象中更加棘手。
想象一下这样的场景:你精心搭建了一个 AI 翻译服务,用户可以通过网页上传文档并获得翻译结果。一切看起来完美,直到某天你发现 API 账单暴增——原来有人写了脚本在批量"薅羊毛"。传统的后端认证对此束手无策,因为攻击者根本不需要绕过任何认证,他们直接模拟用户行为就够了。
这就是我们今天要解决的问题。
一、背景
这几天准备给 MuleRun 提交一个工作流。原来我是采用 n8n 的 form 节点作为用户资料的提交。实话实说?默认表单样式实在太丑了!
虽然能通过样式修改,但效果依然不尽如人意。
没办法,后来还是通过 vibe coding 的方式搞出了一个表单界面,效果还是可以的。
怎么实现的?其实很简单,在 n8n 里通过 webhook 就能搞定,如下图所示:
但是,问题来了。我们精心打造的工作流是为用户服务的,现实却异常残酷。恶意爬虫和自动化攻击接踵而至:
💀
•
每天大量自动化脚本疯狂批量调用翻译 API