如何防止用户修改REST请求?

这个问题可能听起来微不足道,但即使阅读了大量的教程,我仍然不知道如何实现REST安全。

我有一个网页和即将准备好的移动应用程序。 他们两个都将使用REST API(用node.js编写),问题是 – 我怎样才能防止用户执行这些请求? 在浏览器中查看networkingstream量,以及向服务器发出的所有GET / POST请求都非常容易。 复制这样的请求,修改其参数和/或有效载荷并将其发送到服务器似乎也很容易。

我如何确保这是我的网页或提出请求的应用程序,而不是其他人?

西西弗斯是绝对正确的:你的重点应该是保护通道(TLS,SSH等)和authentication(如OAuth2)。

您应该完全熟悉开放式Web应用程序安全项目(OWASP) 。 特别是,从以下开始:

  • OWASP十大备忘录

  • OWASP REST安全备忘单

这里有一个很棒的“动手”教程,可以让你对所有你需要担心的不同部分有一个很好的概述:

  • 使用JSON Web令牌validationNode.js API

一旦阅读了本教程并扫描了OWASP备忘单,您将更好地了解需要担心的事情,可以使用哪些选项/技术来减轻这些风险,以及哪些方法可能最有效为您的特定情况。

祝你好运!

通常,现在的安全性使用了传输层安全性和OAuth2的组合。 OAuth2提供身份validation和授权,确保对资源的适当访问,TLS既通过networking保护数据,又防止您担心的重播攻击。 Restful API也不是特定的,你也可以在非Rest的上下文中find它们。