如何仅在通过我的域访问资源时授予访问权限?
How can I grant access only if resource is accessed through my domain?
我有一堆视频,都上传到Wistia。在 Wistia 上,我已经为我的域设置了访问权限,因此它们只会在从我的域中获取视频时播放。
如果有人使用查看源代码并复制视频 URL 并将其粘贴到单独的浏览器中 window,他们会收到“访问被拒绝”消息。
我正在考虑将我的视频移动到 Google 云存储。所以,我的问题是:
- Google云是否提供类似的域限制功能?
- 我该如何设置?现在,我创建了一个临时存储桶并上传了一个视频并授予它 public 访问权限。然后我复制了MP4文件的public link并添加到我的网站,它显然可以播放,但是任何付费会员都可以使用查看源,复制MP4 link并上传到其他流媒体服务供大家观看。
编辑
有没有办法以编程方式执行此操作 - 就像我的网站在 PHP - 所以类似的东西 - 将存储桶保持为受限访问,然后通过 PHP - 传递一些密钥并检索视频文件.不确定这样的事情是否可能。
谢谢
我不相信 Google Cloud Storage 中有与您在 Wistia 中使用的访问控制机制相同的访问控制机制。
在 GCS 中有多种方法可以限制对象访问(参见 https://cloud.google.com/storage/docs/access-control),但其中 none 是基于请求的来源。唯一可以解决您的问题的方法是使用 Signed URLs。基本上,用户会访问您的站点,但您的应用程序不会向他们提供他们将要使用的对象的 "real" URL,而是检索一个特殊的 URL,即时间-有限的。可以设置有效期。
但是如果您担心的是有人复制您的视频,他们可能仍然可以看到 URL 某个地方并立即从那里复制数据,所以我认为这不是真的解决你的问题。
抱歉,我不能提供更多帮助。
我有一堆视频,都上传到Wistia。在 Wistia 上,我已经为我的域设置了访问权限,因此它们只会在从我的域中获取视频时播放。
如果有人使用查看源代码并复制视频 URL 并将其粘贴到单独的浏览器中 window,他们会收到“访问被拒绝”消息。
我正在考虑将我的视频移动到 Google 云存储。所以,我的问题是:
- Google云是否提供类似的域限制功能?
- 我该如何设置?现在,我创建了一个临时存储桶并上传了一个视频并授予它 public 访问权限。然后我复制了MP4文件的public link并添加到我的网站,它显然可以播放,但是任何付费会员都可以使用查看源,复制MP4 link并上传到其他流媒体服务供大家观看。
编辑 有没有办法以编程方式执行此操作 - 就像我的网站在 PHP - 所以类似的东西 - 将存储桶保持为受限访问,然后通过 PHP - 传递一些密钥并检索视频文件.不确定这样的事情是否可能。
谢谢
我不相信 Google Cloud Storage 中有与您在 Wistia 中使用的访问控制机制相同的访问控制机制。
在 GCS 中有多种方法可以限制对象访问(参见 https://cloud.google.com/storage/docs/access-control),但其中 none 是基于请求的来源。唯一可以解决您的问题的方法是使用 Signed URLs。基本上,用户会访问您的站点,但您的应用程序不会向他们提供他们将要使用的对象的 "real" URL,而是检索一个特殊的 URL,即时间-有限的。可以设置有效期。
但是如果您担心的是有人复制您的视频,他们可能仍然可以看到 URL 某个地方并立即从那里复制数据,所以我认为这不是真的解决你的问题。
抱歉,我不能提供更多帮助。