我正在尝试使用 Go SDK 将文件上传到 Amazon S3 存储桶到自定义终端节点,但我收到了该错误:
RequestError: send request failed caused by: Put https://<bucket>.<custom-endpoint>/sample.tar.gz: x509: certificate is valid for *<hostname>, not <bucket/hostname>
自定义端点的证书在通用名称 (*.) 的开头包含一个通配符,我应该在此推断通配符将涵盖它尝试执行的请求。我尝试使用 Python3 和 boto3 包上传文件,获得了成功的结果。
你能就此提出建议吗?
最佳答案
您可以简单地将“bucket”一词放在 vpc 端点的前面。因此,如果您的端点是:
*.vpce-09f99bc99983c51-188851c5.s3.us-east-1.vpce.amazonaws.com
在您的配置中(对于 EndpointResolver),您应该使用:
https://bucket.vpce-09f99bc99983c51-188851c5.s3.us-east-1.vpce.amazonaws.com
返回 EndpointResolverFunc 时不要忘记设置 URL、SigningRegion 和 Source
关于amazon-web-services - x509:证书对 *<rest-of-hostname> 有效,而不是 <bucket/hostname>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66786933/