sql >> Database teknologi >  >> RDS >> PostgreSQL

Godkend PostgreSQL-bruger og adgangskode uden database

Brug systemtabellen pg_roles

Postgres installerer altid en database kaldet "postgres". postgres er den database, du opretter forbindelse til, når du ikke opretter forbindelse til en database. Der er en tabel kaldet pg_roles .

Brug denne kommando:

psql -U pgadmin -d postgres -c 'select * from pg_roles'
 

Hvilket returnerer dette:

rolname | rolsuper | rolinherit | rolcreaterole | rolcreatedb | rolcatupdate | rolcanlogin | rolreplication | rolconnlimit | rolpassword | rolvaliduntil | rolconfig | oid ----------+----------+------------+---------------+-------------+--------------+-------------+----------------+--------------+-------------+---------------+-----------+------- postgres | t | t | t | t | t | t | t | -1 | ******** | | | 10 pgadmin | t | t | t | t | t | t | t | -1 | ******** | | | 16384

(2 rækker)

Se dette svar:Sådan kontrollerer du, om en eksisterer en postgres-bruger?

Test det ved at logge ind

Prøv bare at logge ind med det medfølgende brugernavn/adgangskode og omslut det med en try/catch, og hvis du kan logge ind, er det gyldigt, ellers er det ikke gyldigt.

Ændring af brugeren

Du kan muligvis se en fejlmeddelelse, hvis du ændrer en bruger, der ikke eksisterer:http://www.postgresql.org/docs/8.0/static/sql-alteruser.html

ALTER USER postgres WITH PASSWORD 'tmppassword';
 

Slet og tilføj bruger igen

Du kan muligvis se en fejlmeddelelse, hvis du forsøger at slette og tilføje en bruger igen. Så hvis det var ugyldigt, ville det have givet en fejl, når du forsøger at slette en ikke-bruger. http://www.postgresql.org/docs/8.0/static /sql-createuser.html



  1. Postgres 9.4 jsonb-array som tabel

  2. postgresql liste og bestil tabeller efter størrelse

  3. Sådan formateres penge i PostgreSQL

  4. Forespørger om XML-datatyper, der har xmlns-nodeattributter