中间件订单快递

根据Express 安全最佳实践 ,我实施了Helmet

由于我正在使用多个中间件( cookie-sessionmorganbody-parser和各种自制的中间件进行身份validation),我现在想知道应该把它们放在哪个顺序上。
是否有中间件最佳实践指南 ,其安全性和秩序?

在你的情况下,我会使用头盔作为第一个中间件。

最重要的原因是HSTS处理。 这将处理用户被强制使用您的网站的HTTPS版本,而不是普通的HTTP。

在HTTPS站点上首先列出头盔可能会导致一些有趣的漏洞,因为用户可能通过HTTP启动事务,将敏感信息传递到可以恶意使用的Web应用程序,然后通过头盔稍后redirect到HTTPS(不好)。

这是一个有趣的问题,这肯定应该添加到头盔文档。