Google CloudSQL MYSQL 8.0 – Creazione utenti con permessi per singolo Database

G

Creare utenti per il servizio di database CLOUD SQL di Google per MYSQL 8 è diverso rispetto a creare un utente tramite un client MYSQL classico (es terminale con mysql-client, adminer.php ,phpmyadmin,…).

Il processo di creazione classico di un utente tramite un client mysql prevede che alla creazione di un nuovo utente sia necessario specificare quali pemessi assegnare a questo utente, e su quali database applicarli.

Se invece create un utente mysql tramite la consolle google cloud su un istanza google cloud sql con mysql 8, di default l’utente creato riceverà il ruolo di “superuser”. Questo significa che ogni utente creato manualmente tramite l’interfaccia di google cloud potrà accedere a qualsiasi database ed effettuare praticamente tutte le operazioni su qualsiasi dato presente all’interno, compreso la manipolazione di altri utenti.

Per creare correttamente un utente mysql usando il servizio google cloud sql per mysql 8 la procedura corretta è quella di utilizzare un client mysql.

Collegatevi al database con le credenziali di root (utente principale creato durante il setup dell’istanza), dopodchè eseguite i comandi di creazione specificando i permessi adeguati esattamente come fareste per creare un utente su un database mysql classico.

ATTENZIONE se avete già creato un utente tramite la console google cloud, per semplicità vi consiglio di cancellarlo e ricrearlo con i permessi appropriati:

SOLUZIONE

DROP USER IF EXISTS ‘user’@’%’;

CREATE USER ‘user’@’%’ IDENTIFIED BY ‘password’;

GRANT ALL PRIVILEGES ON database.* TO ‘user’@’%’;

 

About the author