Обсуждение: C API - Authentication Question
I'm very impressed so far with what I've seen of PostgreSQL,
however I have a nagging question which is absolutely vital for the
project I have in mind... How do I tell PostgreSQL what
username:password to use to authenticate myself to the database?
I'm going to have clients(Linux) on changing IPs that must be
authenicated with user:pw, not simply by host, I understand how to
change the config file to allow connections but I can't find sufficient
documentation to tell me how to give a username:pw pair...
Thank you in advance...
--David
secret <secret@kearneydev.com> writes:
> ... How do I tell PostgreSQL what
> username:password to use to authenticate myself to the database?
PQsetdbLogin() or PQconnectdb(). Alternatively you can pass them in
as values of environment variables PGUSER and PGPASSWORD. I don't
much like keeping a password in an environment variable on security
grounds, but this would work if you want to use some client program
that offers no convenient way to enter id/password.
It looks like the documentation is seriously lacking in this area:
the current libpq man page doesn't describe PQconnectdb() at all,
and the possibility to pass in a password via PGPASSWORD isn't mentioned
there either. You'll get along with PostgreSQL a lot better if you
don't mind looking at code when you can't find something in the docs :-(
BTW you should also consider Kerberos authentication --- much more
secure than passing cleartext or trivially-encrypted passwords around
the net.
regards, tom lane
> You'll get along with PostgreSQL a lot better if you
> don't mind looking at code when you can't find something in the docs
> :-(
Or, even better, by updating the docs when you discover something is
missing! That'll help the next person... (hint, hint *grin*)
- Tom