Que dois-je faire si je mets accidentellement des données sensibles sur Github?


3

Notre équipe a accidentellement transmis des informations personnelles à Github sous la forme d'un fichier de base de données H2. Est-il possible de supprimer un fichier proprement et complètement du serveur?

Faire simplement git rm xxx.dbne semble pas être la solution car on peut facilement accéder git reset --hardà la tête contenant les données de l'utilisateur.

D'autre part,

git reset --hard [the head before the db file was committed]

Ce n’est également pas notre préférence car il ya plus de 10 validations depuis la validation de la base de données.

Que devrions-nous faire pour supprimer ce fichier de base de données?

Réponses:


5

Lisez l'aide de GitHub sur la suppression des données sensibles .

  • Exécutez ce qui suit pour supprimer la référence au fichier dans tout le référentiel - cela ne supprimera pas le fichier lui-même:

    git filter-branch --force --index-filter \
      'git rm --cached --ignore-unmatch <somefile>' \
      --prune-empty --tag-name-filter cat -- --all
    

    (Assurez-vous de remplacer <somefile>par le chemin du fichier que vous souhaitez supprimer.)

  • Ajoutez le fichier à votre .gitignore, puis git addet git commitau .gitignorefichier.

  • Exécuter git push origin master --forcepour obtenir les modifications en amont.

Il y a quelques étapes supplémentaires, y compris le nettoyage du référentiel et l' écriture dans GitHub lui-même afin de supprimer les données en cache.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.