我在django网络应用上使用python social auth实现oauth。
我已经搜索了很多示例和实现,发现他们每个人都在服务器端做oauth。 (甚至在official document中使用的例子)
因此,例如,当客户端尝试从其谷歌驱动器中获取数据时,由于授权令牌存储在服务器端,因此内容将下载到服务器,然后转发到客户端。
以上示例的图表如下:
Client Server Google
1. oauth
--(provide id/pw)-->
--(request oauth)-->
<--(send auth token)-
<--(grant access)--
2. file download
--(select file)-->
-(auth token+request file)-->
<--(file content)--
<--(forward file)--
但对我来说,授权过程在客户端完成感觉更合适。
首先,通过让客户端直接从谷歌下载,可以减少大量的服务器&lt; - &gt;谷歌流量。其次,服务器不存储身份验证令牌,因此客户端的安全性更高。
所以这是我的问题:
这是一个被广泛接受的oauth流吗?如果是,那是什么原因?
是否有使用django和google驱动器的好的oauth模板?
谢谢!