CREATE ROLE test_user LOGIN PASSWORD 'test123';
DROP ROLE test_user;
ALTER USER utilisateur WITH PASSWORD 'new_password';
GRANT droit1, droit2,... ON DATABASE base_de_donnees TO utilisateur;Les droits possibles sont :
- 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';