Re: Fwd: Restarting with pg_ctl, users, and passwords. - Mailing list pgsql-general

From aklaver@comcast.net (Adrian Klaver)
Subject Re: Fwd: Restarting with pg_ctl, users, and passwords.
Date
Msg-id 082020082056.11954.48AC84EC0008C6E200002EB222007610649D0A900E04050E@comcast.net
Whole thread Raw
In response to Fwd: Restarting with pg_ctl, users, and passwords.  ("Matthew Pettis" <matthew.pettis@gmail.com>)
List pgsql-general
-------------- Original message ----------------------
From: "Matthew Pettis" <matthew.pettis@gmail.com>
> Below is the pg_hba.conf file exerpt (minus a lot of comments)... the
> line starting '#host' was my attempt at opening up the db as wide as
> possible just to see if i could get in somehow...
>
>
> --- pg_hba.conf --------------------------------------
> # Database administrative login by UNIX sockets
> local   all         postgres                          ident sameuser

The line above is the reason you have to specify localhost in your connection string.
From:
http://www.postgresql.org/docs/8.3/interactive/auth-pg-hba-conf.html
Each record specifies a connection type, a client IP address range (if relevant for the connection type), a database
name,a user name, and the authentication method to be used for connections matching these parameters. The first record
witha matching connection type, client address, requested database, and user name is used to perform authentication.
Thereis no "fall-through" or "backup": if one record is chosen and the authentication fails, subsequent records are not
considered.If no record matches, access is denied. 

Unless you are logged in as the OS user postgres and connecting as such the local line will fail and the connection
willbe aborted. To skip over the local line and get the host line you have  specify localhost in your connection
string.

>
> # TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
>
> # "local" is for Unix domain socket connections only
> local   all         all                               ident sameuser
> # IPv4 local connections:
> host    all         all         127.0.0.1/32          md5
> #host    all         all         127.0.0.1/32          trust
> # IPv6 local connections:
> host    all         all         ::1/128               md5
> --------------------------------------------------------------------------------
> ----------
>
> On Wed, Aug 20, 2008 at 3:32 PM, Adrian Klaver <aklaver@comcast.net> wrote:
> > -------------- Original message ----------------------
> > From: "Matthew Pettis" <matthew.pettis@gmail.com>
> >> SOLVED.
> >>
> >> Yep, Restart was done.
> >>
> >> The issue turned out not to be with Postgresql config, but the app
> >> config.  In the app, I define a connection string, which has user,
> >> password, and databasename.  When I had this same configuration on
> >> WinXP, I did not need to specify a fourth parameter, the host, which
> >> explicitly told the app to use host=localhost.  When I added the host
> >> param to the connection string, it all went through.
> >>
> >> On the bright side, I learned a lot about how to restart the service
> >> and the config files...
> >>
> >> Curious: Any ideas why I can leave the host off my connection string
> >> in WinXP, but not Linux?  It it an idiosyncracy of my app, or of
> >> PostgreSQL?
> >>
> >> Thanks for all the help,
> >> Matt
> >>
> > Is the Linux app running on the Postgres server machine?
> > If so I hazard a guess that you have a line like:
> >
> > local   all         all                               trust
> >
> > before your host line in pg_hba.
> >
> > The app connecting from the same machine would try the local socket (local)
> before the localhost(tcp/ip), unless localhost was specified in the connection
> string.
> >
> >
> >
> > --
> > Adrian Klaver
> > aklaver@comcast.net
> >
> >
> >
>
>



--
Adrian Klaver
aklaver@comcast.net


pgsql-general by date:

Previous
From: aklaver@comcast.net (Adrian Klaver)
Date:
Subject: Re: Fwd: Restarting with pg_ctl, users, and passwords.
Next
From: "Matthew Pettis"
Date:
Subject: Re: Fwd: Restarting with pg_ctl, users, and passwords.