2

我似乎无法找到任何有关如何使用iOS服务帐户访问Google Cloud Storage的文档。 iOS应用程序将图像写入Rails,并且我已经使用一个服务帐户与ruby apis将图像保存到Google Storage。我试图从iOS读取这些图像,但它似乎不存在,我不知道为什么。我可以使其工作的唯一方法是使用API​​密钥并将predefinedAcl设置为'publicRead'。这意味着我的应用程序的图像向互联网开放。iOS Google云端存储API服务帐户访问

我错过了什么?这个功能在iOS库中不存在吗?任何未来的计划?

感谢

+3

如果您使用服务帐户运送您的应用程序,则安全性会受到影响。任何下载应用程序的用户都可以提取密钥。 – jterrace 2015-04-06 16:00:23

+0

@jterrace但是然后..我们应该如何使用iOS应用程序的服务帐户?托马斯,你有没有想过? – Sti 2015-05-25 15:21:39

+0

不,我把它作为publicRead现在,而不是强迫他们通过我的应用程序服务器,我可以使用服务帐户...我只是不想支付通过那里的流量。 :( – Thomas 2015-05-29 22:11:06

回答

1

我认为你是严重影响您的安全,同时遵循一个非常糟糕的做法。下面的是关于如何解决它两种策略:

  • 当您将图像保存到谷歌的存储,你应该创建一个相同的signed URL并用其作为终点为客户/应用程序。或
  • 将原始Google存储URL保存到用户的帐户,通过用户api无法访问,并且在运行时收到图像请求时生成基于短期签名的URL。

基于服务密钥的方法实际上是错误的,因为首先你放弃了你的项目证书,而且你甚至永远不能过期这些密钥,因为它们可能被用在许多终端设备之一中。

相关问题