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.

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
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 !!!!
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.