Connexion par la méthode "peer" à PostgreSQL

La méthode d'authentification "peer"

La méthode "peer" est utilisée pour se connecter localement à la base de données depuis le client psql.

La méthode "peer" utilise le nom d'utilisateur dans le système d'exploitation et l'applique comme nom d'utilisateur de la base de données, sans demander de mot de passe.

Syntaxe

1
psql -d database

ExempleConnexion locale (méthode "peer")

1
stc@supermachine:~$ psql -d postgres

La commande psql lancée par l'utilisateur stc avec le paramètre -d postgres essaye de se connecter au serveur :

  • sur la machine locale (aucune machine n'est spécifiée)

  • sur le port 5432 (le port par défaut de postgresql)

  • avec un utilisateur PostgreSQL nommé stc (qui a le même nom que l'utilisateur Linux),

  • sans mot de passe (PostgreSQL s'en remet en fait à l'authentification Linux, on parle de méthode d'authentification peer),

  • à la base de données postgres (spécifiée par le paramètre -d)

Pour que cette commande fonctionne, il faut que l'utilisateur stc et la base de données postgres existe dans PostgreSQL.

MéthodeCréer son utilisateur PostgreSQL

On pose que votre compte Linux s'appelle alan, pour vous permettre de vous connecter à PostgreSQL, il faut créer un utilisateur alan sur PostgreSQL.

  1. Se connecter au serveur en tant que postgres avec la méthode "peer"

    • sudo su postgres

    • psql

  2. Une fois connecté, créer un utilisateur alan : CREATE USER alan ;

  3. Se déconnecter de psql (\q) puis de l'utilisateur Linux postgres (exit).

  4. Se connecter en tant que alan à la base de données postgres : psql -d postgres