使用 Heroku 的 Postgres 数据库时将 rejectUnauthorized 设置为 false 是否安全?

信息安全 tls http 节点.js PostgreSQL
2021-09-08 22:57:03

我正在尝试将一些字段放在 Heroku 应用程序上托管的 Postgres 数据库中,并且它不断返回此错误:

Error: self signed certificate
code: 'DEPTH_ZERO_SELF_SIGNED_CERT'

我尝试添加密钥、证书和 CA 包,但无济于事

许多StackOverflow的问题,与同样的错误说来设置变量rejectUnauthorized,以false使http服务器时。我的问题是 Heroku 上的 Postgres 数据库有多安全,它会对数据库的安全性构成任何威胁吗?

如果信息有帮助,我将使用 node.js 脚本将查询发送到数据库。

1个回答

Heroku不支持对其 Postgres 数据库进行客户端证书验证,除非您使用 Private Spaces 或 Shield:

除非您使用的是 Private 或 Shield Heroku Postgres 数据库,否则 Heroku Postgres 目前不支持可验证的证书。

我的理解是,在这种情况下,您能做的最好的事情是:

  • 您的连接已加密,并且您不会被窃听
  • 不受中间人 (MITM) 攻击的保护
ssl: {
  sslmode: 'require',
  rejectUnauthorized: false,
}

根据此处的表格,这是没有证书验证的最高级别

在此处输入图像描述