我正在评估在我的新项目中使用GCP,然而,我仍然试图弄清楚如何实现以下特性以及它将有什么样的成本。
什么是最好的策略来服务用户从GCP上传的媒体,同时让用户完全控制谁将能够访问它们?
作为一个用户,我想上传某种媒体(如:图像,视频等)以私人和安全的方式。
媒体必须由我和我授权访问的特定用户子组可见。
任何人都不能访问媒体,即使他获得了URL。
据我所知,与“访问控制”相关的特性大多是在项目和组织级别定制的。
到目前为止,最接近的功能是签名URL,但这不能满足即使您有URL也不能访问它的要求,即使它很快就到期了,也许这可能是一个很好的妥协。
这种方法的另一个问题是媒体不能在浏览器级别缓存,从长远来看,这可以节省相当多的带宽...
我想到的一个解决方案是,我可以通过GCE实例提供它,方法是在那里放置一个验证用户的应用程序,可能是通过JWT,然后在使用适当的缓存头的同时将其流回。
感谢任何愿意帮忙的人!
签名URL是您想要的解决方案。
创建一个表示应用程序的服务帐户。当应用程序的用户想要上传一个对象时,向他们提供一个签名的URL以执行上传。新对象只能由您的服务帐户(和项目的其他成员)读取。
当用户想要查看一个对象时,执行您喜欢的任何检查,然后向他们提供一个签名的URL以读取该对象。如果担心URL被共享,请设置较短的过期时间。
我应该做什么才能成功上传图片?任何帮助都将不胜感激。 非常感谢。
我们一直在使用服务,在(AWS)中,我们意外删除了一个目录,因此我们认为它应该在中,但是经过查看,尽管处于打开状态,但它并不存在。
我想为app Engine中的应用程序提供存储在谷歌云存储中的静态文件。在HTML文件中,我使用了 如果登录用户的谷歌帐户有访问bucket的权限,它可以正常工作。由于应用程序可以被任何人访问谁将没有访问我的桶,在这种情况下,静态文件将不会被服务。 是否有可能使bucket中的静态文件公开可用?我将静态文件(custom.css)设置为“共享公共”(ACL设置为“public-read”),但其他
我只是上传文件到谷歌云存储使用签名网址与Ajax上传。 已经完全上传了。但尝试从Bucket下载文件时,文件会像媒体文件一样损坏,否则pdf、txt文件工作正常。有什么建议请建议我谢谢。
我试图从GCS读取文件。以下是我创建的方法。我在一些服务层中使用这个方法。因为这个方法中的一些调用是静态的和最终的,因为我的单元测试失败了。 以下是地面军事系统存储的代码: 我正试图为同样的问题编写Junit测试。但是文件。类是最终类,用于我收到空指针异常。 期待尽快收到你们的来信。