Rozumiem, że to jest pytanie ma lat, ale wpadłem na ten sam problem dzisiaj i mam rozwiązanie, które używa trust
w ograniczony, ale użyteczny sposób.
Podobnie jak w wielu sklepach deweloperskich, gdy deweloperzy potrzebują hasła postgresowego QA, po prostu krzyczą, wysyłają wiadomość, wysyłają ją pocztą elektroniczną, piszą na czołach itp. A ja mówię: "To naprawdę źle. Muszę znaleźć sposób na wykorzystanie PKI tutaj. " Używamy również pgAdmin3.
pierwsze, dodać linię podobnego do pg_hba.conf, gdzie dev
reprezentuje użytkownika dla deweloperów w swoim sklepie:
host all dev 127.0.0.1/32 trust
upuść klucz publiczny deweloperów w swoim folderze authorized_keys
na Serwer bazy danych. Teraz mają je ssh do serwera z flagą -L
z polecenia podobnego do poniższego:
ssh -i ~/.ssh/id_rsa -L5432:127.0.0.1:5432 -vvv 101.102.103.104
Pozwala to korzystać z portu postgres'owy jak gdyby localhost. Oczywiście, zamień klucz, serwer i upewnij się, że mapujesz do otwartego portu lokalnie (jeśli masz lokalny postgres uruchomiony, to prawdopodobnie jest powiązany z 5432). Używam dość obszernej flagi, dzięki czemu mogę łatwo rozwiązać wszelkie problemy związane z ssh.
otworzyć kolejny zacisk i wydaj polecenie:
psql -h 127.0.0.1 -U dev -p 5432
powinny mieć dostęp do bazy danych i nigdy nie być poproszony o hasło, które myślę, że jest super, bo w przeciwnym razie, deweloperów po prostu uchylić hasło dookoła z małym poszanowaniem bezpieczeństwa, przekazanie go jak cukierki na Halloween.
W tej chwili PgAdmin3 będzie nadal monitować o podanie hasła, nawet jeśli - zwykły jak dzień - nie jest to konieczne. Ale inne GUI programu Postgres nie będą. Wypróbuj Postico. Jest w wersji beta, ale działa świetnie.
Mam nadzieję, że ta odpowiedź pomoże każdemu, kto mnie lubi, raczej używać PKI do uwierzytelniania postgreSQL zamiast dzielenia się hasłami.
Czy próbowałeś * podać * żądane hasło? –
Moje hasło jest puste, więc właśnie wprowadziłem, kiedy było żądanie. – DarkCoffee
Czy możesz spróbować połączyć się z linii poleceń? '$ psql -U' możesz pominąć -h , jeśli chcesz się połączyć używając gniazd domeny unix. –
Eelke