Also habe ich einen Benutzer ‚Papierkram‘ mit einer Datenbank mit dem gleichen NamenPostgres Benutzer mit irgendwelchen oder kein Passwort einloggen
postgres=# create role paperwork;
postgres=# create database paperwork;
postgres=# grant all privileges on database paperwork to paperwork;
postgres=# ALTER ROLE paperwork WITH LOGIN;
postgres=# ALTER ROLE paperwork WITH PASSWORD 'paperwork';
Aber es immer noch lässt mich als Papierkram ohne Passwort einloggen aufgerufen
[###@EMOO modules]$ psql --username=paperwork --host=localhost
psql (9.6.3)
Type "help" for help.
paperwork=> \q
und wenn ich es erzwingen, ein Passwort zu verwenden, wird jedes Passwort akzeptiert einschließlich leeres Kennwort:
[###@EMOO modules]$ psql --username=paperwork --host=localhost --password
Password for user paperwork:
psql (9.6.3)
Type "help" for help.
W Wenn ich pgadmin3 öffne und auf den Benutzer "Papierkram" klicke, scheint es ein verschlüsseltes Passwort zu haben.
-- Role: paperwork
-- DROP ROLE paperwork;
CREATE ROLE paperwork LOGIN
ENCRYPTED PASSWORD 'md585ff97314dbeb9953b989fd363a8e96f'
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
Auch wenn ich pgadmin3 öffne es fragt mich nach dem Postgres Passwort, aber auch hier wird alles für das Postgres Passwort akzeptieren. (und ich erinnere mich, das postgres-Passwort bei der Installation von Postgres eingestellt zu haben) Wie mache ich es so, dass Sie das richtige Passwort für die Anmeldung benötigen? Oder gibt es hier einen Zusammenhang, den ich völlig vermisse? . . . wie Passwörter werden nur für Remote-Logins oder etwas Seltsames benötigt. Vielen Dank.
EDIT: Ich habe keine /usr/share/postgresql/pg_hba.conf (EDIT: eigentlich habe ich kann ich es einfach nicht finden, weil ich nicht sudo auf dem „lokalisiert“ Befehl wurde) ich habe ein aus der Beispieldatei: /usr/share/postgresql/pg_hba.conf.sample
diese Idee erhielt von hier: http://blog.mattsch.com/2012/05/19/postgresql-accepts-any-or-no-password-when-connecting/ ich habe versucht, so dass es mD5-Authentifizierung, aber ich habe immer noch das gleiche Problem. Was habe ich versucht, ist unten aus der Datei /usr/share/postgresql/pg_hba.conf
@[email protected]
# TYPE DATABASE USER ADDRESS METHOD
@[email protected]# "local" is for Unix domain socket connections only
@[email protected] all all @[email protected]
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
@[email protected]#local replication @[email protected] @[email protected]
#host replication @[email protected] 127.0.0.1/32 @[email protected]
#host replication @[email protected] ::1/128 @[email protected]
ich neu gestartet postgresql dann aber immer noch das gleiche Problem haben.
EDIT: Danke Abelisto. Der Befehl "show config_file" (nachdem ich mich mit pgsql angemeldet habe) bringt mich auf den richtigen Weg. Es ist mir nicht aufgefallen, dass "locate pg_hba.conf" von der Kommandozeile meines Linux-Benutzers aus ausgeführt wurde und keine Berechtigung hatte, die eigentliche Konfigurationsdatei im postgres-Verzeichnis zu finden:/var/lib/postgres/data/Der "Papierkram" "jetzt wird mit dem falschen Passwort abgelehnt, nachdem ich geändert‚Vertrauen‘auf‚md5‘in /var/lib/postgres/data/pg_hba.conf auf diesen Linien zu machen:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
wahrscheinlich markiert gelöst wird in ein bisschen will nur ein paar Dinge testen.
In der das richtige Passwort nicht liefern 'psql' führe' show config_file; 'aus um herauszufinden, wo deine Konfiguration ist. – Abelisto
Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Datenbankadministratoren Stack Exchange] (http://dba.stackexchange.com/) wäre ein besserer Ort, um zu fragen. – jww
oh entschuldigung, was soll ich tun? überlasse ich das hier? oder sollte ich es löschen und erneut auf einem Datenbankstapel austauschen? – Zendasi