Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Delega e controllo della gestione delle password utente
Un amministratore di database (DBA) potrebbe voler delegare la gestione delle password utente. In alternativa, è possibile impedire agli utenti del database di modificare le password o di riconfigurare i vincoli delle password, ad esempio la durata della password. Per garantire che solo gli utenti del database scelti possano modificare le impostazioni della password, è possibile attivare la funzione di gestione delle password con restrizioni. Quando si attiva questa funzione, solo gli utenti del database a cui è stato concesso il ruolo rds_password
saranno in grado di gestire le password.
Nota
Per utilizzare la gestione delle password limitate, l'istanza database RDS per PostgreSQL deve eseguire PostgreSQL 10.6 o superiore.
Per impostazione predefinita, questa funzione è impostata su off
, come mostrato di seguito:
postgres=>
SHOW rds.restrict_password_commands;
rds.restrict_password_commands -------------------------------- off (1 row)
Per attivare questa funzione, utilizzare un gruppo di parametri personalizzato e modificare l'impostazione per rds.restrict_password_commands
su 1. Assicurarsi di riavviare l'istanza database RDS per PostgreSQL per implementare l'impostazione.
Con questa funzione attiva, i privilegi rds_password
sono obbligatori per i seguenti comandi SQL:
CREATE ROLE myrole WITH PASSWORD 'mypassword';
CREATE ROLE myrole WITH PASSWORD 'mypassword' VALID UNTIL '2023-01-01';
ALTER ROLE myrole WITH PASSWORD 'mypassword' VALID UNTIL '2023-01-01';
ALTER ROLE myrole WITH PASSWORD 'mypassword';
ALTER ROLE myrole VALID UNTIL '2023-01-01';
ALTER ROLE myrole RENAME TO myrole2;
La ridenominazione di un role (ALTER ROLE myrole RENAME TO newname
) è inoltre limitata se la password utilizza l'algoritmo di MD5 hashing.
Con questa funzionalità attiva, se si tenta di eseguire uno di questi comandi SQL senza le autorizzazioni di ruolo rds_password
, viene generato il seguente errore:
ERROR: must be a member of rds_password to alter passwords
Si consiglia di concedere i privilegi rds_password
solo a ruoli utilizzati esclusivamente per la gestione delle password. Se si concedono i privilegi rds_password
agli utenti del database sprovvisti dei privilegi rds_superuser
, è necessario concedere loro anche l'attributo CREATEROLE
.
Assicurarsi di verificare i requisiti della password come la scadenza e la complessità necessaria sul lato client. Se si utilizza la propria utilità lato client per le modifiche relative alla password, l'utilità deve essere membro di rds_password
e avere i privilegi CREATE ROLE
.