是时候和OAuth2的隐式流程说再见了 隐式流程是OAuth2中比较神奇的存在,因为隐式流程是唯一一个通过GET方法来获得令牌的,并且直接将令牌暴露在了客户端(比如浏览器)。其实出现这样的现象,还是跟当时的技术环境有关。在OAuth2刚刚问世的时候,也就是2012年左右,跨域的GET访问数据还是比较不方便的,需要通过各种奇淫技巧来实现,比如通过iframe之类的。而跨域的POST请求则更加复杂,因此这导致了为了能够满足SPA(单页应用)应用使用OAuth,就需要放弃POST请求,因而有了这么一种隐式流程。 随着技术的发展,CORS已经比较普及,现在跨域访问已经不是太大的问题,这为SPA使用授权码流程提供了可能性。同时,伴随着浏览器技术的发展,越来越多的浏览器提供插件的开发支持。而浏览器的历史记录就是插件可以访问的信息。隐式流程由于使用的是GET回调,这个GET回调就会作为浏览器记录的一部分而保存下来,这也就意味着浏览器插件们有机会通过访问历史记录来获取令牌。基于这个原因,从安全角度来说,隐式流程的继续使用也已经不再适合。
#科技新星创造营# 是时候和OAuth2的隐式流程说再见了 隐式流程是OAut
老白理科男
2024-08-02 22:41:23
0
阅读:0