From: | Stephen Amell <StephenAmell(at)inbox(dot)lv> |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | "pos >> pgsql-es-ayuda(at)lists(dot)postgresql(dot)org" <pgsql-es-ayuda(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Drop user y Grantor <> Owner ! |
Date: | 2017-12-19 13:12:11 |
Message-ID: | 074d217a-5336-8362-2cfd-ad997827a31a@inbox.lv |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 2017-12-18 13:07, Alvaro Herrera wrote:
> Hola Stephen
>
> Stephen Amell escribió:
>
>> On 2017-12-18 12:27, Alvaro Herrera wrote:
>>> Stephen Amell escribió:
>>>> Hola, Alvaro
>>>>
>>>> Si, lo primero que hice fue el reassign, y no da error, pero luego tiro el
>>>> drop y pincha.
>> Si, por pincha, quiero decir da error.
> ok :-)
>
>>> ¿qué quieres decir "pincha"? REASSIGN no modifica grantors ni ACLs --
>>> para eso existe DROP OWNED BY.
>> No alcanzo a entender el "DROP OWNED BY" esto ¿me borraría los objetos
>> también? ¿o se los asignaría a postgres por decir algo?
> DROP OWNED BY elimina (drop) todos los objetos cuyo dueño es el usuario
> mencionado. Si el usuario mencionado aparece en algún ACL, el objeto no
> es borrado sino que únicamente el ACL se elimina.
Ok, es buena, pero en mi defensa voy a criticar el reassign, debería
reasignarlo para no tener que borrarlo y volver a crearlo.
>
>>>> Encontré que el valor esta en en la tabla pg_catalog.pg_default_acl, estoy
>>>> tratando de editarla a ver si puedo cambiarlo directamente.
>>> Modificar catálogos de sistema a mano es seguro de causar problemas
>>> después, si es que llegan a quedar referencias al rol en pg_shdepend.
>> Tal cual lo dijiste, cambie los registros de pg_shdepend tambien y ahi salio
>> el drop role sin problemas
>>
>> update pg_catalog.pg_shdepend set refobjid = 10 where refobjid =
>> 293894::oid;
> Quizás qué efectos va a tener esto cuando quieras borrar el esquema
> master ... es posible que no pase nada malo. ¿Se modificaron más
> registros, o solamente uno? ¿Si más de uno, sabes cuáles?
>
>> Entonces, solo me queda la duda, ¿hice mal al resolverlo via modificar las
>> tablas del sistema, pero cual seria la forma de hacerlo correctamente?
> IMO sí, hiciste mal -- toda manipulación directa de catálogos es
> potencialmente dañina. La forma correcta es DROP OWNED BY.
>
Coincido, con lo de no tocar las tablas del sistema, pero insisto con la
parte de la critica al reassing, la idea es reasignar todo y no andar
borrando y creando. Despues de todo, si el "drop role" hace el control,
no seria mucho mas pasarlo al reasign y que actue sobre los acls. no?
En fin, ya paso mi urgencia, y te super agradezco tu ayuda ayer!
Mil gracias again!
From | Date | Subject | |
---|---|---|---|
Next Message | motum hesa | 2017-12-19 15:48:39 | Error con logical replication |
Previous Message | Felipe Guzman | 2017-12-19 13:11:46 | Re: Extraer backup de la rama de directorios |