CREATE USER dans MariaDB : comment créer de nouveaux comptes utilisateurs ?
Avec CREATE USER
, de nouveaux comptes peuvent être créés dans MariaDB. Si vous souhaitez ajouter un nouvel utilisateur, vous devez disposer de droits d’administration. Vous définissez les droits d’utilisateur pour le compte avec GRANT
.
CREATE USER
dans MariaDB : les différentes étapes
L’instruction CREATE USER
est utilisée dans MariaDB pour la création d’un nouvel utilisateur. Nous vous montrons ici les différentes étapes de la procédure.
Étape 1 : se connecter à MariaDB
Le nouvel utilisateur est créé directement dans MariaDB. Pour établir une connexion, utilisez la ligne de commande de MariaDB et connectez-vous avec votre nom d’utilisateur et mot de passe. Il est important que le compte concerné dispose des droits d’administrateur.
Étape 2 : appliquer CREATE USER
Utilisez maintenant CREATE USER
pour créer un nouvel utilisateur dans MariaDB. La syntaxe de l’instruction correspondante est la suivante :
CREATE USER nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sqlAu lieu du caractère de remplacement « nom_utilisateur », insérez le nom d’utilisateur souhaité. Celui-ci doit être unique dans l’environnement du serveur. Remplacez « nom_hôte » par le nom d’hôte correspondant ou l’adresse IP de votre serveur et en dernière position, le mot de passe sécurisé pour ce compte.
Étape 3 : définir les droits de l’utilisateur
Dans l’étape suivante, vous dotez le nouvel utilisateur des droits d’utilisateur nécessaires. Ceux-ci définissent ce qu’un utilisateur peut faire sur le système. Vous trouverez ci-dessous une explication plus détaillée sur les droits d’utilisateur. L’instruction GRANT
est utilisée pour l’attribution des droits. Voici sa syntaxe :
GRANT droits_utilisateur ON base_de_données.table TO nom_utilisateur@nom_hôte;
sqlAprès l’instruction GRANT
, vous listez les droits que le compte correspondant doit recevoir. Ceux-ci sont séparés par des virgules. « base_de_données.table » peut par exemple concerner une base de données particulière ou des tables individuelles, ou s’appliquer à l’ensemble du système avec *.*
. Au lieu du caractère générique « nom_utilisateur@nom_hôte », utilisez le nom d’utilisateur et le nom d’hôte du nouvel utilisateur.
Étape 4 : établir les droits de l’utilisateur
Après avoir attribué les droits d’utilisateur, utilisez l’instruction FLUSH PRIVILEGES
pour les appliquer directement. L’instruction ressemble à ceci :
FLUSH PRIVILEGES;
sqlÉtape 5 : se connecter
Le nouvel utilisateur peut maintenant se connecter au serveur MariaDB. Pour cela, il n’a besoin que de son nom d’utilisateur et du mot de passe enregistré. Il dispose maintenant des droits d’utilisateur définis. Pour supprimer un compte en tant qu’administrateur, vous pouvez utiliser DROP USER
.
Managed Kubernetes est la plateforme idéale pour des applications de conteneurs performantes et hautement évolutives.
Attribuer des droits d’utilisateur
Les droits d’utilisateur (ou privileges en anglais) déterminent les actions qui peuvent être effectuées avec un compte dans MariaDB. Alors que l’utilisateur admin dispose de tous les droits, les droits d’utilisateur pour les autres comptes doivent être limités, sinon des problèmes de sécurité peuvent survenir. Les droits d’utilisateur les plus courants sont les suivants :
ALL
: donne au compte tous les droits saufGRANT OPTION
.GRANT OPTION
: donne au compte les droits de votre compte.SELECT
: le compte peut accéder aux bases de données ou aux tables.INSERT
: le compte peut ajouter de nouvelles lignes dans une table.UPDATE
: les lignes peuvent être actualisées.DELETE
: les lignes peuvent être supprimées.CREATE
: de nouvelles tables ou bases de données peuvent être créées.ALTER
: peut modifier la structure d’une table.DROP
: peut supprimer des tables ou des bases de données.
Si vous souhaitez modifier ultérieurement les droits d’utilisateur, utilisez l’instruction REVOKE
. Pour avoir un aperçu des droits accordés, utilisez la commande SHOW GRANTS FOR
.
OR REPLACE
et IF NOT EXISTS
Si vous voulez créer un nouveau compte dans MariaDB avec CREATE USER
et qu’il existe déjà un utilisateur avec le même nom, vous recevez un message d’erreur. Pour contourner ce problème, le système de gestion de base de données vous propose deux options : OR REPLACE
et IF NOT EXISTS
.
La syntaxe de OR REPLACE
se présente comme suit :
CREATE OR REPLACE USER nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sqlIl s’agit d’une forme abrégée de ce code :
DROP USER IF EXISTS nom_utilisateur@nom_hôte;
CREATE USER nom_d'utilisateur@nom_d'hôte IDENTIFIED BY 'mot_de_passe';
sqlLe système vérifie donc s’il existe déjà un utilisateur avec le nom correspondant. Si c’est le cas, l’ancien compte est remplacé par le nouveau. S’il n’y a pas encore d’utilisateur correspondant, celui-ci est créé.
La syntaxe de IF NOT EXISTS
est la suivante :
CREATE USER IF NOT EXISTS nom_utilisateur@nom_hôte IDENTIFIED BY 'mot_de_passe';
sqlIci aussi, le système vérifie s’il existe déjà un compte avec le nom correspondant. Si c’est le cas, vous recevez un message d’avertissement et aucun compte n’est écrasé. S’il n’existe pas encore d’utilisateur de ce type, le système crée un nouvel utilisateur.
Dans notre Digital Guide, vous en apprendrez encore plus sur le système de gestion de base de données open source. Nous vous expliquons notamment comment fonctionnent les commandes MariaDB CREATE DATABASE
et MariaDB CREATE TABLE
, quelles sont les différences et similitudes entre MariaDB et MySQL et comment procéder à l’installation de MariaDB.