[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: account utente



On lun, 2008-03-17 at 14:32 +0100, Paolo Sala wrote:
> Alessandro Pellizzari scrisse in data 17/03/2008 14:13:
> > Devi usare "su - postgres" da root per diventare postgres.

> Grazie mille Alessandro... ma anche se avessi avuto /bin/false allora
> avrei potuto diventare postgres tramite "su"; mentre invece se non
> avesse /bin/bash allora postgres non potrebbe agire? 

L'utente postgres ha un suo ambiente, che include i PATH ai comandi di
amministrazione del DB. Se metti /bin/false in passwd puoi fare "su
postgres" e mantenere la shell di root e il suo ambiente, ma se fai "su
- postgres" per ereditare l'ambiente, usi la shell di postgres
(/bin/false), che esce subito, quindi fai logout automatico e ti ritrovi
come root.

O almeno lo faceva l'ultima volta che ho provato :)

> E come mai mysql,
> ad esempio, ha /bin/false?

Perche` MySQL ha un sistema di autenticazioni meno sofisticato di quello
di PostgreSQL, quindi fai tutto da root, senza bisogno di diventare
utente mysql.

Puoi configurare PostgreSQL per ignorare l'utente di sistema smanettando
su pg_hba.conf e impostando tutti gli utenti come interni al DB (come fa
MySQL), ma devi prima assegnare una password all'utente postgres
(interno) e metterla ad ogni comando che dai da linea di comando. E
corri il rischio che se cambi per sbaglio la password interna di
postgres non riesci piu` ad accedere al DB.
Con la config di default puoi usare root per cambiarla all'utente di
sistema e PostgreSQL accetta l'utente.

E` un po' complicato da spiegare in due righe, ma il concetto e`
quello. :)

Bye.

-- 
Alessandro Pellizzari



Reply to: