Amazon S3桶命名约定与证书冲突



我重命名了一个Amazon S3 Bucket from:"multi-word-name"

是Amazon建议的最佳命名约定:"multi.word.name"

问题是这会导致SSL证书出现问题:"您试图访问multi.word.name.s3.amazonaws.com,但实际上您访问的是一个标识为*.s3.amazonaws.com的服务器……"

任何想法?

谢谢

在Amazon S3中桶命名有两个潜在的问题。

DNS兼容的桶命名和SSL验证

首先,关于建议的符合DNS的存储桶名称约定,仍然存在一个巨大且严重的文档警告,请参阅存储桶的虚拟主机:

当使用带有SSL的虚拟托管样式桶时, SSL通配符证书只匹配不包含句点的桶。要解决这个问题,可以使用HTTP或编写自己的证书验证逻辑。(我强调)

  • 所以从这个角度来看,你想要的方法根本行不通——这个问题在Kerry对Amazon S3的回答中有更详细的探讨——HTTPS/SSL——可能吗?,其中还提供了来自AWS支持的关于此问题的专用答案。

AWS SDK内符合DNS的桶命名和SSL验证

如果您是从Java的AWS SDK的上下文/范围询问,您可能想要再次尝试使用新的Java 1.4.0的AWS SDK,它具有相关的 S3主机名SSL验证的更改:

当使用dns风格的桶寻址(默认)时,Amazon S3客户机现在在验证主机名时不那么严格了。现在任何以s3.amazonaws.com结尾的域名都将绕过严格的SSL检查要求。此更改修复了非美国地区的客户使用名称中带有句号的桶所遇到的问题。(我强调)

请注意,这个更改是昨天才发布的,我还没有研究它的背景或它与上述通用限制的关系,但它可能会对您有所帮助。

祝你好运!

最新更新