GNU/Linux >> Znalost Linux >  >> Linux

Chybová zpráva Postgres:FATAL:Ověření identity selhalo pro uživatele...

Řešení 1:

To znamená, že Postgres se pokouší ověřit uživatele pomocí protokolu Ident a nemůže. Ident auth funguje takto:

  • Máte databázovou roli 'foo' v databázi 'db'
  • Váš pg_hba.conf soubor (v /etc/postgres-something/main ) definuje 'Ident' jako protokol pro připojení k databázi db pro uživatele připojující se z určitých hostitelů
  • Unixové uživatelské jméno, které se připojuje, je 'foo'
  • Ident server spuštěný na počítači, ze kterého se uživatel připojuje, potvrzuje, že jeho uživatelské jméno je skutečně „foo“

Možné příčiny a řešení:

  1. Neexistuje žádný Ident server běžící na počítači, ze kterého se pokoušíte připojit. Otestujte to tak, že se k němu pokusíte připojit na portu 113. Pokud se to nezdaří, nainstalujte Ident server (např. sudo apt-get install oidentd ).
  2. Je zde Ident server, ale není zde žádná databázová role odpovídající jménu, se kterým se pokoušíte spojit (ve výše uvedeném příkladu „foo“). Vytvořte jej tak, že se nějakým způsobem připojíte k databázi s právy superuživatele a proveďte CREATE ROLE foo . Případně přidejte položku do /etc/postgresql/.../main/pg_ident.conf (nebo /var/lib/pgsql/12/data nebo kdekoli).

  3. Možná, že uživatelské jméno shellu neodpovídá databázová role. Můžete to otestovat tak, že se připojíte k serveru Ident během připojení a předáte správná čísla portů.

  4. Možná se skutečně chcete připojit pomocí hesla , ne Ident. Upravte pg_hba.conf soubor vhodně. Například změnit:

    host all all 127.0.0.1/32 ident
    

    do

    host all all 127.0.0.1/32 md5
    

Řešení 2:

Nejste si jisti příčinami, ale toto mi to vyřešilo:

v pg_hba.conf

změnit na toto:

hostit všechny všechny 127.0.0.1/32 md5

Přesná chyba:Caused by: org.postgresql.util.PSQLException: FATAL: Ident authentication failed for user "postgres"

Řešení 3:

Na CentOS přidejte následující řádek do /var/lib/pgsql/9.3/data/pg_hba.conf :

host all all 127.0.0.1/32 trust

A okomentujte ostatní příspěvky.

Toto nastavení samozřejmě není bezpečné, ale pokud se jen plácáte na vývojovém VM jako já, pak je to pravděpodobně v pořádku...


Linux
  1. httpd:apr_sockaddr_info_get() se nezdařilo pro rhel7

  2. Chyba spouštění virtuálního počítače OpenStack – poslední výjimka:Vazba selhala pro port [Vyřešeno]

  3. Chyba OpenCA addMessage se nezdařilo pro slot protokolu XML. Nelze vytvořit adresář [Vyřešeno]

  1. Chyba:Ověření md5 se nezdařilo pro PyYAML-3.11.zip možný problém se stahováním? [Řešení]

  2. CHYBA 1045 (28000):Přístup odepřen uživateli 'root'@'localhost' (pomocí hesla:ANO)

  3. PostgreSQL:Odstraňte požadavek na heslo pro uživatele postgres

  1. Nepodařilo se spustit databázový server PostgreSQL – Neregistrovaný autentizační agent pro unixový proces [Vyřešeno]

  2. Nepodařilo se stáhnout metadata pro repo „AppStream“ [CentOS]

  3. Zakázat uživatelské prostředí z bezpečnostních důvodů?