Ebben az oktatóanyagban megvizsgáljuk, hogyan állíthatjuk vissza a felhasználók jelszavait a PostgreSQL szerverrel. Érdemes megjegyezni, hogy az adatbázis-felhasználók ebben az esetben az adatbázis-motorhoz hozzáféréssel rendelkező felhasználókat jelentik. Ezért ez nem tartalmazza az adott alkalmazás felhasználói adatait.
1. módszer: A PSQL segédprogram használata
A PostgreSQL-ben a felhasználói jelszó visszaállításának legáltalánosabb módja az, hogy a PSQL segédprogrammal szuperfelhasználóként (Postgres) jelentkezünk be.
Indítson el egy új terminál munkamenetet, és futtassa a következő parancsot a PostgreSQL adatbázis eléréséhez szuperfelhasználóként:
$ psql -BAN BEN postgres
Az adott parancs a kiszolgáló telepítésekor megadott szuperfelhasználói jelszót kéri.
Miután bejelentkezett a PostgreSQL parancssori felületre, az ALTER USER paranccsal visszaállíthatja egy adott felhasználónév jelszavát.
A parancs szintaxisa a következő:
FELHASZNÁLÓI felhasználónév MÓDOSÍTÁSA JELSZÓVAL 'új jelszó' ;Tegyük fel például, hogy vissza akarjuk állítani a „linuxhint” nevű felhasználónév jelszavát. A lekérdezést a következőképpen futtathatjuk:
ALTER USER linuxhint JELSZÓVAL 'Jelszó' ;
A jelszót szimpla idézőjelek közé kell tenni, főleg ha a jelszó speciális karaktereket tartalmaz.
A parancs sikeres végrehajtása után a következő paranccsal jelentkezhet ki a PSQL felületről:
\q2. módszer: A PgAdmin grafikus felület használata
Egy adott adatbázis-felhasználó jelszavát a pgAdmin grafikus felületén is visszaállíthatja.
Az itt ismertetett lépéseket követve megtudhatja, hogyan állíthat vissza felhasználói jelszót a pgAdmin segítségével:
a. Indítsa el a pgAdmin segédprogramot, és jelentkezzen be a megfelelő hitelesítő adatokkal.
b. Csatlakozzon a cél PostgreSQL-kiszolgálóhoz a szuperfelhasználói hitelesítő adatok használatával.
c. A bal oldali Object Explorer panelen bontsa ki a „Szerverek” csoportot, és keresse meg a céladatbázist.
d. Bontsa ki a „Bejelentkezés/Csoportszerepek” csomópontot, és keresse meg azt a felhasználót, akinek a jelszavát vissza szeretné állítani. Ebben az esetben szeretnénk visszaállítani a „linuxhint” felhasználó jelszavát.
e. Kattintson a jobb gombbal a kiválasztott felhasználóra, és válassza a „Tulajdonságok” lehetőséget a helyi menüből.
f. A „Tulajdonságok” ablakban lépjen a „Definíció” fülre.
g. Adja meg az új jelszót a „Jelszó” mezőben a megadott felhasználóhoz.
h. Végül kattintson a „Mentés” gombra a módosítások mentéséhez.
Ennek be kell állítania a célfelhasználó újonnan megadott jelszavát.
3. módszer: A PostgreSQL jelszókonfigurációs fájl szerkesztése
Ha elfelejtette a szuperfelhasználói fiók jelszavát, a PostgreSQL jelszókonfigurációs fájl szerkesztésével visszaállíthatja a jelszót.
Kezdje azzal, hogy megkeresi a PostgreSQL-telepítés adatkönyvtárát. A könyvtár elérési útja az operációs rendszertől és a telepített PostgreSQL verziótól függően változik.
Az adatkönyvtárban keresse meg a pg_hba.conf fájlt, és szerkessze a kívánt szövegszerkesztővel.
Módosítsa az összes helyi kapcsolatot md5-ről megbízhatóra. Ez arra utasítja a PostgreSQL-t, hogy jelszó nélkül megbízzon a helyi gépről érkező összes kapcsolatban.
# TÍPUS ADATBÁZIS FELHASZNÁLÓ CÍM MÓDSZERA # 'local' csak Unix tartományi socket kapcsolatokra vonatkozik
helyi minden bizalom
# IPv4 helyi kapcsolatok:
host all all 127.0.0.1/32 trust
# IPv6 helyi kapcsolatok:
host all ::1/128 trust
# Replikációs kapcsolatok engedélyezése a localhost-ról egy felhasználó által a
# replikációs jogosultság.
helyi replikáció minden megbízható
gazdagép replikáció összes 127.0.0.1/32 trust
gazdagép replikáció minden ::1/128 bizalom
Ha elkészült, újra kell indítania a PostgreSQL szervert, hogy a változtatások érvénybe lépjenek. Ezután jelszó nélkül bejelentkezhet a PostgreSQL szerverre a Postgres felhasználó használatával.
Következtetés
Megvizsgáltuk azokat a különféle módszereket és technikákat, amelyek segítségével visszaállíthatjuk a felhasználói jelszót a PostgreSQL-ben.