在OAuth 2.0 page的页面中说如下:state(推荐)应用程序使用state参数来存储特定于请求的数据和/或防止CSRF攻击。授权服务器必须将未修改的状态值返回给应用程序。
但我不清楚国家如何防止CSRF攻击。对于我的想法,如果有人抓住了pakage,那肯定是请求查询参数也已知,所以他可以再次发回它以淡化这个响应。
常见的方法是将state
存储在用户的会话中(如果存在)或将其设置在安全的httponly cookie中(如果应用程序是无状态的)。然后在你的回调函数中你比较那些(来自查询的state
和来自session / cookie的qazxswpoi)。
如果说“package”你只是指HTTP流量(中间人攻击),那么如果你使用HTTPS协议 - 什么都不能被劫持。这就是强烈建议仅通过HTTPS使用OAuth的原因。