-
Notifications
You must be signed in to change notification settings - Fork 1
Les variables d'environnement et github.
Salut tout le monde,
Je me suis fait une belle frayeur il y a quelques jours. J'ai voulu utiliser AWS S3 pour permettre aux utilisateurs de mon site d'uploader des fichiers directement dans le cloud (avec Jquery file upload mais Dropzone a l'air stylé aussi). Mais pour celà, il faut écrire ses codes d'accès à Amazon quelque part et c'est là qu'on utilise généralement des variables d'environnement ENV['ma_variable'] = 'valeur de la variable'. Il faut créer un nouveau fichier 'variable.rb' et y mettre les variables et surtout après AJOUTER 'variable.rb' à .GITIGNORE! Il existe une autre méthode avec foreman et un fichier .env que je ne suis pas sur d'avoir comprise. (Sur heroku, il y a une autre méthode : https://devcenter.heroku.com/articles/config-vars).
Oubliant l'étape .gitignore, j'ai push mes codes sur github, il s'est passé quelques heures avant que je m'en rende compte (Amazon m'a envoyé un mail d'avertissement avec le lien vers mon repo github et le fichier contenant mes codes) et en 2 jours j'avais une facture de 15 000 $, bienvenue dans la Matrix! Je pense que c'est des pirates qui ont utilisé mes codes pour lancer plein de machines virtuelles (EC2) pour miner des bitcoins et consorts... Maintenant je suis en contact avec le service client d'Amazon, ils sont plutôt rassurants et m'ont dit qu'ils allaient me régler tout ça. J'ai googlé là dessus et c'est un problème fréquent et c'est assez flippant!
Voila j'espère que vous ne ferez pas mon erreur et bon coding! Ciao -- Dan
Edit: le problème a été réglé.
- Juste retirer la donnée sensible du repository ne suffit pas
- Une donnée sensible committée est considérée compromise
- Supprimer la donnée sensible : https://help.github.com/articles/remove-sensitive-data/
-
Ne plus utiliser la donnée compromise :
- choisir un nouveau mot de passe
- générer un nouveau token et détruire le précédent
- etc.