首页 > 解决方案 > node.js tls 模块完成的相互身份验证检查是什么?

问题描述

我从这里复制了参考手册中的文字

验证证书颁发给主机名

可以通过提供替代函数作为传递给 tls.connect() 的 options.checkServerIdentity 选项的一部分来覆盖此函数。覆盖函数当然可以调用 tls.checkServerIdentity() 来增加通过额外验证完成的检查。

所以,我的问题是 tls.checkServerIdentity() 中为验证证书所做的检查是什么?它是否包括请求中存在的主机的 dns 解析?我正在做一个相互身份验证 tls,如果它尚未在 tls.checkServerIdentity() 中完成,我想对主机进行 dns 解析

标签: node.jstls1.2mutual-authentication

解决方案


我通过查看此处的 checkServerIdentity 的源代码找到了答案

它检查证书的 SAN 和 CN 字段以查看主机名的匹配。


推荐阅读