证书用途,何时进行验证



我今天正在排除一个问题,用户在试图连接到一个网站时,在谷歌浏览器中出现了"无效的服务器证书"。我们验证了SSL链、证书、验证的连接性,没有任何问题。类似地,openssl s_client连接似乎没有问题。我们甚至运行了tcpdump,虽然我不是特别熟悉如何读取它们,但我没有看到明显的错误。

最后,只是为了笑,我在Firefox中打开链接以验证我没有以某种方式获得缓存副本,我收到了一个新的错误"证书类型未批准应用程序"。在这一点上,很快就可以看到我们的服务器证书被作为客户端证书提供,问题解决了。

我的问题是,在这个过程中的哪一点是目的被验证的?我觉得我应该在tcpdump中看到这个错误,特别是在openssl s_client连接中。我想知道证书的目的是否要等到以后才检查。

如果它有帮助,请求是从Netscaler vserver到WebSEAL实例。

由客户端验证,而不是协议。协议的一部分是传输证书的公共部分,其中包括元数据,如可接受的用途。然后由客户端决定证书对于应用程序正在执行的用例是否有效。协议没有办法知道应用程序类型是什么,或者完整的用途是什么(这是后来在标准开发中添加的元数据)。

这就是为什么openssl不关心,但chrome/ff关心。

最新更新