【问题标题】:Securing RESTful API with Firebase OAuth?使用 Firebase OAuth 保护 RESTful API?
【发布时间】:2016-08-10 19:02:17
【问题描述】:

我在我的 iOS 和网络应用中使用 Firebase 来处理用户身份验证。我需要确保用户登录后才能向我的 API 发出任何请求。我将如何使用 Firebase 完成这样的事情?

我正在考虑使用 Kong - https://getkong.org - 作为我的 API 的中间人。 Kong 有一些与验证传入请求有关的选项 - https://getkong.org/plugins。 Firebase 有什么用?智威汤逊认证? OAuth 身份验证?密钥认证?

您能指出一个基本示例的方向吗?或者给我一个关于我应该寻找什么的基本概述?

【问题讨论】:

    标签: api rest firebase kong


    【解决方案1】:

    我最终在服务器端验证了用户令牌,如下所示:

    https://gist.github.com/holgersindbaek/2cc55efd89517e21fbb52b4e95125003

    【讨论】:

    • 您能否更详细地说明您是如何完成这项工作的?谢谢!
    【解决方案2】:

    Firebase 可以让您要求用户在执行某些数据操作之前使用第三方服务(例如 Google 或 Facebook)登录。 Firebase 本身提供了相当全面的文档:https://firebase.google.com/docs/auth/

    【讨论】:

    • 我明白这一点。我有一个 RESTful API,我需要确保所有传入的请求都来自已经通过 Firebase 登录的用户。而且我不确定如何做到这一点。有意义吗?
    • 啊。是的。在这里有一个很好的建议:stackoverflow.com/questions/23060686/… 本质上,不是让用户直接与您的 API 通信,而是让用户在 Firebase 中插入一些东西来触发您服务器上的操作。
    • 这行不通。当用户向 API 发出请求时,他需要返回成功或失败响应,就像您向 API 发出请求时通常会得到的一样。
    • 这可能有点 hacky,但您可以让客户端生成一个 nonce,将其插入 Firebase,然后连同他们的 API 请求一起提交。您验证 Firebase 中是否存在 nonce,然后做出适当的响应。
    • 这是一种有趣的方式。不过,这似乎不是“正确”的方式。无法使用我在 Firebase 中已有的 OAuth 身份验证以某种方式通过 API 进行身份验证?
    猜你喜欢
    • 1970-01-01
    • 2020-07-22
    • 1970-01-01
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    相关资源
    最近更新 更多