我知道Codeigniter有一个非常有用的安全类,如果你使用表单助手,它可以阻止CSRF / XSRF,但由于CI url结构几乎直接调用很多函数,我怎么能防止像{{{{{{ {1}}没有像SE那样的额外确认表格?
我的想法:
/action/logout
)我不会费心去保护像<img src="http://example.com/action/logout" />
这样的东西,因为它不会执行任何操作,最多会浪费带宽。
当然,我知道有些人喜欢编写代码来自动化他们的网站使用情况,我尊重这一点,这就是为什么我要创建一个API来通过代码或自动执行操作。
答案 0 :(得分:1)
作为一般规则,执行操作的任何表单请求都应使用POST
。对于所有其他GET
是允许的。使用POST肯定会有所帮助。我相信你也可以将令牌作为隐藏字段包含在表单中,而不是URL中的丑陋字符串。至于检查请求的MIME类型,这是不可能的。做一个print_r($ _ SERVER),基本上你从用户那里得到的东西以及服务器端的东西。