【问题标题】:Certificate hostname verification in java - subject alternative namesjava中的证书主机名验证 - 主题替代名称
【发布时间】:2016-07-16 17:31:56
【问题描述】:

我在“主题”字段中使用带有主题替代名称的证书,而不是 x509 扩展名。

我使用的 java 客户端仍然无法连接到 https url,抱怨证书中的主机名不匹配。我的理解是,只要主机名列在主题替代名称中,它就应该起作用。

这是证书中主题字段的格式

C=US,ST=.......CN=x.yz.com/emailAddress=a@b.com/subjectAltName=DNS.1=x2.y.com,DNS.2=x3。 y.com

是否需要将 SAN 定义为 X509 扩展

【问题讨论】:

    标签: ssl ssl-certificate


    【解决方案1】:

    subjectAltName 应该是证书的 X509v3 扩展,而不是 Subject 字段的一部分。因此,如果您在 Subject 中列出了 SAN 名称,则您的证书无效。

    Here's an example 定义 SAN 的证书。 This answer 包含主题的允许字段列表。

    【讨论】:

    • 据此wiki DNS 名称通常包含在主题字段中。
    • @Sridhar 这不正确。如果您阅读链接的文章,它会说这是一个扩展
    • 我同意那篇文章说它是一个扩展,但我对“DNS 名称(这通常在主证书的主题字段中作为通用名称 RDN 提供。)”这句话感到困惑。我会解释吗
    猜你喜欢
    • 2020-10-03
    • 2017-06-27
    • 2021-07-07
    • 1970-01-01
    • 2017-08-20
    • 2012-12-25
    相关资源
    最近更新 更多