node.js - 如何为任何请求禁用 SSL 验证?
问题描述
我有一个 Node.JS 服务正在运行,我正在尝试从不同的系统进行连接。目前使用 POSTMAN 来测试服务。Postman 给出了一个错误 -There was an error connecting to https://lddbbtx.wdf......./index.xsjs.
现在,我通过禁用 Postman 中的“SSL 证书验证”选项重试了该请求,它似乎可以工作。我可以收到服务的响应。
但在生产中,我们将使用 Recast.AI 连接到此服务。在 Recast 中,它们提供了一种为 GET/POST 请求设置标头的方法。所以,我想知道,有没有办法在请求的标头中禁用 SSL 验证?
解决方案
...有没有办法在请求的标头中禁用 SSL 验证?
服务器证书的验证在客户端完成。它在 TLS 握手期间完成,因此在发送任何 HTTP 请求之前完成。服务器不能触发禁用验证,否则中间攻击者可以简单地指示受害者不要检查证书。
一般来说 - 禁用验证甚至部分验证(例如检查 URL 中的主机名是否与证书匹配)是一个非常糟糕的主意。禁用证书验证后,传输仍然是加密的,但客户端不会检查它是否确实与预期的服务器通信。这样,攻击者可以进行简单的中间人攻击来冒充服务器,从而嗅探并修改所有流量。
推荐阅读
- node.js - Node.js 不包括从 .bashrc 导出的 PATH
- regex - 正则表达式分隔符 "::" Tcl
- java - Visual Studio 2017 自动安装 Java SE 1.8,是否已获得许可?
- c++ - 返回一个 const 变量 - 它会导致问题吗?
- python - Pandas-Dask DataFrame 应用函数并返回列表
- wordpress - 将 Telegram 机器人消息发送到 Wordpress REST 端点?
- java - 检查矩形是否与文本相交
- javascript - 正则表达式检查字符密码重复频率
- qt - QStateMachine 自动转换或混合 boost::msm 与 QObject
- jmeter - 如何根据我的要求在 jmeter 中创建折线图?