À propos de la protection par émission de données pour secret scanning
La fonctionnalité de protection par émission de données de secret scanning permet d’éviter les fuites de sécurité en analysant les secrets avant d’envoyer des modifications à votre référentiel. Lorsque vous activez la protection par émission de données pour votre organisation ou votre référentiel, secret scanning vérifie également les envois des secrets avec un taux de confiance élevé (ceux identifiés avec un taux faible de faux positifs). Secret scanning liste les secrets qu’elle détecte afin que l’auteur puisse passer en revue les secrets et les supprimer ou, si nécessaire, autoriser ces secrets à être poussés. Pour plus d’informations sur les secrets et fournisseurs de services pris en charge pour la protection par émission de données, consultez « Modèles d’analyse des secrets ».
Si vous confirmez qu’un secret est réel, vous devez supprimer le secret de votre branche, de toutes les validations dans lesquelles il apparaît, avant d’envoyer (push) à nouveau.
Conseil Si GitHub bloque un secret alors que selon vous son envoi (push) ne pose pas de problème, vous pouvez autoriser le secret et spécifier la raison pour laquelle il doit être autorisé. Pour plus d’informations sur le contournement de la protection par émission de données d’un secret, consultez « Autoriser un secret bloqué à être envoyé » et « Contournement de la protection par émission de données d’un secret » pour la ligne de commande et l’interface utilisateur web, respectivement.
Les propriétaires d’organisation peuvent fournir un lien personnalisé qui sera inclus dans le message de GitHub Enterprise Cloud lorsque votre poussée est bloquée. Ce lien personnalisé peut contenir des ressources et des conseils spécifiques à votre organisation et à ses stratégies.
Résolution d’un envoi (push) bloqué sur la ligne de commande
Quand vous tentez de pousser un secret pris en charge vers un dépôt ou une organisation et que l’secret scanning en tant que protection des poussées est activée, GitHub bloque la poussée. Vous pouvez supprimer le secret de votre branche ou suivre une URL fournie pour autoriser l’envoi (push).
Remarques:
- Si votre configuration Git prend en charge les envois vers plusieurs branches, et non seulement vers la branche par défaut, votre envoi peut être bloqué en raison de l’envoi (push) de références supplémentaires et involontaires. Pour plus d’informations, consultez les options
push.default
dans la documentation Git. - Si l’secret scanning à l’occasion de l’expiration d’un envoi (push), GitHub exécute toujours une analyse après l’envoi (push).
Si le secret bloqué a été introduit par la dernière validation sur votre branche, vous pouvez suivre l’aide apportée ci-dessous.
- Supprimez le secret de votre code.
- Validez les modifications à l’aide de
git commit --amend
. - Envoyer vos modifications avec
git push
.
Vous pouvez également supprimer le secret s’il apparaît dans une validation antérieure dans l’historique Git.
- Utilisez
git log
pour déterminer la validation exposée dans l’erreur d’envoi (push) arrivant en premier dans l’historique. - Démarrez une relocalisation interactive avec
git rebase -i <commit-id>~1
.correspond à l’ID de la validation de l’étape 1. - Identifiez votre validation à modifier en passant
pick
àedit
sur la première ligne du texte qui apparaît dans l’éditeur. - Supprimez le secret de votre code.
- Validez la modification avec
git commit --amend
. - Exécutez
git rebase --continue
pour terminer la relocalisation.
Résolution d’une validation bloquée dans l’interface utilisateur web
Quand vous utilisez l’interface utilisateur web pour tenter de commiter un secret pris en charge vers un dépôt ou une organisation avec l’analyse des secrets activée comme protection des poussées, GitHub bloque le commit.
Vous verrez une boîte de dialogue avec des informations sur l’emplacement du secret, ainsi que des options vous permettant d’envoyer (push) le secret. Le secret sera également souligné dans le fichier afin que vous puissiez le trouver facilement.
Pour résoudre une validation bloquée dans l’interface utilisateur web, vous devez supprimer le secret du fichier ou utiliser les options affichées dans la boîte de dialogue pour autoriser le secret. Pour plus d’informations sur le contournement de la protection par émission de données à partir de l’interface utilisateur web, consultez « Protection des poussées pour les référentiels et les organisations ».
Si vous confirmez qu’un secret est réel, vous devez supprimer le secret du fichier. Une fois que vous avez supprimé le secret, vous pourrez valider vos modifications.