首次使用SSL客户端身份验证。在与第三方CA颁发的证书(在本例中为StartSSL)混合时,它与node.js一起使用的方式令我感到困惑。
在生产服务器上,我使用nginx作为不同node.js实例的负载均衡器。由于这是我之前的工作方式,因此nginx正在处理所有HTTPS工作,然后将普通的http请求传递给节点实例。由于它一直决定总是强制执行SSL(对于所有类型的请求,使用HSTS并使用简单的重定向),我正在考虑让nginx只进行平衡并让nodejs实例处理剩下的事情。
那么,我忽略的是如何使用Node.js来处理它?</ p>
我发现此博文http://www.gettingcirrius.com/2012/06/securing-nodejs-and-express-with-ssl.html和其他http://blog.nategood.com/nodejs-ssl-client-cert-auth-api-rest
我不明白的是如何同时处理两种SSL身份验证。我希望我有所作为。
我们的想法是为每个用户生成一个证书,该证书具有我与用户匹配的CN,然后要求输入密码,该密码在加密后应与数据库上的密码相匹配。同时,使用与CA协同工作的验证级别3证书来提高用户的安全性。