1
我有一个REST API列出了桶中的所有文件。我在iOS设备上的webview中显示此列表。访问谷歌云存储桶中的私人文件
这是不可能公开这个文件。
所以对我的问题,我如何访问我的iOS应用程序中的文件?
我的想法是,我在我的api中创建了一个读取流,它向gcloud存储桶中的文件打开读取流。
有没有更好的方法来做到这一点?
我有一个REST API列出了桶中的所有文件。我在iOS设备上的webview中显示此列表。访问谷歌云存储桶中的私人文件
这是不可能公开这个文件。
所以对我的问题,我如何访问我的iOS应用程序中的文件?
我的想法是,我在我的api中创建了一个读取流,它向gcloud存储桶中的文件打开读取流。
有没有更好的方法来做到这一点?
暴露私人文件的规范方法是使用签名的URL。基本上,你的iOS应用程序会请求访问你的应用程序中的文件。如果您的应用决定授予此访问权限,那么它会生成一个URL,使用私钥对其进行签名,然后将该签名的URL提供给iOS应用。然后,该应用获取与其他任何网址一样的网址,其中的主体将成为对象的内容。
签名的URL有一些很好的安全优势。它们只能用于一件事,而且它们只能在几分钟内有效(您可以配置它们的有效时间)。
签名逻辑有点棘手,但gcloud库有功能为您签名的URL。
文档在这里:https://cloud.google.com/storage/docs/access-control/signed-urls