我可以在Javascript应用程序中使用OAuth进行身份验证,而无需在客户端使用rauth保存令牌吗?

时间:2013-12-04 02:10:05

标签: django angularjs authentication oauth rauth

我希望能够使用oauth验证angular.js应用程序的用户,但我不想在前端存储任何令牌,因为我已经看到安全地执行此操作可能相当复杂。有没有办法将用户的某种凭证传递给我的django Web应用程序,在哪里可以使用某些oauth提供程序对用户进行身份验证并将该信息保存在会话中?为简单起见,这是我想要的过程

  1. 用户登录了某个oauth提供程序,即stackexchange
  2. 他们点击前端角应用
  3. 上的“使用stackexchange登录”按钮
  4. 他们的登录凭据通过restful api
  5. 发送到django应用程序
  6. 接收这些凭据的django应用程序尝试使用rauth获取令牌
  7. 如果服务器收到令牌,则用户登录并将其信息保存在会话中,否则会出现错误
  8. OAuth2提供商是否支持此类流程?

1 个答案:

答案 0 :(得分:2)

步骤3不正确:在OAuth提供商的基础架构上完全在场外处理身份验证过程,例如StackExchange。

这种流程当然是可能的。我会查看使用Flask的Facebook example,但提供了一个类似的框架,说明如何在Django中进行此操作。