javascript - 具有到期时间的 Google Cloud Storage ACL

标签 javascript node.js google-cloud-platform google-cloud-storage

我正在使用 Google Cloud Storage 构建一个应用程序,用户可以在其中与其他用户共享他们选择的一段时间内的文件。之后,查看该文件的权限将被撤销。

一种方法是生成 signed urls并分享这些。 但是,我想使用 ACL相反,因为我认为它使用起来更干净。当用户共享文件时,我可以简单地将新用户添加到具有到期时间的 ACL 中。 所以基本上,下面的代码带有某种时间属性,可以在比方说 t 秒后自动从 acl 中删除 user1。

storage
  .bucket(bucketName)
  .file(filename)
  .acl.readers.addUser(user1)
  .then(() => {
    console.log(`Added user ${user1} as an owner on file ${filename}.`);
  })
  .catch(err => {
    console.error('ERROR:', err);
  });

这可能吗?

最佳答案

通过内置功能是不可能的。您将不得不使用一些第三方调度服务,创建一个 cron 作业来经常检查过期的 ACL,或者创建一个微服务来监控您的 ACL 过期表并在过期时自动删除。

关于javascript - 具有到期时间的 Google Cloud Storage ACL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49474517/

相关文章:

javascript - Javascript:检索对象属性名称

javascript - bootstrap-date_picker 结合响应式 html5 type date for iphone View

javascript - Meteor导入目录中的所有文件

google-cloud-platform - `gcloud images create <image> --source-uri=<source>` 在 Cloud SDK 265.0.0 中给出错误

google-cloud-platform - 如何使用 gcloud compute scp?

google-cloud-platform - bigstore 几乎呈线性增长 Google Cloud

javascript - ng-repeat 带有基于 $scope 列表的过滤器

javascript - 控件不存在。为什么?

node.js - 如何将 'process.on' 更改为基于 RxJS 风格的事件?

javascript - 绑定(bind)构造函数