如何在S3上终止生成的下载链接

时间:2019-06-02 08:28:05

标签: amazon-web-services amazon-s3 minio

我知道我们可以为有特定时间到期的对象生成下载密钥。但是我该如何手动使已经生成的密钥无效?

想象一下,我收到一个成功下载文件的客户端的确认,因此我想使生成的密钥无效。

1 个答案:

答案 0 :(得分:1)

您似乎指的是预签名URL ,该URL授予了对Amazon S3中私有对象的时间限制访问。

预先签名的URL使用来自确实的访问密钥的凭据,该凭据具有访问对象的权限。然后,URL用密钥的哈希版本签名以验证请求。这实际上是在说:“我批准这个请求直到这个时间戳。”

没有办法使预先签名的URL无效。。但是,由于批准与身份相关联,因此您可以使该身份的访问对象权限无效,这将使预先身份验证的URL无效。签名的URL。这实际上是在说:“授权您的请求真是太好了,但是您不再有权自己访问它,因此也不能授权任何人!”

示例:

  • IAM用户User-A有权访问私有对象
  • User-A为对象生成一个预先签名的URL
  • 预签名URL有效
  • User-A撤消了权限,因此他们不再具有访问对象的权限
  • 预签名URL不再有效

这对于您的“仅下载一次”用例不一定奏效。为此,您确实需要通过应用程序发送请求和下载,而不是依靠Amazon S3来实施“仅一次”规则。