TL;DR : Après avoir créé un utilisateur dans Google Cloud Console, n'oubliez pas de RÉVOQUER 'cloudsqlsuperuser'@'%' FROM 'your-user '@'%'; si vous souhaitez uniquement que cet utilisateur accède à des schémas spécifiques.
La création d'un utilisateur MySQL via Google Cloud Console ajoute automatiquement le rôle cloudsqlsuperuser qui permet à l'utilisateur d'accéder à tout sur cette instance MySQL :
SHOW GRANTS FOR 'user-from-gcp-console'@'%'; +------------------------------------------------------------+ |Grants for user-from-gcp-console@% | +------------------------------------------------------------+ |GRANT USAGE ON *.* TO `user-from-gcp-console`@`%` | |GRANT `cloudsqlsuperuser`@`%` TO `user-from-gcp-console`@`%`| +------------------------------------------------------------+
Google le mentionne dans l'article À propos des utilisateurs de MySQL de sa base de connaissances.
Pour créer un utilisateur ayant accès à un seul schéma, vous devez soit créer l'utilisateur sans la console en exécutant quelque chose du genre :
CREATE USER 'your-user'@'%' IDENTIFIED WITH 'mysql_native_password' BY '<some-strong-password>'; GRANT ALL ON your-schema.* TO 'your-user'@'%';
Ou en créant l'utilisateur via la console mais ensuite en n'oubliant pas de supprimer le rôle cloudsqlsuperuser :
// Create a user via the Google Cloud Console REVOKE 'cloudsqlsuperuser'@'%' FROM 'your-user'@'%'; GRANT ALL ON your-schema.* TO 'your-user'@'%';
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!