From: | Guillaume Lelarge <guillaume(at)lelarge(dot)info> |
---|---|
To: | Marc Jacquin <marc(dot)jacquin(at)magellium(dot)fr> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Utilisation de drop owned ou reassign owned |
Date: | 2010-03-26 18:20:03 |
Message-ID: | 4BACFAD3.5040505@lelarge.info |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Bonsoir,
Le 26/03/2010 18:17, Marc Jacquin a écrit :
> [...]
> PostgreSQL version : "PostgreSQL 8.4.1, compiled by Visual C++ build 1400,
> 32-bit"
>
> Un utilisateur qui a été créé avec le droit CREATEROLE mais qui n’est pas
> superutilisateur exécute le script suivant :
>
> drop role if exists monuser;
>
> CREATE ROLE monuser LOGIN
> NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
>
> drop owned by monuser ;
>
> et génère l’erreur sur la dernière ligne (drop owned)
>
> ERREUR: droit refusé pour supprimer les objets
> [...]
>
> Il me semblait que le droit CREATEROLE suffisait. Si l’utilisateur qui
> exécute le script a le droit superutilisateur, cela fonctionne mais ce
> n’est pas le but.
>
> Le reassign owned provoque une erreur similaire :
>
> ERREUR: droit refusé pour ré-affecter les objets
> [...]
>
> Une idée ?
>
Oui, "DROP OWNED BY" sert à supprimer des objets. Pour supprimer des
objets, quelque soit la commande, il faut soit être propriétaire des
objets soit être superutilisateur.
Ou autrement dit, avoir le droit de créer des utilisateurs ne donne pas
le droit de supprimer leurs objets.
J'en profite pour ajouter qu'il suffit que l'utilisateur qui exécute la
commande soit membre (avec option INHERIT) du rôle à supprimer pour que
ça fonctionne aussi (parce que dans ce cas il est aussi considéré comme
propriétaire des objets).
--
Guillaume.
http://www.postgresqlfr.org
http://dalibo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Lelarge | 2010-03-27 01:48:02 | Re: Utilisation de drop owned ou reassign owned |
Previous Message | Marc Jacquin | 2010-03-26 17:17:22 | Utilisation de drop owned ou reassign owned |