Assumpte RE: Re: Assumpte RE: Re: Assumpte RE: Re: [Pgsql-ayuda] listado de bases de datos
ginjol@correu.amicsdelgot.com
ginjol@correu.amicsdelgot.com
Fri, 5 Dec 2003 19:17:01 +0100
Curioso, algo debo estar haciendo mal. Si hago lo que indicas=
abajo funciona, pero si entro en el psql de esta forma "psql -U=
martinez" me deja hacer la consulta y ver las tablas, pero si lo=
hago con el "\c -u martinez" no me las deja ver tal como se=
indica en el ejemplo.
Gracias de nuevo.
Un saludo.
[Por favor no envien correo personal SIN copia a la lista]
Pues sin duda no nos estas diciendo toda la verdad o algo estas
haciendo mal. Aqui todo funciona como deber=EDa:
test=3D# select usecreatedb, usesuper, usecatupd from pg_user where=
usename =3D 'foo';
usecreatedb | usesuper | usecatupd
-------------+----------+-----------
f | f | f
(1 fila)
test=3D# revoke ALL on pg_database FROM PUBLIC;
REVOKE
test=3D# revoke ALL on pg_class FROM PUBLIC;
REVOKE
test=3D# \c - foo
Ahora est=E1 conectado como el usuario "foo".
test=3D> \d
ERROR: permiso denegado a la relaci=F3n pg_class
test=3D> select * from pg_database;
ERROR: permiso denegado a la relaci=F3n pg_database
test=3D>
Saludos,
Manuel.
<ginjol@correu.amicsdelgot.com> writes:
> Revisando tengo:
> select usesuper, usecatupd from pg_shadow where usename =3D=
'martin';
>
> usesuper | usecatupd
> ----------+-----------
> f | f
> (1 row)
>
> con \z pg_catalog.pg_class
> Access privileges for database "postgres"
> Table | Access privileges
> -------+-------------------
> (0 rows)
>
> con \z pg_catalog.pg_database
> Access privileges for database "postgres"
> Table | Access privileges
> -------+-------------------
> (0 rows)
>
> Aunque haga un revoke ALL on pg_database FROM PUBLIC; sigue=
apareciendo igual que arriba,
>
> y desde el usuario 'martin' se pueden consultar estas tablas.
>
> Creo que ya queda menos :)
>
> Gracias mil
>
> ---------------------------------
>
>
> Revisa que el usuario que no quieres que vea las cosas no sea=
un
> superusuario, lo puedes hacer con algo como
>
> select usesuper, usecatupd
> from pg_shadow
> where usename =3D 'el nombre del usuario aqui';
>
> y revisa tambi=E9n cuales son los permisos de pg_class y=
pg_database,
> desde psql dale
>
> \z pg_catalog.pg_class
> \z pg_catalog.pg_database
>
> Y nos cuentas.
>
> Saludos,
> Manuel.