On Wed, Oct 03, 2001 at 02:17:15PM +0100, Pedro Fonseca wrote:
> Greetings!
>
> I have 2 PostgreSQL users created. I'd like access to a database restricted
> only to one of these users. As it is, in pg_hba.conf, any PostgreSQL user
> can connect locally to any database whatsoever:
>
> # TYPE DATABASE IP_ADDRESS MASK AUTHTYPE MAP
> local all trust
> host all 127.0.0.1 255.255.255.255 trust
>
> I have TCP/IP based connections disabled. What I would like would be
> something like:
>
> # TYPE DATABASE IP_ADDRESS MASK AUTHTYPE MAP
> local test_db ident test_db_map
>
> The problem is that the ident AUTHTYPE can only be used for TCP/IP
> connections. How do I tell PostgreSQL that I only want to allow
> postgres_user_1 to connect to test_db, and not every user? And how do I do
> this without using passwords and TCP/IP connections?
I think the solution is:
1- create a passwd file for this database (test_db_passwd, for example), with pg_passwd test_db_passwd, and put here
withpg_passwd the user's needed.
2- put this in your pg_hba.conf:
# TYPE DATABASE IP_ADDRESS MASK AUTHTYPE MAP
local test_db password test_db_passwd test_db_map
I'm very "newbie" in postgresql, but I think this can solve your problem.
Sorry for my bad english, if you speak spanish, you can write to me directly.
--
Manuel Trujillo manueltrujillo@dorna.es
Technical Engineer http://www.motograndprix.com
Dorna Sports S.L. +34 93 4702864