Maison  >  Article  >  base de données  >  Comment vérifier les autorisations des utilisateurs dans MySQL

Comment vérifier les autorisations des utilisateurs dans MySQL

coldplay.xixi
coldplay.xixioriginal
2020-09-03 14:24:259591parcourir

Comment vérifier les autorisations des utilisateurs dans MySQL : 1. Vérifiez les autorisations d'un utilisateur MySQL, la syntaxe est [afficher les autorisations pour le nom d'utilisateur] 2. Utilisez la méthode d'autorisation de la base de données, le code est [GRANT 51d98571ff8e982ba706bd559639cd2c..].

Comment vérifier les autorisations des utilisateurs dans MySQL

[Recommandations d'apprentissage associées : tutoriel mysql(vidéo)]

Méthode MySQL pour afficher les autorisations des tables utilisateur :

(1) Afficher les autorisations d'un certain utilisateur MySQL :

show grants for 用户名

MariaDB [neutron]> show grants for root;

(2) Utilisez la commande GRANT pour créer un nouvel utilisateur, définir le mot de passe de l'utilisateur et augmenter les autorisations de l'utilisateur. Le format est le suivant :

mysql> GRANT <privileges> ON <what>  TO <user> [IDENTIFIED BY "<password>"]  [WITH GRANT OPTION];

Par exemple :

GRANT ALL PRIVILEGES ON neutron.* TO &#39;neutron&#39;@&#39;localhost&#39;   IDENTIFIED BY &#39;NEUTRON_DBPASS&#39;;
GRANT ALL PRIVILEGES ON neutron.* TO &#39;neutron&#39;@&#39;%&#39;   IDENTIFIED BY &#39;NEUTRON_DBPASS&#39;;
  • neutron.* : Indique toutes les tables de la base de données neutrons. La base de données neutrons doit être créée. avant autorisation. Si *.* est utilisé pour représenter toutes les tables de toutes les bibliothèques

  •  'neutron'@'localhost' : il représente le nom d'utilisateur créé neutron, @ suivi de représente le client autorisé à accéder aux données , 'localhost' représente la machine locale, '%' signifie tous les hôtes

  • [IDENTIFIED BY "cb1ebc435675187bdcfb539b370c2e37"] : Définissez le mot de passe de l'utilisateur neutron

(3) Autorisation de la base de données La méthode

GRANT <privileges> ON <what>  TO <user> [IDENTIFIED BY "<password>"]  [WITH GRANT OPTION];

6edd86b17b9eea41baa88c90cbdefa74 est une liste séparée par des virgules des autorisations utilisateur MySQL que vous souhaitez accorder.

Les autorisations que vous pouvez spécifier peuvent être divisées en trois types :

1) Autorisations de base de données/table de données/colonne de données :

  • Modifier : Modifier Tableaux de données existants (tels que l'ajout/suppression de colonnes) et index.

  • Créer : créer une nouvelle base de données ou une nouvelle table de données.

  • Supprimer : Supprimer les enregistrements de la table.

  • Drop : Supprimer une table de données ou une base de données.

  • INDEX : Créer ou supprimer un index.

  • Insérer : ajouter des enregistrements à la table.

  • Sélectionner : Afficher/rechercher les enregistrements de la table.

  • Mise à jour : Modifier les enregistrements existants dans le tableau.

mysql>grant select,insert,delete,create,drop  on *.* (或nova.*其它库或表) to &#39;用户名&#39;@&#39;localhost&#39;  identified by ‘密码’;

2) Gestion globale des permissions des utilisateurs MySQL :

  • fichier : Lire et écrire des fichiers sur le serveur MySQL.

  • PROCESSUS : Afficher ou supprimer les threads de service appartenant à d'autres utilisateurs.

  • RELOAD : recharger la liste de contrôle d'accès, actualiser le journal, etc.

  • SHUTDOWN : arrêtez le service MySQL.

3) Autorisations spéciales :

  • TOUS : Autorisé à faire n'importe quoi (comme root).

  • UTILISATION : Seule la connexion est autorisée - rien d'autre n'est autorisé.

Pendant le développement et les applications pratiques, les utilisateurs ne doivent pas uniquement utiliser l'utilisateur root pour se connecter à la base de données. Bien qu'il soit pratique d'utiliser l'utilisateur root pour les tests, cela entraînera des risques de sécurité majeurs. au système et n’est pas propice à l’amélioration de la technologie de gestion.

Par exemple, un utilisateur qui insère uniquement des données ne doit pas être autorisé à supprimer des données. La gestion des utilisateurs MySql est implémentée via la table User. Il existe deux méthodes courantes pour ajouter de nouveaux utilisateurs. La première consiste à insérer les lignes de données correspondantes dans la table User et à définir les autorisations correspondantes. Commande GRANT. L'usage courant de GRANT est le suivant :

grant all on mydb.* to NewUserName@HostName identified by “password”;  
grant usage on *.* to NewUserName@HostName identified by “password”;  
grant select,insert,update on mydb.* to NewUserName@HostName identified by “password”;  
grant update,delete on mydb.TestTable to NewUserName@HostName identified by “password”;

Si vous souhaitez donner à cet utilisateur la possibilité de gérer ses permissions sur l'objet correspondant, vous pouvez ajouter l'option WITH GRANT OPTION après GRANT.

Pour les utilisateurs ajoutés par insertion dans la table Utilisateur, le champ Mot de passe doit être mis à jour et crypté à l'aide de la fonction PASSWORD pour empêcher des personnes sans scrupules de jeter un œil au mot de passe.

Les utilisateurs qui ne sont plus utilisés doivent être effacés et les utilisateurs dont les autorisations ont dépassé la limite doivent être rapidement récupérés. Les autorisations peuvent être récupérées en mettant à jour les champs correspondants dans la table Utilisateur ou en utilisant REVOKE. opération.

Si vous souhaitez en savoir plus sur la programmation, faites attention à la rubrique Formation php !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn