我在NodeJS中使用Express与Express对我的应用程序使用LDAP身份验证,我收到错误:
events.js:154
throw er; // Unhandled 'error' event
^
Error: unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1065:38)
at emitNone (events.js:80:13)
at TLSSocket.emit (events.js:179:7)
at TLSSocket._init.ssl.onclienthello.ssl.oncertcb.TLSSocket._finishInit (_tls_wrap.js:593:8)
at TLSWrap.ssl.onclienthello.ssl.oncertcb.ssl.onnewsession.ssl.onhandshakedone (_tls_wrap.js:425:38)
我在配置文件中有所有ldap选项,然后我添加ca之类的东西:
opts.tlsOptions.ca = [fs.readFileSync('./config/ldap.pem')];
passport.use(new LdapStrategy({server: opts}));
我用Google搜索了错误并在此处找到了以下答案:Error: unable to verify the first certificate in nodejs所以我在初始化ldap之前添加了以下内容:
require('ssl-root-cas').addFile('./config/ldap.pem');
然而,这个解决方案对我来说根本不起作用。我没办法。我真的希望有人能看出我做错了什么。
答案 0 :(得分:0)
事实证明我提供了错误的证书,结果就是这样。我得到了正确的证书,这个错误已经停止,一切正常。