【发布时间】:2014-06-03 21:10:22
【问题描述】:
我想配置一个 Firebase 数据库,使其只接受来自我的 iOS 应用的连接。
我在配置规则以管理来自经过身份验证的用户的访问等方面没有问题...,但我想知道什么是防止来自我以外的其他应用程序连接的最佳方法。
我该怎么做?
更具体的用户案例。我的应用程序是一项服务,用户可以注册以使用它通过 twitter 和 Facebook 进行身份验证。用户为服务付费,应用程序将使用 Firebase 作为后端,这意味着我将为 Firebase 服务付费。用户付钱给我,我付给 Firebase。所以这就是我只希望我的应用程序是唯一一个连接和使用 Firebase 数据库的原因。我认为这是常见的情况。 Parse 等其他后端服务允许您在应用连接时使用密钥来执行此操作。
【问题讨论】:
-
你能解释一下这个用例吗?具体来说,如果用户拥有有效的身份验证凭据,那么他们从哪里连接又有什么关系呢?这听起来很可疑,就像“我如何防止云中的东西在云中”。理解这一点应该有助于缩小回答的范围。
-
存储在 Firebase 中的数据已经过整理,旨在供 iOS 应用使用。这些数据是 iOS 应用程序为其用户提供的价值的一部分,因此无法从其他任何地方访问。
-
除了浏览器签名(当然可以伪造)之外,云中的服务器是否可以使用某种方法来确保从应用程序而不是浏览器接收请求?我可以提供 Firebase 部分来保护数据,但不能告诉您任何网络服务如何确保连接的设备是一种或另一种类型。
-
嗨加藤。我对知道设备的类型或者它是网络还是移动设备不感兴趣。我想要的是该应用程序可以像用户一样对自己进行身份验证。把它想象成一个社交应用程序。一方面,我想让用户使用 twitter 和 Facebook 等进行身份验证……另一方面,我只希望通过我的服务(我的应用程序)使用数据。双方都使业务成为可能。
-
让应用程序以某种方式向服务注册是否合理,以便应用程序的每个实例接收一个唯一标识符?如果是这样,我可以解释如何使用它。
标签: ios authentication firebase firebase-security