From: Domingo Alvarez Duarte <mingodad@gmail.com>
To: pgsql-admin@postgresql.org
Subject: Extended security/restriction to any role with login access
Date: Thu, 26 Jun 2008 19:04:54 +0200
Message-ID: <c2f38c3e0806261004k75bc16f1j9d1e9047320f5d1f@mail.gmail.com> (raw)
Hello !
I'm trying to use postgresql in an application that by design will give
access to users to a subset of the database.
For example for customers access to products_view (wich will only show
public offers), orders (only their own orders).
I'll provide an application as user interface for the data.
For that I'll give for each of then a role in the database that will belong
to a group role customers_group.
The customers_group only has access to the views/functions that I'll
specify.
Till here no problem postgresql do that pretty well.
My concern is once I give login access to any user, even without grant
him/her any access to any database, he/she can using an application like
pgadmin3 view all databases/roles/functions/table-definitions on my server.
And that was not my intention.
Removing all from public doesn't work : revoke all on schema public from
public;
What I think would be the server behavior when I create a role with login
access an say that I only grant access to one view like this:
create role oneuser login;
grant select on somedatabase.someview to oneuser;
In that case when the user login the only thing he/she sees is the view
database.someview, even when they use pgadmin3 to connect.
Actually he/she can see with pgadmin3 : all databases, all roles and it's
right access, all tables on every database (no access to data), all
functions, all triggers, all table definitions.
The above isn't the intention to a user with a restrict view of the
database.
Can I achieve it actually, if not how hard could be to implement that in the
official release ?
Thanks in advance for any feedback/ideas !
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: mingodad@gmail.com
Subject: Re: Extended security/restriction to any role with login access
In-Reply-To: <c2f38c3e0806261004k75bc16f1j9d1e9047320f5d1f@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox