最近我参加了mvc的培训。培训师说 - 根据安全考虑,我们必须使用HttpPost而不是HttpGet。始终使用HttpPost。
任何人都可以解释一下 - 当我们使用HttpGet时会出现什么安全问题?
答案 0 :(得分:3)
通过安全连接(https)传输数据时,邮件请求的主体已加密且实际上不可读,您只能看到数据传输的地址而不是数据本身。另一方面,没有正文和数据必须在查询字符串中传输或作为路径参数传输。虽然查询字符串确实也加密了,但由于服务器和浏览器上的请求记录,可以获取该数据。
答案 1 :(得分:3)
任何人都可以在公共论坛或stackoverflow上插入图片,并链接到您的网站。然后接下来发生:
但是,如果您仅将操作标记为Http Post,则此方案不适用于90%的网站。但是你也应该考虑,如果黑客可以在其他网站上创建一个表单,那么他仍然可以让浏览器执行请求。所以你需要CSRF。好吧,浏览器为防止跨站点请求做了很多工作,但在某些情况下它仍然可行。