Tout d'abord, assurez-vous que votre nom d'utilisateur/mot de passe MySQL est différent de votre nom d'utilisateur et de votre mot de passe.
Ensuite, créez un fichier appelé, disons, config.py
et placez-le dans un répertoire de votre PYTHONPATH :
USER='zzzzzzzz'
PASS='xxxxxxxx'
HOST='yyyyyyyy'
MYDB='wwwwwwww'
Modifiez les autorisations sur le fichier afin que vous seul (et root) puissiez le lire. Par exemple, sous Unix :
chmod 0600 /path/to/config.py
Maintenant, lorsque vous écrivez un script en utilisant MySQLdb
tu écrirais
import config
connection = MySQLdb.connect(
host = config.HOST, user = config.USER,
passwd = config.PASS, db = config.MYDB)
Ainsi, votre nom d'utilisateur et votre mot de passe n'apparaîtront dans aucun de vos scripts.
Vous pouvez également mettre config.py
dans un répertoire chiffré et/ou sur une clé USB, de sorte que le fichier n'est accessible que lorsque la clé est montée.