Gestion utilisateurs PostgreSql

De EjnTricks

Cet article se propose de présenter les opérations d'administration pour la gestion des utilisateurs sur les bases PostgreSql.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Icon-database-init.png Création

La création d'un utilisateur est nécessaire afin d'utiliser une base déclarée. La requête suivante permet de créer un utilisateur avec le login USERNAME et le mot de passe PASSWORD:

postgres=# CREATE USER USERNAME WITH PASSWORD 'PASSWORD';
CREATE ROLE
postgres=# 

Attention, dans ce cas le mot de passe est fourni en clair. Il est possible de spécifier le mot de passe crypté.

En fonction de la configuration, l'utilisateur peut se connecter ou non à une base. Ces permissions sont gérées au niveau du fichier pg_hba.conf.


Icon ACL.png Affection des droits

Afin d'utiliser une base de données, il est nécessaire que le compte utilisé ait des droits suffisants. La requête suivante donne le droit de recherche sur toutes les tables du schema identifié par SCHEMA_NAME, pour le compte USERNAME.

postgres=# GRANT SELECT ON ALL TABLES IN SCHEMA SCHEMA_NAME TO USERNAME;
GRANT
postgres=# 


Icon-database-init.png Suppression

La suppression d'un compte s'effectue avec la requête:

postgres=# DROP USER USERNAME;
DROP ROLE
postgres=# 

Attention, si l'utilisateur possède des droits sur des schemas, il ne pourra pas être supprimé et un message d'erreur est affiché.

ERROR:  role "USERNAME" cannot be dropped because some objects depend on it
DETAIL:  70 objects in database sonarqube