bases_de_donnees:postgresql:utilisateurs_et_droits
Table des matières
PostgreSQL : Gestion des utilisateurs et droits
Créer un utilisateur
CREATE ROLE test_user LOGIN PASSWORD 'test123';
Supprimer un utilisateur
DROP ROLE test_user;
Changer le mot de passe d'un utilisateur
ALTER USER utilisateur WITH PASSWORD 'new_password';
Attribuer des droits sur une base à un utilisateur
GRANT droit1, droit2,... ON DATABASE base_de_donnees TO utilisateur;Les droits possibles sont :
SELECT, INSERT, UPDATE, DELETE, TRUNCATE, REFERENCES, TRIGGER, CREATE, CONNECT, TEMPORARY, EXECUTE, USAGE
Exemples de commandes GRANT
Dans le schema ref_citoyen pour la table telechargements_appstore
- Droits CRUD pour l'utilisateur ref_citoyen
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE ref_citoyen.telechargements_appstore TO ref_citoyen;
- Droit SELECT, REFERENCES, TRIGGER pour l'utilisateur tmabull
GRANT SELECT, REFERENCES, TRIGGER ON TABLE ref_citoyen.telechargements_appstore TO tmabull;
GRANT CONNECT ON DATABASE sde TO test_user; REVOKE CONNECT ON DATABASE sde FROM test_user; GRANT USAGE ON SCHEMA archives TO test_user; REVOKE USAGE ON SCHEMA archives FROM test_user; GRANT SELECT ON ALL TABLES IN SCHEMA cr_general TO test_user; REVOKE SELECT ON ALL TABLES IN SCHEMA cr_general FROM test_user;
Pour postgres < 9, il faut donner les doits tables par tables :
SELECT 'GRANT SELECT ON ' || schemaname || '.' || tablename || ' TO toto;' FROM pg_tables WHERE schemaname = 'archives';
bases_de_donnees/postgresql/utilisateurs_et_droits.txt · Dernière modification : 2022/06/10 14:14 de 127.0.0.1