rest - 如何保护可公开访问的 API?
问题描述
我正在创建一个表格(一种调查)来获取用户输入,任何访问该网站的用户都可以向我提供信息。这意味着,任何人都可以在没有任何令牌或会话的情况下公开访问 API(基本上没有任何内容)
我想阻止人们获取我的端点并创建数千/百万个请求(SPAM) 来淹没我的服务和数据库。我试图查看 Stackoverflow 和一些媒体中的帖子,有趣的是我没有找到太多关于此的内容。
有人说:
- 将我的网站捆绑为混合应用程序,仅将 accessToken 提供给“受信任的设备”以触发我的 api (但这是一个纯 web 应用程序)
- 创建自定义标头并从我的 Web 服务器中识别标头(嗯..?)
- 使用验证码(这只会阻止人们通过 GUI 发送垃圾邮件,但仍然可以通过脚本发送垃圾邮件)
既然它是公开的,这难道不是更好的保护方式吗?有什么想法可以分享吗?
解决方案
推荐阅读
- linux - 如何使用 SSH 在 Windows 上创建符号链接到远程 Linux 文件夹?
- drupal-8 - Drupal 8 |连接远程数据库服务器时Mysql消失错误
- javascript - 使用令牌时出现错误,而使用其他人修复它
- angular - “KeyValue”类型上不存在属性“切换”
'.ngtsc(2339) - angular - 使用 PptxGenJS 将 domtoimage 生成的 svg 添加到 ppt 时出错
- flutter - 如何在不使用 Firebase 的情况下在 Flutter 中进行 OTP 身份验证?
- php - 使用 Livewire + mcamara/laravel-localization 发布 404
- python - 将 int 变量保存在文本文件中
- excel - 如何检查一个 char 的存在,如果它是真的,然后做一个数学函数?
- azure - 如何检查 Azure 广告中的用户是否禁用了密码过期