5.5 Gestion des comptes utilisateurs de MySQL
5 Administration du serveur
Manuel de Référence MySQL 4.1 : Version Française
->Nom d'utilisateurs MySQL et mots de passe . Ajouter de nouveaux utilisateurs à MySQL . Supprimer un compte utilisateur de MySQL . Limiter les ressources utilisateurs . Configurer les mots de passe . Garder vos mots de passe en lieu sûr . Utilisation des connexions sécurisées
|
5.5.1 Nom d'utilisateurs MySQL et mots de passe
Il y a de nombreuses différences entre les utilisations des noms et
mots de passe sous MySQL, et celles qui sont faites sous Unix ou
Windows :
-
Les noms d'utilisateurs, tels qu'utilisés pour le processus d'identification
sous MySQL, n'ont rien à voir avec les noms d'utilisateurs Unix ou Windows.
La plupart des clients utilisent par défaut leur mot de passe Unix, mais
c'est surtout parce que c'est pratique. Les programmes clients permettent
d'utiliser des noms d'utilisateurs différents avec les options
-u
et
--user
. Cela signifie que vous ne pouvez pas rendre une base de données
sécuritaire sans donner de mots de passe à tous les clients. Tout le monde peut
essayer de se connecter au serveur sous n'importe quel nom, et il sera possible
de se connecter si un nom d'utilisateur n'a pas de mot de passe.
-
Les noms d'utilisateurs MySQL peuvent avoir jusqu'à 16 caractères ; les noms
d'utilisateurs Unix sont généralement limités à 8 caractères.
-
Les mots de passe MySQL n'ont aucun rapport avec le passeport Unix.
Il n'y a pas nécessairement de connexion entre le mot de passe que vous utilisez
pour vous connecter sur la machine Unix et celui que vous utilisez pour accéder au
serveur MySQL.
-
MySQL chiffre les mots de passe avec un algorithme différent de celui qui
est utilisé par Unix. Reportez-vous aux descriptions des fonctions
PASSWORD()
et
ENCRYPT()
dans Fonctions de chiffrement . Notez que
même si le mot de passe est enregistré 'brouillé', connaître votre mot de passe
'brouillé' est suffisant pour se connecter au serveur MySQL.
Lorsque vous installez MySQL, la table de droit contient quelques comptes
initiaux. Ces comptes ont des noms et droits qui sont décrits dans
Sécurisation des comptes MySQL initiaux , qui montre aussi comment donner des mots de passe.
Après cela, vous pouvez créer, modifier ou supprimer normalement des
comptes MySQL avec les commandes
GRANT
et
REVOKE
.
Syntaxe de
GRANT
et
REVOKE
.
Lorsque vous vous connectez à un serveur MySQL avec un client en ligne de commande,
vous devez spécifier le mot de passe avec l'option
--password=mot-de-passe
.
Connexion au serveur MySQL .
mysql --user=monty --password=devine nom_base
|
ou la version courte :
shell> mysql -u monty -pdevine nom_base
|
Il
ne doit pas
y avoir d'espace entre l'option
-p
et le mot
de passe suivant. Les commandes incluent la valeur d'un mot de passe en ligne de commande, ce qui
n'est pas sécuritaire. Sécuriser votre mot de passe .
Pour éviter cela, spécifiez l'option
--password
ou
-p
sans aucune
valeur :
shell> mysql --user=monty --password nom_base shell> mysql -u monty -p nom_base
|
Le client va alors afficher une invite, et vous demander d'y saisir le
mot de passe. Dans les exemples,
nom_base
n'est pas
interprété
comme un mot de passe, car il est séparé de l'option précédente par un espace.
Sur certains systèmes, l'appel que MySQL utilise pour demander le mot de passe
va limiter automatiquement le mot de passe à 8 caractères. C'est un problème
avec la bibliothèque système, et non pas avec MySQL. En interne, MySQL n'a pas
de limite pour la taille du mot de passe. Pour contourner le problème,
modifiez la taille du mot de passe pour qu'il fasse 8 caractères ou mois,
ou placez votre mot de passe dans un fichier d'options.
|