Node.js中的SSL / TLS
示例
如果您选择在Node.js应用程序中处理SSL/TLS,请考虑此时您还负责维护SSL/TLS攻击防护。在许多服务器-客户端体系结构中,SSL/TLS终止于反向代理,以降低应用程序复杂性并减小安全配置的范围。
如果您的Node.js应用程序应处理SSL/TLS,则可以通过加载密钥和证书文件来保护它。
如果您的证书提供者需要证书颁发机构(CA)链,则可以将其ca作为数组添加到选项中。单个文件中包含多个条目的链必须拆分为多个文件,并以相同的顺序输入到数组中,因为Node.js当前不支持一个文件中包含多个ca条目。以下代码中提供了有关文件1_ca.crt和的示例2_ca.crt。如果ca阵列是必需的并且设置不正确,则客户端浏览器可能会显示消息,表明他们无法验证证书的真实性。
例
const https = require('https'); const fs = require('fs'); const options = { key: fs.readFileSync('privatekey.pem'), cert: fs.readFileSync('certificate.pem'), ca: [fs.readFileSync('1_ca.crt'), fs.readFileSync('2_ca.crt')] }; https.createServer(options, (req, res) => { res.writeHead(200); res.end('hello world\n'); }).listen(8000);