使用Google Cloud Platform Storage存储用户图像

时间:2018-03-23 00:56:58

标签: google-cloud-platform google-cloud-storage

我试图了解Google Cloud Platform存储,但无法理解文档中使用的语言。我想询问您是否可以使用存储和API来存储用户在您的应用程序中拍摄的照片,如果提供了URL,还可以恢复图像?即使你可以,这样做是否安全合理?

1 个答案:

答案 0 :(得分:0)

是的,您几乎可以使用存储桶来存储任何类型的数据。

在将图像从应用程序传输到存储桶方面,必须授权应用程序写入存储桶。

一种选择是在应用程序中使用服务帐户密钥。服务帐户是一个特殊帐户,应用程序可以使用该帐户授权各种Google API,包括存储API。

有关使用服务帐户密钥的服务帐户here和信息here的更多信息。这些密钥可以在您的应用程序中使用,并允许应用程序继承分配给该服务帐户的权限/范围。

在使用URL检索图像方面,一种可能的选择是使用signed URLs,这将允许您为给定的用户提供对象的读取或写入访问权限(在您的案例中为图像)多少时间。

也可以使用ACL(访问控制列表)控制对存储桶对象的访问。如果您对公开提供的图像感到满意(即每个人都可以访问),则可以为AllUsers设置具有“读者”访问权限的ACL。 有关此问题的更多信息可以是found here

如果您决定公开提供图像,则从存储桶中检索对象/图像的URL格式为:

https://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]

编辑:

关于在文件落入存储桶之前使用接口上传文件,一种选择是使用具有外部IP地址(或负载均衡器后面的多个实例)的实例,其中最初上载图像。您可以使用FUSE将云存储装载到此实例,以便将上载的文件轻松传输到存储桶。就数据库而言,您可以选择在Compute Engine实例上手动安装数据库,或使用完全托管的数据库服务(如Cloud SQL)。

相关问题