PUT DELETE のセキュリティ面での懸念について

テーマ、知りたいこと

下記経緯にも記述しましたが,PUT や DELETE メソッドを使わない API を設計する理由として,
form タグの method 属性が対応していないこと以外に理由はあるのでしょうか.

真偽はともかく,軽く調べたところだと「Web ブラウザが対応していない」や「セキュリティの問題がある」などの意見が散見されました.
前者については,少なくとも現在有力なブラウザは対応していると思うので,古いないしは限定的な理由なのかなと思います.
後者については PUT および DELETE に認証がないなどという記述が見られました.
(検索の仕方に問題があるのかもしれませんが) そのあたりについて具体的に述べている資料を見つけるに至りませんでした.
また WAF や Proxy で弾かれてしまうからと仰っている人もいましたが,それは結局のところ設定の問題だと思うので知りたい結論ではありませんでした.

改めて知りたいことを整理すると,
PUT および DELETE メソッドにあって,POST メソッドにはない(主にセキュリティの観点での)問題点とは具体的に何なのか
です.

経緯

API 設計において,PUT や DELETE を用いず GET および POST のみで設計する人が少なからずいます.
HTML form タグの method 属性が get および post しか対応していないことが由来なのだろうとは思っていましたが,それ以上の理由が存在するのか調べたのがきっかけです.

コメントを投稿

0 コメント