Skip to main content

À propos de la protection lors du push

La protection lors du push empêche les contributeurs de pousser des secrets vers un référentiel et génère une alerte chaque fois qu’un contributeur contourne le blocage. La protection lors du push peut être appliquée au niveau du dépôt, de l’organisation et du compte utilisateur.

Qui peut utiliser cette fonctionnalité ?

La protection d’envoi (push) est disponible pour les types de référentiels suivants :

  • Des référentiels publics sur GitHub.com
  • Référentiels appartenant à l’organisation sur GitHub Team ou GitHub Enterprise Cloud avec GitHub Secret Protection activé
  • Référentiels d’espaces de noms utilisateur appartenant à Enterprise Managed Users

À propos de la protection lors du push

La protection lors du push est une fonctionnalité de secret scanning conçue pour empêcher, dès l’origine, l’envoi d’informations sensibles (comme des secrets ou des jetons) vers votre dépôt. Contrairement à secret scanning, qui détecte les secrets après leur validation, la protection lors du push analyse de manière proactive votre code pendant le processus de push et bloque l’opération si des secrets sont détectés.

La protection lors du push vous aide à éviter les risques liés à l’exposition de secrets, tels que l’accès non autorisé à des ressources ou des services. Grâce à cette fonctionnalité, les développeurs reçoivent un retour immédiat et peuvent corriger les problèmes potentiels avant qu’ils ne deviennent un enjeu de sécurité.

Vous pouvez activer la protection lors du push :

  • Au niveau du référentiel ou de l’organisation, si vous êtes administrateur du référentiel ou propriétaire de l’organisation. Vous verrez des alertes dans l’onglet Sécurité de votre référentiel lorsqu’un contributeur contourne la protection lors du push.
  • Pour votre compte sur GitHub, en tant qu’utilisateur. Ce type de protection lors du push est appelé « protection lors du push pour les utilisateurs ». Elle vous protège contre l’envoi de secrets vers n’importe quel référentiel public sur GitHub, mais aucune alerte n’est générée.

Conseil

Quel que soit l’état d’activation de la protection lors du push, les organisations sur GitHub Team et GitHub Enterprise peuvent exécuter gratuitement un rapport pour analyser le code de l’organisation à la recherche de secrets divulgués. Le rapport indique également combien de fuites de secrets dans votre organisation auraient pu être évitées grâce à la protection lors du push. Consultez À propos de la sécurité des secrets avec GitHub.

Pour plus d’informations sur les secrets et fournisseurs de services pris en charge par la protection push, consultez Modèles de détection de secrets pris en charge.

La protection lors du push présente certaines limites. Pour plus d’informations, consultez « Résolution des problèmes d’analyse des secrets ».

Fonctionnement de la protection d’envois (push)

La protection lors du push bloque les secrets détectés dans :

Une fois activée, si la protection lors du push détecte un secret potentiel lors d’une tentative de push, elle bloque le push et fournit un message détaillé expliquant la raison du blocage. Vous devrez examiner le code concerné, supprimer toute information sensible, puis relancer le push.

Par défaut, toute personne disposant d’un accès en écriture au référentiel peut choisir de contourner la protection lors du push en indiquant l’un des motifs de contournement décrits dans le tableau. Si un contributeur contourne un bloc de protection de poussée pour un secret, GitHub :

  • Crée une alerte sous l’onglet Sécurité du dépôt.
  • Ajoute l’événement de contournement au journal d’audit.
  • Envoie une alerte par e-mail aux propriétaires de comptes d’organisation ou personnels, aux responsables de la sécurité et aux administrateurs du référentiel qui surveillent le référentiel, avec un lien vers le secret et la raison pour laquelle il a été autorisé.

Ce tableau montre le comportement des alertes pour chaque façon dont un utilisateur peut contourner un blocage de la protection push.

Motif du contournementComportement des alertes
Il est utilisé dans des testsGitHub crée une alerte fermée, résolue comme « utilisé dans des tests »
C'est un faux positifGitHub crée une alerte fermée, résolue comme « faux positif »
Je le corrigerai plus tardGitHub crée une alerte ouverte

Si vous souhaitez un contrôle plus fin sur les contributeurs autorisés à contourner la protection lors du push et sur les pushs contenant des secrets qui doivent être autorisés, vous pouvez activer le contournement délégué pour la protection lors du push. Le contournement délégué vous permet de configurer un groupe désigné de réviseurs chargés de superviser et de gérer les demandes de contournement de la protection lors du push provenant des contributeurs qui poussent vers le dépôt. Pour plus d’informations, consultez « À propos du contournement délégué pour la protection push ».

Vous pouvez également contourner la protection lors du push via l’API REST. Pour plus d’informations, consultez Points de terminaison d’API REST pour l’analyse de secrets.

À propos des avantages de la protection lors du push

  •         **Sécurité préventive** : la protection lors du push agit comme un mécanisme de défense de première ligne en analysant le code à la recherche de secrets au moment du push. Cette approche préventive permet d’identifier les problèmes potentiels avant qu’ils ne soient intégrés à votre dépôt.
    
  •         **Retour immédiat :** les développeurs reçoivent un retour instantané si un secret potentiel est détecté lors d’une tentative de push. Cette notification immédiate permet une correction rapide et réduit le risque d’exposition d’informations sensibles.
    
  •         **Réduction du risque de fuites de données** : en bloquant les commits contenant des informations sensibles, la protection lors du push réduit considérablement le risque de fuites de données accidentelles. Cela contribue à protéger votre infrastructure, vos services et vos données contre les accès non autorisés.
    
  •         **Gestion efficace des secrets** : plutôt que de gérer rétrospectivement des secrets exposés, les développeurs peuvent résoudre les problèmes à la source. Cela rend la gestion des secrets plus efficace et moins chronophage.
    
  •         **Possibilité de détecter des modèles personnalisés :** les organisations peuvent définir des modèles personnalisés pour détecter des secrets propres à leur environnement. Cette personnalisation garantit que la protection lors du push peut identifier et bloquer efficacement même des secrets non standard.
    
  •         **Contournement délégué pour plus de flexibilité :** en cas de faux positifs ou lorsque certains modèles sont nécessaires, la fonctionnalité de contournement délégué permet à des utilisateurs désignés d’approuver des pushs spécifiques. Cela offre de la flexibilité sans compromettre la sécurité globale.
    

Chaque utilisateur sur GitHub peut également activer la protection lors du push pour son propre compte dans ses paramètres individuels. L’activation de la protection lors du push pour votre compte utilisateur signifie que vos pushs sont protégés chaque fois que vous poussez vers un référentiel public sur GitHub, sans dépendre de l’activation de la protection lors du push sur ce dépôt. Pour plus d’informations, consultez « Protection d’envoi pour les utilisateurs ».

Personnalisation de la protection lors du push

Une fois la protection lors du push activée, vous pouvez la personnaliser davantage :

Configurer les modèles protégés lors du push

Personnaliser les modèles de secrets inclus dans la protection lors du push au niveau de l’entreprise ou de l’organisation. Consultez Configuration des paramètres d’analyse de secrets supplémentaires pour votre entreprise et Configuration des paramètres de sécurité globaux pour votre organisation.

Définir des modèles personnalisés

Définir des modèles personnalisés que la protection lors du push peut utiliser pour identifier des secrets et bloquer les pushs qui les contiennent. Pour plus d’informations, consultez « Définition de modèles personnalisés pour l’analyse des secrets ».

Configurer le contournement délégué

Définir les contributeurs autorisés à contourner la protection lors du push et ajouter un processus d’approbation pour les autres contributeurs. Pour plus d’informations, consultez « À propos du contournement délégué pour la protection push ».

Lectures complémentaires

  •         [AUTOTITLE](/code-security/secret-scanning/enabling-secret-scanning-features/enabling-push-protection-for-your-repository)
    
  •         [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-from-the-command-line)
    
  •         [AUTOTITLE](/code-security/secret-scanning/working-with-secret-scanning-and-push-protection/working-with-push-protection-in-the-github-ui)
    
  •         [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/custom-patterns/defining-custom-patterns-for-secret-scanning)
    
  •         [AUTOTITLE](/code-security/secret-scanning/using-advanced-secret-scanning-and-push-protection-features/delegated-bypass-for-push-protection/about-delegated-bypass-for-push-protection)