【问题标题】:How to configure AWS4 S3 Authorization in Django?如何在 Django 中配置 AWS4 S3 授权?
【发布时间】:2020-04-19 23:25:01
【问题描述】:

我为Frankfurt 区域配置了S3 存储桶。虽然我的基于Django 的服务能够将文件写入存储桶,但每当它尝试读取它们时,就会出现InvalidRequest 错误提示升级授权机制:

<Error>
  <Code>InvalidRequest</Code>
  <Message>
    The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.
  </Message>
  <RequestId>17E9629D33BF1E24</RequestId>
  <HostId>
    ...
  </HostId>
</Error>

这个错误的原因是我错误地实现了存储后端,还是因为存储桶不支持旧的AWS3 授权方法?

如何在Django中配置S3Boto3Storage使用AWS4授权?我找不到有关此主题的任何权威文档。

【问题讨论】:

    标签: python django amazon-s3 boto3


    【解决方案1】:

    既然您提到了S3Boto3Storage 后端,我假设您使用的是 django-storages 而不是编写自己的实现。有一个设置可让您指定要使用的签名版本,AWS_S3_SIGNATURE_VERSION = 's3v4',您可以在此处找到 S3 的完整设置列表https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html#settings

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-20
      • 2014-10-09
      • 2015-04-15
      • 2021-08-28
      • 2015-09-09
      • 1970-01-01
      • 2017-04-25
      • 2014-07-26
      相关资源
      最近更新 更多