为什么授权服务器通过用户代理(浏览器(将授权代码作为重定向发送,而不是直接发送到客户端回调URI
在最安全的流中,由于存在大量潜在的攻击向量,访问令牌不会通过用户代理浏览器重定向发送到客户端后端。这在CCD_ 2的CCD_。因此,通过浏览器的重定向使短暂的身份验证代码变得有益。
但是,让我们假设授权服务器通过一些以前指定的URI建立了一个到客户端的直接通信通道。服务器是否可以不立即发送访问令牌,从而简化流程?
浏览器导航到客户端应用程序,重定向到授权服务器,授权服务器进行用户身份验证并发布代码。如果授权服务器将通过反向通道调用客户端应用程序(直接从服务器到服务器的调用(,以将代码传递给客户端应用程序,则完成后仍需要将浏览器重定向回客户端应用程序。
浏览器将如何将自己与发布的代码关联起来?客户端应用程序如何知道传入的HTTP请求属于已发布的代码?
使用客户端生成的状态参数比授权服务器生成的代码风险更大(第二个代码的生存时间要小得多(。
此外,并非所有授权服务器都能够发出出站请求。