PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 22/11/2018 22:31:33

robert_trudel
Membre

Role pour deux cas différents

bonjour,
je débute avec  postgresql

A l'aide de l'utilsateur postgres,

J'ai créé un bd nommé: peracon
J'ai ensuite créer un schéma nommé: lcm

Je voudrais créer un role superadmin qui aurait toute les droits et pourrais être utilisé à travers d'outils tel que pgamdin

Je voudrais aussi avoir un autre role qui serait utilisé dans le spring datasource d'une application spring boot. Il pourrait seulement faire des select, update, delete. Il doit aussi être en mesure de faire un

	SELECT setval('test_reset', 100, false)

Niveau role je pensais faire

CREATE ROLE tcm_admin SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN CONNECTION LIMIT 2 PASSWORD 'xxxxxxxxxxxxxxxx';
GRANT ALL PRIVILEGES on database peracon to tcm_admin;
ALTER DATABASE peracon OWNER TO tcm_admin;


CREATE ROLE peracon_lcm WITH LOGIN NOSUPERUSER NOCREATEDB  NOCREATEROLE    INHERIT NOREPLICATION   CONNECTION LIMIT -1 PASSWORD 'xxxxxxxxxxxxxxxx';
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA lcm TO peracon_lcm;
ALTER DEFAULT PRIVILEGES IN SCHEMA lcm GRANT SELECT, USAGE, UPDATE ON sequences TO peracon_lcm;

des suggestions, conseils?

Dernière modification par robert_trudel (22/11/2018 22:32:24)

Hors ligne

#2 23/11/2018 12:36:46

dverite
Membre

Re : Role pour deux cas différents

Je voudrais créer un role superadmin qui aurait toute les droits

C'est ce que fait SUPERUSER. Il n'est pas nécessaire d'ajouter des droits à un rôle qui a déjà cet attribut.
En l'occurrence "GRANT ALL PRIVILEGES on database peracon to tcm_admin;"  n'amène aucun droit
à tcm_admin qu'il n'avait pas déjà.

GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA lcm TO peracon_lcm;

Ca ne touche que les tables pré-existantes. Il faudra utiliser ALTER DEFAULT PRIVILEGES si vous voulez aussi que les futures tables du schéma soient concernées, à moins que cet utilisateur soit aussi le futur possesseur de ces tables.

Hors ligne

#3 27/11/2018 14:24:03

robert_trudel
Membre

Re : Role pour deux cas différents

faudrait alors remplacer le grant par

ALTER DEFAULT PRIVILEGES IN SCHEMA lcm GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TO peracon_lcm;

Hors ligne

Pied de page des forums