PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Authentifier l'utilisateur et le mot de passe PostgreSQL sans base de données

Utilisez la table système pg_roles

Postgres installe toujours une base de données appelée "postgres". postgres est la base de données à laquelle vous vous connectez lorsque vous ne vous connectez pas à une base de données. Il y a une table appelée pg_roles .

Utilisez cette commande :

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

Ce qui renvoie ceci :

 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 lignes)

Voir cette réponse :Comment vérifier si un l'utilisateur postgres existe ?

Testez-le en vous connectant

Essayez simplement de vous connecter avec le nom d'utilisateur/mot de passe fourni et entourez-le d'un try/catch, et si vous pouvez vous connecter, il est valide, sinon il n'est pas valide.

Modification de l'utilisateur

Vous pourrez peut-être recevoir un message d'erreur si vous modifiez un utilisateur qui n'existe pas :http://www.postgresql.org/docs/8.0/static/sql-alteruser.html

ALTER USER postgres WITH PASSWORD 'tmppassword';

Supprimer et rajouter un utilisateur

Vous pourrez peut-être recevoir un message d'erreur si vous essayez de supprimer et de rajouter un utilisateur. Donc, s'il n'était pas valide, une erreur aurait été générée lorsque vous essayez de supprimer un non-utilisateur. http://www.postgresql.org/docs/8.0/static /sql-createuser.html