クライアント側からapiサーバーにaxios通信でpostリクエストを送る際に,認証したユーザーからのリクエストかどうか判別するためにヘッダーに暗号化された認証トークンをつけて判別しています。
しかし、post内容がブラウザのdev toolから見えてしまうため、curlなどの"ブラウザ外からrequestを送れるもの"でheaderにdev toolでみた認証トークンを張り付けてブラウザから送ったように偽装できてしまいます。(認証トークンの有効期限は発行から1時間あります。)
認証トークンのおかげでどのユーザーが送ったかは判別できますが、そのユーザーが本当にブラウザから送ったかどうかはどうやって判別すればよいでしょうか?何か良い方法はありませんでしょうか。
ユーザーエージェントも偽装できてしまうので判別材料にできません...
POSTのbody部分を暗号化して送ることも考えましたが、結局その暗号化したデータをコピぺしてブラウザ外から送られてしまえばブラウザの手順を踏まずに不正に何度も同じリクエストを送れてしまいます。
ブラウザ外からかどうかの判別を可能にする方法はなにかないでしょうか。
どなたか通信に詳しい方、ご教授お願い致します。
回答2件
あなたの回答
tips
プレビュー