我有一个 PEM 格式的证书。我想用来tls.checkServerIdentity()
验证证书是否有效。但是 nodejs 的TLS
模块不接受 PEM 格式。
我尝试了各种 X509 解析器,但它们都没有生成与tls.checkServerIdentity()
. 我试过了
- 节点锻造。对象格式不兼容,无法导入节点的根证书,因为它们包含不兼容的证书
- x509
- @奇特/x509
- 我不能使用节点 17 的 X509 功能,因为 Lambda 只能访问节点 14.x
- 证书的 CN 无法连接,所以我不能简单地作弊并让 TLS 连接到它
上下文:我最终的问题是在 nodejs/lambda 中执行与此 PHP 版本的 paypal webhook 验证相同的操作。但是似乎没有办法获得与 nodejstls
模块兼容的证书以使用 nodejs 内置功能。(PHP 版本不验证证书)
如何验证 Paypal webhook 通知 DIY 样式(不使用 Paypal SDK)
NodeJS 参考: https ://nodejs.org/docs/latest-v14.x/api/tls.html#tls_tls_checkserveridentity_hostname_cert