Si vous avez déjà développé un site Web ou une application serveur, vous avez déjà été confronté aux bases de données MySQL. Les bases de données MySQL permettent de stocker les données relatives à votre site internet . Elles sont souvent utilisées afin de stocker les informations de vos clients tel que l’identifiant, le mot de passe ou bien encore, l’adresse email.
MySQL est l’un des systèmes de gestion de base de données. Il s’agit certainement du système le plus populaire en raison de sa prise en main facile.
Dans cet article, nous allons apprendre à créer un utilisateur MySQL. Nous allons aussi apprendre à leur accorder des privilèges. Cet article utilisera principalement des lignes de commandes.
Créer et accorder des privilèges à un utilisateur MySQL
Lorsque vous allez commencer à utiliser des bases de données MySQL, vous allez obtenir un nom d’utilisateur et un mot de passe. Ces informations vous accorde un accès root à vos bases de données. L’utilisateur root a un accès complet à toutes les bases de données, mais aussi aux différentes tables qui la compose.
Cependant, il peut arriver que vous soyez obliger de donner accès à la base de données à une tierce personne sans lui accorder un contrôle total. En effet, les entreprises qui embauche un développeur Web afin de mettre à jour la base de données donnent souvent un accès non root à la base de données.
Créer un nouvel utilisateur est assez simple dans MySQL. Nous allons vous expliquer comment créer un utilisateur MySQL et comment accorder tous les privilèges à votre base de données. Dans la pratique, il est vivement conseillé de ne pas donner les pleins pouvoirs à votre base de données. Afin de créer un utilisateur MySQL, procédez comme suit:
- Accédez à la ligne de commande et entrez sur le serveur MySQL en tapant la commande suivante:
- Exécutez la commande suivante : (mettre IDENTIFIED et non IDENTIFY)
Sur cette commande, « user » correspond au nom que vous allez donner au nouvel utilisateur. « 12345 » correspond au mot de passe.
- Le fait de créer uniquement l’utilisateur ne suffit pas. En effet, il vous faut lui accorder des privilèges. Afin d’accorder à votre utilisateur, tous les privilèges, exécuter la commande suivante:
- Afin que les changements soient pris en compte, appliquez la commande suivante:
Vous venez de créer votre utilisateur MySQL et de lui accorder les même privilèges que root.
Accorder des privilèges spécifiques à votre utilisateur MySQL
Comme nous l’avons vu précédemment, il vaut mieux ne pas accorder tous les privilèges à un utilisateur non root. En effet, il est préférable de donner différents accès à différents types d’utilisateurs. la commande permettant d’effectuer cela est la suivante:
Il suffit de changer la valeur « Type permission » par les permissions que vous désirez accorder à votre utilisateur. Vous devrez également spécifier le nom de la base de données et le nom de la table. MySQL dispose de différents types de permissions qu’il vous est possible d’accorder. Certaines sont décrites ci-dessous:
- CREATE: Permet à l’utilisateur de créer des bases de données
- SELECT: Permet à l’utilisateur de récupérer des données
- INSERT: Permet à l’utilisateur d’ajouter de nouvelles entrées
- UPDATE: Permet à l’utilisateur de modifier des données existantes
- DELETE: Permet à l’utilisateur de supprimer des entrées
- DROP: Permet à l’utilisateur de supprimer des bases de données
Afin de pouvoir accorder l’un de ces privilèges, il vous suffit de remplacer « Type permission » par le mot clé approprié (CREATE, SELECT, INSERT). Si vous désirez accorder plusieurs privilèges différents à l’utilisateur MySQL, séparer les privilèges par une virgule comme dans l’exemple ci-dessous:
Dans certains cas, vous serez obligé de révoquer certains privilèges d’un utilisateur. Utilisez pour cela la commande suivante:
Si vous désirez révoquer tous les privilèges d’un utilisateur, la commande est la suivante:
Il vous est possible de supprimer entièrement un utilisateur existant en utilisant la commande suivante:
Afin de pouvoir exécuter toutes ces commandes, il est nécessaire d’avoir un accès root. De plus, assurez-vous d’utiliser la commande « FLUSH PRIVILEGES » après chaque modification apportée.
Conclusion
Bravo d’être arrivé jusqu’ici !
Dans cet article, vous avez appris a créer et à accorder des privilèges aux nouveaux utilisateurs MySQL. L’octroi de privilèges est apparenté à une corvée lors du développement d’une application Web. Cependant, cette mesure est essentielle afin de maintenir un bon niveau de sécurité lors de la gestion et de la maintenance de votre base de données MySQL.