Ho un'istanza AWS EC2 che si collega a un'istanza RDS (Postgresql). Quando ho creato l'istanza RDS, le ho detto che il nome utente della radice DB era: my_user1
e la password era password1
. Ora sto cercando di creare un ruolo e un superutente. Ma fallisce:
$ createuser -P -d -s -e my_user2 --host myhost.com -U my_user1
Enter password for new role: XXXYYYZZZ
Enter it again: XXXYYYZZZ
Password: password1
CREATE ROLE my_user2 PASSWORD 'md5999999c0101a1d64afd57575e06f999c' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
createuser: creation of new role failed: ERROR: must be superuser to create superusers
$
Quando ripeto il comando senza la -s
bandiera, funziona:
$ createuser -P -d -e my_user2 --host myhost.com -U my_user1
Enter password for new role:
Enter it again:
Password:
CREATE ROLE my_user2 PASSWORD 'md5999999c0101a1d64afd57575e06f888c' NOSUPERUSER CREATEDB NOCREATEROLE INHERIT LOGIN;
$
Quindi, chiaramente, my_user1
non ha i permessi per creare un superutente. Ma questo è l'utente a cui ho detto che RDS era il mio utente amministratore! Se my_user1
non dispone delle autorizzazioni per creare un superutente, chi lo fa? E come posso ottenere il loro nome utente / password da AWS?