【问题标题】:Multiple iOS apps using same Dropbox API key ever in production?多个 iOS 应用程序曾经在生产中使用相同的 Dropbox API 密钥?
【发布时间】:2014-03-06 07:50:02
【问题描述】:

来自 Dropbox API 文档:

为每个不同的应用使用一个应用密钥

如果您构建多个应用程序,请为每个应用程序使用一个且恰好一个键 你做。这使我们在遇到问题时更容易调试问题 出现。也就是说,如果您只是为不同的应用程序构建相同的应用程序 平台(例如,iOS 和 Android),您可以使用相同的密钥。

听起来多应用单键只会让调试变得更难。有人用一个应用密钥成功部署多个 iOS 应用吗?

【问题讨论】:

  • 另一个缺点是,如果两个应用程序使用 Sync API 在应用程序文件夹中创建文件——它们可能会踩到对方的文件。话又说回来,这可能是在两个应用程序之间共享文件的一种方式——但是,它们真的是不同的应用程序吗?
  • 我正在研究 Greg 回答中的 Lite/Pro 场景。

标签: ios dropbox-api


【解决方案1】:

在您引用的Dropbox Platform developer guide 中提到了几种不同的情况,并且不清楚哪种情况真正适用于您的问题。枚举所有内容:

  1. “多个不同的应用程序(在同一平台上)”例如:

    • 适用于 iOS 的 MyCoolTask​​App
    • iOS 版 MyCoolTimerApp

      在这种情况下,您需要使用 Dropbox API 注册不同的应用程序,这意味着在每个应用程序中使用不同的密钥(因为它们是不同的逻辑应用程序)。此外,这样,用户在查看their account 中的链接应用列表时会看到不同的应用名称。

  2. “不同平台的相同应用”例如:

    • 适用于 iOS 的 MyCoolTask​​App
    • 适用于 Android 的 MyCoolTask​​App

      在这种情况下,您不应该使用 Dropbox API 注册多个应用,并且应该在每个应用中使用相同的密钥(因为它是同一个逻辑应用。)

  3. “同一应用的多个版本(在同一平台上)”例如:

不过,为了总体回答您的问题,上述每个场景都已由不同的开发人员成功部署,但您不应该使用相同的密钥部署多个不同的应用。

【讨论】:

  • 在第二种情况下,从 Dropbox App Console 申请生产时,我们需要选择平台,它一次只能选择一个平台。我们如何为同一个应用选择 iOS 和 Android 平台?
  • 场景 3 是一种非常常见的场景,并且必须创建票证才能为同一应用程序的变体获取公共密钥是很麻烦的。这也不是确保未经授权的应用程序不使用 api 密钥的非常安全的方法。几乎所有其他云 API 提供商都使用 Android 上的签名密钥来确保它是正确的应用程序(通常是 SHA-1),这是有原因的。 DropBox,请在您的 API 的下一个版本中考虑这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-08
  • 1970-01-01
相关资源
最近更新 更多