Re: Utilisation de drop owned ou reassign owned

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

In response to

Responses

Browse pgsql-fr-generale by date

  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