2

假设我的网页test.html正在向同一域的网页发送表单数据callback.html,我如何验证表单数据是否test.html不是由其他人发送的?将其test.html视为callback.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 回答