Ubuntu(Postgres)用户的身份validation失败

我在Ubuntu上安装了Postgres。

通过pgAdmin我可以连接Postgres与我创build的用户,但是当我尝试使用相同的用户名和密码的其他应用程序时,我得到:用户的身份validation失败。

为什么通过pgAdmin我可以连接,并通过一个Python客户端,我得到上述错误信息?

谢谢!

ident通过检查哪个系统用户正在尝试连接来工作,并允许它与其连接。 networking也可以作为标准添加。

有几点要指导解决问题:

  • 你是否100%确定启动连接的部分在你想要authentication的用户的上下文中运行?
  • python客户端是否提供相同的用户名?
  • 它是否以不同的用户身份运行(例如,通过sudo)?
  • 你是在同一台主机上运行pgAdmin和python客户端,所以我们可以排除其他差异的因素?
  • 是python客户端连接到pgAdmin(外部地址与本地主机地址)相同的地址?

configurationPostgresql以使用基于md5 / sha1的远程authentication可能是最可靠的方法来可靠地解决这个问题。 如果他们知道密码,它将允许其他用户进行身份validation – 但是无论如何,您应该掌握谁知道密码。

检查您是否使用相同的“主机名”为phpPgAdmin和其他方法。

如果使用localhost或127.0.0.1或公共/内部服务器IP作为连接主机名,则会有所不同。