Zmena hesla v PostgreSQL nejde
Karel Zak - Zakkr
zakkr na zf.jcu.cz
Úterý Listopad 30 14:33:02 CET 1999
On Tue, 30 Nov 1999, Borek Lupomesky wrote:
> On 30 Nov 1999, Horak Daniel wrote:
>
> > > test=> alter user palikova with password nnn ;
> > > ERROR: You must have Postgres superuser privilege to do a
> > > COPY directly
> > > to or from a file. Anyone can COPY to stdout or from stdin.
> > > Psql's \copy
> > > command also works for anyone.
> > >
> > > Prislusna prava k pg_shadow jsem samozrejme GRANTnul. Co s tim?
:-) To asi staci. Trocha citace ze zdrojaku PgSQL:
/*---------------------------------------------------------------------
* UpdatePgPwdFile
*
* copy the modified contents of pg_shadow to a file used by the postmaster
* for user authentication. The file is stored as $PGDATA/pg_pwd.
Proste to pouzica COPY a to musi bezet se superuserem pokud nepise na
klientovo stdin/stdout. Takze to muzete zase GRANTnout tak jak to bylo
(stejne je to silenstvi).
> >
> > Ja to resim tak, ze menim heslo jako pgsql superuser
>
> Tak na to bych prisel take, ale ja chci, aby si uzivatele mohli zmenit
> hesla sami.
ALTER/CREATE USER zapisuje do pg_shadow a tam ma prava jen superuser. Pokud
to chcete obejit tak musite vytvorit RULE (nic jineho mne nenapada).
Vlastnosti RULEs je, ze bezi s privilegii toho kdo je vytvoril, takze i
bezny uzivatel by mel nejak moznost menit pg_shadow. Pokud todle udelate tak
se ozvete, zajimalo by me to, ono to neni tak jednoduche...
Jinou moznosti (nezkousel jsem) je mit hesla mimo DB tedy ve filu (viz.
/etc/postgresql/pg_hda.conf). A pak to menit pomoci pg_passwd, na normalni
prikazove radce, to ale napr. v PHP aplikaci je na nic.
A nebo (a to je nejlepsi moznost) prejit na autentifikaci via. kerberos. Pak
hesla opet nejsou v DB (take jsem nezkousel).
Asi nejlepsi by bylo prehodnotit tento pozadavek. Nejsem si jist jak je
to na jinych SQL (?), ale asi to take neni zadna slava v meneni hesel primo
v SQL. PgSQL na alespon moznost mit externi passwd nebo kerbera atd.
Karel
----------------------------------------------------------------------
Karel Zak <zakkr na zf.jcu.cz> http://home.zf.jcu.cz/~zakkr/
Docs: http://docs.linux.cz (big docs archive)
Kim Project: http://home.zf.jcu.cz/~zakkr/kim/ (process manager)
FTP: ftp://ftp2.zf.jcu.cz/users/zakkr/ (C/ncurses/PgSQL)
-----------------------------------------------------------------------
Další informace o konferenci Databases