AWS RDS "pg_hba.conf rejects connection for host"
AWS RDS "pg_hba.conf rejects connection for host"
我正在努力通过 RDS 在 AWS 上设置一个 Postgres 实例。它已被放置到具有私有子网的 VPC 中,其中子网 CIDR 为:["10.0.21.0/24", "10.0.22.0/24", "10.0.23.0/24"]
.
我有一个 public 子网,并已通过从 public 到私有子网的堡垒节点成功连接到 postgres,并通过 SSH 端口转发进行 运行 查询。
但是,现在我正在尝试从位于 VPC 的同一私有子网中的 lambda 建立连接。根据安全组,lambda 具有访问权限,但我收到以下错误:
OperationalError: (psycopg2.OperationalError) FATAL: PAM
authentication failed for user "service_worker" FATAL: pg_hba.conf
rejects connection for host "10.0.23.73", user "service_worker",
database "myDB", SSL off
我已经通过堡垒成功连接到 service_worker
,但由于某些原因我无法通过 lambda 连接。似乎 Postgres 正在拒绝这个特定的主机。而且我在 pg_hba.conf
文件中找不到任何指定如何更改 RDS 在管理此信息时所做的操作的配置或文档。
有没有人知道告诉 Postgres 来自同一子网中主机的连接正常?我假设有一些安全策略在所有这些组合中不知何故丢失了。
谢谢!
原来是
Role-based authentication is currently not supported for Amazon RDS
for PostgreSQL and Aurora PostgreSQL.
并且因为 Lambdas 固有地使用基于角色的身份验证,所以这失败了。
我正在努力通过 RDS 在 AWS 上设置一个 Postgres 实例。它已被放置到具有私有子网的 VPC 中,其中子网 CIDR 为:["10.0.21.0/24", "10.0.22.0/24", "10.0.23.0/24"]
.
我有一个 public 子网,并已通过从 public 到私有子网的堡垒节点成功连接到 postgres,并通过 SSH 端口转发进行 运行 查询。
但是,现在我正在尝试从位于 VPC 的同一私有子网中的 lambda 建立连接。根据安全组,lambda 具有访问权限,但我收到以下错误:
OperationalError: (psycopg2.OperationalError) FATAL: PAM authentication failed for user "service_worker" FATAL: pg_hba.conf rejects connection for host "10.0.23.73", user "service_worker", database "myDB", SSL off
我已经通过堡垒成功连接到 service_worker
,但由于某些原因我无法通过 lambda 连接。似乎 Postgres 正在拒绝这个特定的主机。而且我在 pg_hba.conf
文件中找不到任何指定如何更改 RDS 在管理此信息时所做的操作的配置或文档。
有没有人知道告诉 Postgres 来自同一子网中主机的连接正常?我假设有一些安全策略在所有这些组合中不知何故丢失了。
谢谢!
原来是
Role-based authentication is currently not supported for Amazon RDS for PostgreSQL and Aurora PostgreSQL.
并且因为 Lambdas 固有地使用基于角色的身份验证,所以这失败了。