是否可以从 GCS wget / curl 保护文件?

Is it possible to wget / curl protected files from GCS?

是否可以从 Google 云存储中 wget / curl 受保护的文件而不使它们 public?我不介意固定的预定义令牌。我只是想避免我的 public 文件被盗用,让我损失惨重。

您可以使用 Signed URLs。这允许您创建一个签名的 URL,无需额外身份验证即可用于下载对象。

另一种方法,如果你说你不介意从外部获取令牌,那就是使用 curl 在你对 GCS 的调用中设置 'Authorization' header,如下所示:

curl -H "Authorization: Bearer 1/fFBGRNJru1FQd44AzqT3Zg" https://www.googleapis.com/storage/v1/b/bucket/o/object?alt=media

'alt=media' 查询字符串参数是直接下载 object 数据而不是接收 JSON 响应所必需的。

您可以将云存储JSONAPI授权获得的token复制粘贴到OAuth 2.0 Playground.

另请参阅:
https://cloud.google.com/storage/docs/access-control https://cloud.google.com/storage/docs/json_api/v1/objects/get

你也可以使用 curlwget chrome extension 所以每当你在 Chrome 上下载东西时它会创建 url 和 headers 等让你 wget 你的文件。