Bonjour,
Je voudrais permettre a certains utilisateurs d'acceder à une base de données.
J'ai crée un schema direction que j'ai peuplé avec des vues, un groupe direction, et des utilisateurs que j'ai affecté à ce groupe.
J'ai pu vérifer que l'utilisateur patron n'avait accès qu'aux vues du schema direction. Cependant, s'il utilise, phppgadmin, après s'être identifié, il obtient «Aucun objet trouvé» et ne voie ni accède à aucun objet !!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 base=# REVOKE CREATE ON SCHEMA public FROM PUBLIC; REVOKE base=# CREATE USER patron WITH PASSWORD 'mot_de_passe' NOCREATEDB NOCREATEUSER; CREATE USER base=# CREATE GROUP direction WITH USER patron; CREATE GROUP base=# CREATE SCHEMA direction; CREATE SCHEMA base=# CREATE OR REPLACE VIEW direction.bilans_en_cours AS .... CREATE VIEW base=# GRANT USAGE ON SCHEMA direction TO GROUP direction; GRANT base=# GRANT SELECT ON direction.bilans_en_cours TO GROUP direction; GRANT
S'il utilise pgadminIII, il voit tous les objets de la base, mais n'accède bien sur qu'aux vues prévues. Cependant, cela serait plus sympa que les utilisateurs ne voient que les objets auquels ils ont accès - tous ses shemas, vues, agrégats, ... cela risque d'effrayer (et je n'exagère pas) la plupart d'entre eux -.
Quelqu'un à une explication pour phppgadmin ? Ai-je oublié quelque chose ?
J'utilise les paquets de la Debian Etch: postgresql 7.4.17, et phppgadmin 4.0.1. Merci beaucoup.
Partager