Oltre agli utenti e ai ruoli predefiniti forniti con PostgreSQL, puoi creare altri utenti o ruoli PostgreSQL. Questi utenti hanno lo stesso insieme di privilegi dell'utente postgres: CREATE ROLE, CREATEDB e LOGIN. Per ulteriori informazioni su questi
privilegi, consulta CREATE ROLE.
Puoi modificare i privilegi di qualsiasi utente utilizzando il ALTER ROLE comando. Se crei un nuovo utente con il client psql, puoi scegliere di associarlo a un ruolo diverso o assegnare privilegi diversi.
Prima di iniziare
Per utilizzare i comandi PostgreSQL per gestire gli utenti su un cluster, devi disporre di:
- Accesso al client
psql - Accesso all'utente del database
postgreso a un altro utente con i privilegi amministrativi appropriati
Creare un utente del database
Per creare un utente del database che esegue l'autenticazione direttamente con il database utilizzando un nome utente e una password, nota anche come autenticazione integrata, utilizza il seguente comando:
CREATE USER USERNAME WITH PASSWORD 'PASSWORD';
Sostituisci quanto segue:
USERNAME: il nome utente del ruolo utente.PASSWORD: la nuova password da assegnare al ruolo utente.
Per ulteriori informazioni su come creare e definire gli utenti del database, consulta CREATE
USER.
Dopo aver creato un utente o un ruolo, puoi modificarne i privilegi utilizzando il comando ALTER
ROLE
nel client psql.
Concedere ruoli a un utente del database
Per concedere ruoli a un utente del database, utilizza il seguente comando:
GRANT ROLE to USERNAME;
Sostituisci quanto segue:
ROLE: il ruolo da concedere all'utente del database.PASSWORD: la nuova password da assegnare al ruolo utente.
Per concedere a un utente i privilegi di superutente, concedigli il ruolo alloydbsuperuser.
Modificare la password di un utente del database
Per impostare una nuova password per un utente del database PostgreSQL standard, utilizza il seguente comando:
ALTER USER USERNAME WITH PASSWORD 'PASSWORD';
Sostituisci quanto segue:
USERNAME: il nome utente dell'utente del database.PASSWORD: la nuova password da assegnare al ruolo utente.
Per ulteriori informazioni sulla modifica della password di un utente, consulta ALTER ROLE.
Revocare un ruolo da un utente del database
Per revocare un privilegio concesso in precedenza a uno o più ruoli o per revocare l' appartenenza di un utente a un ruolo, utilizza il seguente comando:
REVOKE ROLE FROM USERNAME;
Per rimuovere i privilegi di superutente di un utente, revoca il alloydbsuperuser ruolo
da quell'utente.
Visualizzare un elenco di utenti del database
Per visualizzare una tabella di tutti gli utenti del database e delle loro appartenenze ai gruppi, utilizza il seguente comando:
\du
Eliminare un utente del database
Prima di eliminare un utente, devi eliminare tutti gli oggetti di cui è proprietario o riassegnare la proprietà e revocare tutti i privilegi concessi al ruolo su altri oggetti.
Per eliminare un utente, utilizza il seguente comando:
DROP ROLE USERNAME;