【问题标题】:Django app's DB user failed authentication in AWSDjango 应用程序的数据库用户在 AWS 中的身份验证失败
【发布时间】:2020-08-21 22:58:32
【问题描述】:

这里是 Django setting.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'rulings',
        'USER': 'postgres',
        'PASSWORD': '******',
        'HOST': '',
        'PORT': '',
    }
}

在 AWS 中,当我运行服务器时,会出现错误消息。

File "/home/app_admin/venv_ruling/lib64/python3.7/site-packages/psycopg2/__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
django.db.utils.OperationalError: 
FATAL: Peer authentication failed for user "postgres"

如何使用 postgres 的用户名运行服务器? 当我使用另一个用户名时,它会毫无问题地运行,但我想使用“postgres”作为用户。

【问题讨论】:

    标签: django database postgresql


    【解决方案1】:

    我认为甚至不能在 RDS 上配置“对等”身份验证,所以您必须在 EC2 上运行自己的 PostgreSQL 服务器?由于您显然想使用密码身份验证,请将您的 pg_hba 更改为指定“md5”,而不是“peer”。

    此外,将应用程序作为“postgres”运行是一种不好的做法。该用户应该被保留用于维护操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-14
      • 2012-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-09
      相关资源
      最近更新 更多