尽管信任库中不存在证书,但允许与 RDS Postgres 的 JDBC SSL 连接

问题描述 投票:0回答:1

我在 AWS 中配置了 Postgres RDS 数据库,并配置了 rds-ca-rsa2048-g1 证书。

在我的 Java 应用程序中,我使用以下连接 URL:

jdbc:postgresql://my-db-name.ajsa891hjkdas.eu-central-1.rds.amazonaws.com:5432/mydb?searchpath=dataset?ssl=true&sslmode=require

在应用程序启动时,我设置了 JVM 属性:

-Djavax.net.ssl.trustStore=app/truststore.jks
-Djavax.net.ssl.trustStorePassword=mypass

在信任库中,我目前只有 Amazon Root CA,但没有导入 rds-ca-rsa2048-g1。 然而,连接似乎正在工作,尽管我预计它会由于缺少证书而失败。

尽管我没有在信任库中导入任何 RDS 证书,但为什么连接可以正常工作?我应该怎么做才能正确配置 SSL 连接?

提前谢谢您!

我希望我的 Java 应用程序和 RDS 之间能够正常工作 SSL 连接。

amazon-web-services ssl jdbc amazon-rds truststore
1个回答
0
投票

弄清楚了 - 尽管我们不验证 RDS 证书,但连接已加密。这是由于“需要”ssl 模式造成的。 “require”与“verify-full”或“verify-ca”不同,后者会使用我们应用程序的信任库额外检查 RDS 提供的证书是否可信。 即使我们不验证 RDS 证书,“require”也将允许建立加密连接。

链接:https://www.postgresql.org/docs/current/libpq-ssl.html

© www.soinside.com 2019 - 2024. All rights reserved.