Node.js RESTAPI安全性:使用ID更新数据库

Node.js RESTAPI安全性:使用ID更新数据库,node.js,rest,api,security,Node.js,Rest,Api,Security,我用NodeJS构建了一个简单的REST完整API 说到HTML代码,我有: <form method="post" action="/registry/api"> <input name="id" type="text" value="6" readonly> <input name="name" type="text" value="TEST name"> <input name="description" type="text"

我用NodeJS构建了一个简单的REST完整API

说到HTML代码,我有:

<form method="post" action="/registry/api">

   <input name="id" type="text" value="6" readonly>
   <input name="name" type="text" value="TEST name">
   <input name="description" type="text" value="TEST desc">
   <input name="approved" type="checkbox" checked>

   <input type="submit" value="Update">

</form>

但如果我进入控制台,删除“readonly”并将此id从“6”更改为“7”,则我的API确实会收到坏id并更新数据库中的坏行


我该如何解决这个问题呢?

您的API应该实现某种身份验证和授权层。一种方法是将令牌与请求一起传递(例如在
授权
标题中),这样您就可以在后端知道请求此操作的用户是谁。然后,您可以简单地检查给定的用户是否被允许执行这样的操作(使用给定的
id

您可以看看这篇博客文章,它使用JWT(JSON web令牌)描述了这种模式: