2017-04-17 10 views
0

NodeJSで簡単なREST FULL APIを構築しました。REST APIセキュリティ:IDを使用してデータベースを更新する

<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> 

をしかし、私はコンソールに行けば、「読み取り専用」の消去と「7」に「6」からこのIDを変更、

それはHTMLコードに来るとき、私は持っています私のAPIは実際に悪いIDを受け取り、データベースの不良行を更新します。

どうやってこれを戦うことができますか?

答えて

0

APIは、ある種の認証および承認レイヤーを実装する必要があります。これを行うための1つの方法は、要求と共にトークン(例えば、Authorizationヘッダー)を渡すことです。バックエンド側で、この操作を要求しているユーザーは誰であるかが分かります。そして、与えられたユーザがそのようなアクションを実行することが許可されているかどうかを簡単にチェックすることができます(与えられたid)。

あなたはJWT(JSONウェブトークン)を使用してこのパターンを説明している、このブログ投稿を見てみることができます:

https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens

関連する問題