【问题标题】:Social authentication - better to do on FE or BE side?社会认证——在 FE 或 BE 方面做得更好?
【发布时间】:2017-08-06 01:37:44
【问题描述】:

如果我们想做社交认证(例如 FacebookGoogle),那么哪一方最好集成它。后端还是前端?对于后端我们有 NodeJS,我们可以在其中使用 PassportJS 来完成它,对于前端我们有 Angular2.0也有插件可以做到这一点。我有点困惑这段代码应该放在哪一边。如果有人对此有任何看法,请告诉我。

【问题讨论】:

  • 双方 =) 你存储的 authToken 应该放在你的后端,而会话交互可以通过 FE 完成。
  • 检查萨利赫的答案,他是对的。

标签: angularjs node.js facebook-graph-api oauth-2.0 google-authentication


【解决方案1】:

我猜您正在尝试实现 Oauth2,实际上这取决于您的应用程序要求。

例如,如果您将使用Authorization Code Flow 遵循 Oauth2 授权,您需要在客户端和服务器端都实施授权。

但是,如果您将使用 Implicit Flow 遵循 Oauth2 授权,则您需要仅在客户端实现授权。

我的建议是阅读本文以了解有关 Oauth2 流的详细信息 Oauth2 Flows Explained

隐式授权(第 4.2 节)

隐式授权类似于 授权代码授予有两个明显的区别。

它旨在用于基于用户代理的客户端(例如单个 页面 Web 应用程序)无法为客户保密,因为所有 应用程序代码和存储很容易访问。

其次,而不是授权服务器返回一个 用于交换访问令牌的授权码, 授权服务器返回一个访问令牌。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 2017-02-27
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    相关资源
    最近更新 更多