2

私の Web ページが同じドメインのtest.htmlWeb ページにフォーム データを送信しているとします。フォーム データが他の誰からも送信されていないことを確認するにはどうすればよいですか? の信頼できる情報源と考えてください。 callback.htmltest.htmltest.htmlcallback.html

<form action="callback.html" methos="post">
<input type="hidden" id="abc" value="User is not authenticated"/>
</form>
4

1 に答える 1

7

POST が信頼できるソースからのものであることを確認する唯一の安全な方法は、サイトだけが知っている情報がトランザクションに含まれていることを確認することです。これにはさまざまな方法がありますが、簡単な方法は、セッション Cookie の値をフォーム フィールドの値として使用することです。サーバーは、そのパラメーターが不足している POST トランザクションを拒否します。

トランザクションが安全でない (https) 場合は、とにかくあまり意味がありません。

編集— 別の方法として、POST トランザクションが XHR で開始されている場合は、特別な「X-Something」ヘッダーをリクエストに追加することをお伝えします。

于 2013-02-13T15:54:32.023 に答える