默认情况下,Azure Database for PostgreSQL在服务器和客户端应用程序之间强制SSL连接以防止MITM(中间人)攻击。这样做是为了尽可能安全地连接到服务器。 如果客户端应用程序不支持SSL连接,您可以选择禁用连接到服务器时要求SSL,但不建议这样做。有关详细信息,请检查Azure中Postgres服务器的How to Configure SSL Connectivity。您可以从门户或使用CLI禁用要求SSL连接。请注意,Azure不建议在连接到服务器时禁用要求SSL连接。
Password for user user@server-name:
psql: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
FATAL: SSL connection is required. Please specify SSL options and retry.
8条答案
按热度按时间rqdpfwrv1#
与其绕过此错误并简单地禁用SSL,您可能还想尝试通过修改连接字符串来简单地启用SSL:
注意结尾的后缀
SslMode=Require
?这也适用于Npgsql(假设您使用C#),用于连接到Azure数据库的Postgresql。zwghvu4y2#
默认情况下,Azure Database for PostgreSQL在服务器和客户端应用程序之间强制SSL连接以防止MITM(中间人)攻击。这样做是为了尽可能安全地连接到服务器。
如果客户端应用程序不支持SSL连接,您可以选择禁用连接到服务器时要求SSL,但不建议这样做。有关详细信息,请检查Azure中Postgres服务器的How to Configure SSL Connectivity。您可以从门户或使用CLI禁用要求SSL连接。请注意,Azure不建议在连接到服务器时禁用要求SSL连接。
hiz5n14c3#
它帮助我:
第一个月
6ju8rftf4#
来自文档:
如果您的PostgreSQL服务器需要TLS/SSL连接(默认情况下在Azure Database for PostgreSQL服务器中打开),请设置环境变量PGSSLMODE = require,以便pg_restore工具使用TLS连接。如果没有TLS,错误可能会显示为FATAL:需要SSL连接。请指定SSL选项并重试。
例如,在Bash下,
export PGSSLMODE=require
,然后运行pg_restore
。vyswwuz25#
在我的例子中,我得到了以下错误
这是因为我输入了错误的用户名或密码。所以请检查您的密码,如果它是错误的,它可能会给予类似的错误。
hivapdat6#
根据https://www.npgsql.org/doc/connection-string-parameters.html,正确的参数是“SSL Mode=Require”,我没有使用“SslMode=Require”
8fq7wneg7#
我刚将依赖项从
到
build.gradle
文件中的runtimeOnly 'org.postgresql:postgresql'
。运行正常。ftf50wuq8#
您可以为Postgres设置禁用Azure Cloud本身的SSL功能!