【问题标题】:The AWS Access Key Id you provided does not exist in our records. AWS您提供的 AWS 访问密钥 ID 不存在于我们的记录中。 AWS
【发布时间】:2021-07-17 17:21:40
【问题描述】:

我想将文件上传到 Wasabi 中的云存储,但我不能。出现此错误: 调用 PutObject 操作时发生错误 (InvalidAccessKeyId):我们的记录中不存在您提供的 AWS 访问密钥 ID。 我检查了几次钥匙,一切都是正确的。奇怪的是,在此之前我尝试创建一个新的篮子,一切都对我有用,但我无法上传文件。

    import boto3

s3 = boto3.client('s3',
                  endpoint_url='https://s3.wasabisys.com',
                  aws_access_key_id="********R2PN",
                  aws_secret_access_key="*************zDKnnWS")


file_path = r"C:\Users\Asus\Desktop\Programming\rofls_with_node\tracks.txt"
bucket_name = "last-fm9"
key_name = "tracks.txt"
s3.put_object(Body=file_path, Bucket=bucket_name, Key=key_name)

【问题讨论】:

  • 听起来您提供的访问密钥要么无效(例如以某种方式损坏),要么实际上不作为有效的访问密钥存在于芥末中。
  • 您是否可以使用AWS Command-Line Interface (CLI) 和这些凭据,使用aws s3 ls --endpoint-url=s3.wasabisys.com`?这将是测试凭据是否正确的好方法。见:How do I use AWS CLI with Wasabi? – Wasabi Knowledge Base
  • 我使用了命令“aws s3 ls --endpoint-url = s3.wasabisys.com”,起初我得到了相同的答案,说没有密钥。但是后来我输入了“aws config”,保留了相同的键,但将区域更改为“us-east-1”,并尝试发送相同的请求,我得到了正常的响应。但是因为key,我还是不能发送文件。

标签: python amazon-web-services boto3


【解决方案1】:

就是这样,我解决了问题,我只需将 endpoint_url 更改为“https://s3.us-east-2.wasabisys.com”(而不是 us-east-2,插入您购物篮的区域)。比

【讨论】:

  • 整个上午都在挣扎,非常感谢你,他们肯定应该是另一种类型的异常,让用户知道该区域不正确
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-31
  • 2017-10-10
  • 2023-02-10
  • 1970-01-01
  • 1970-01-01
  • 2018-02-03
  • 1970-01-01
相关资源
最近更新 更多