AVVISO :trust
significa esattamente questo. Chiunque possa connettersi al server PostgreSQL può controllarlo. Se imposti trust
modalità che consente ai superutenti come l'utente postgres
(o all
utenti) per connettersi, ottengono il controllo totale del tuo PostgreSQL e probabilmente possono anche eseguire comandi di shell. Di solito dovresti usarlo solo per cambiare la password quindi ripristina la configurazione alla modalità di autenticazione che stavi utilizzando prima.
Se hai utilizzato uno script di installazione automatica, la password sarà nello script o nel file di configurazione associato.
Altrimenti, trattalo come se avessi perso/dimenticato la password invece di non conoscerla mai:
- Modifica
pg_hba.conf
, impostando la modalità di autenticazione sutrust
invece del predefinitomd5
- Nel pannello di controllo Servizi, riavvia il servizio PostgreSQL
- Connettiti con
psql
o PgAdmin o altro ALTER USER postgres PASSWORD 'mynewpassword';
- Modifica
pg_hba.conf
di nuovo e reimposta la modalità di autenticazione sumd5
- Riavvia PostgreSQL di nuovo
pg_hba.conf
è nella tua directory dei dati. Per impostazione predefinita sarà %PROGRAMFILES%\PostgreSQL\9.3\data
.
Per modificarlo dovrai utilizzare la scheda di sicurezza per concederti i permessi di lettura/scrittura (tramite un prompt UAC). Ciò potrebbe richiedere di impostarti come proprietario del file.
Sui sistemi Unix è più sicuro anteporre a
local all all peer
riga a pg_hba.conf
e poi sudo -u postgres psql
(supponendo che il tuo server PostgreSQL funzioni come utente postgres
) per ottenere un psql
interattivo sessione senza utilizzare una password. In questo modo non devi usare trust
.