Skip to main content

Cette version de GitHub Enterprise Server n'est plus disponible depuis le 2023-09-25. Aucune publication de correctifs n’est effectuée, même pour les problèmes de sécurité critiques. Pour de meilleures performances, une sécurité améliorée et de nouvelles fonctionnalités, effectuez une mise à niveau vers la dernière version de GitHub Enterprise. Pour obtenir de l’aide sur la mise à niveau, contactez le support GitHub Enterprise.

Protection des poussées pour les référentiels et les organisations

Vous pouvez utiliser l’secret scanning pour empêcher les secrets pris en charge d’être poussés dans votre organisation ou dépôt en activant la protection des poussées.

Secret scanning est disponible pour les référentiels détenus par l’organisation dans GitHub Enterprise Server si votre entreprise dispose d’une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de l’analyse des secrets » et « À propos de GitHub Advanced Security ».

Remarque : votre administrateur de site doit activersecret scanning pour votre instance GitHub Enterprise Server afin que vous puissiez utiliser cette fonctionnalité. Pour plus d’informations, consultez « Configuration de l’analyse de secrets pour votre appliance ».

Vous ne pourrez peut-être pas activer ou désactiver lsecret scanning si un propriétaire d’entreprise a défini une stratégie GitHub Advanced Security (GHAS) au niveau de l’entreprise. Pour plus d’informations, consultez « Application de stratégies de sécurité et d’analyse du code pour votre entreprise ».

À propos de la protection des poussées pour les référentiels et les organisations

Jusqu’à présent, l’secret scanning vérifie la présence de secrets après une poussée et avertit les utilisateurs des secrets exposés. 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.

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 dans l’état décrit dans le tableau ci-dessous.
  • ajoute l’événement de contournement au journal d’audit.

Vous pouvez surveiller les alertes de sécurité pour découvrir quand les utilisateurs contournent les protections de poussées et créent des alertes. Pour plus d’informations, consultez « Audit des alertes de sécurité ».

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

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 ».

Activation de l’secret scanning en tant que protection des poussées

Pour que vous utilisiez l’secret scanning comme protection d’envoi dans les référentiels publics, l’organisation ou le référentiel doit avoir l’secret scanning activée. Pour plus d’informations, consultez « Gestion des paramètres de sécurité et d’analyse pour votre organisation », « Gestion des paramètres de sécurité et d’analyse pour votre dépôt » et « À propos de GitHub Advanced Security ».

Les propriétaires d’organisation, les gestionnaires de sécurité et les administrateurs de référentiels peuvent activer la protection de transmission de type push pour secret scanning via l’API. Pour plus d’informations, consultez « Référentiels » et développez la section « Propriétés de l’objet security_and_analysis » dans la documentation de l’API REST.

Les administrateurs

Remarque : Lorsque vous dupliquez un dépôt avec secret scanning comme protection push activée, celle-ci n'est pas activée par défaut sur le dupliqué (fork). Vous pouvez l'activer sur le dupliqué (fork) de la même manière que vous l'activez sur un dépôt autonome.

Activation de l’secret scanning en tant que protection des poussées pour une organisation

Vous pouvez utiliser la page des paramètres d’une organisation pour « Sécurité et analyse du code » pour activer et désactiver secret scanning comme une protection de transmission de type push pour tous les référentiels existants dans une organisation.

  1. Sur votre instance GitHub Enterprise Server, accédez à la page principale de l’organisation.

  2. Sous le nom de votre organisation, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.

    Capture d’écran de la barre de navigation horizontale d’une organisation. L’onglet « Paramètres » est présenté en orange foncé.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.

  4. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ».

  5. Sous « Secret scanning », sous « Protection des poussées », cliquez sur Activer tout.

  6. Cliquez éventuellement sur « Activer automatiquement pour les référentiels ajoutés à secret scanning ».

Pour plus d’informations sur l’activation de fonctionnalités de sécurité dans une organisation, consultez « Sécurisation de votre organisation ».

Activation de l’secret scanning en tant que protection des poussées pour un dépôt

  1. Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt.
  2. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres. Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.
  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.
  4. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ».
  5. Sous « Secret scanning », accédez à « Protection des envois » et cliquez sur Activer. Capture d’écran montrant comment activer la protection des poussées pour l’secret scanning d’un dépôt.

Activation de la protection des poussées pour un modèle personnalisé

Vous pouvez activer l’secret scanning en tant que protection des poussées pour les modèles personnalisés stockés au niveau de l’entreprise, de l’organisation ou du dépôt.

Activation de la protection des poussées pour un modèle personnalisé stocké dans une entreprise

Remarques :

  • Pour rendre possible la protection des envois (push) dans le cadre des modèles personnalisés, l’secret scanning doit être activée comme protection des envois (push) au niveau de l’entreprise. Pour plus d’informations, consultez « Protection des poussées pour les référentiels et les organisations ».
  • L’activation de la protection des envois (push) pour les modèles personnalisés courants peut entraîner des perturbations pour les contributeurs.

Avant d’activer la protection des poussées pour un modèle personnalisé au niveau de l’entreprise, vous devez également tester vos modèles personnalisés en exécutant des tests. Les Vous pouvez uniquement effectuer un essai à blanc sur les dépôts auxquels vous bénéficiez d’un accès administrateur. Si un propriétaire d’entreprise souhaite pouvoir effectuer des essais à blanc sur n’importe quel dépôt d’une organisation, le rôle propriétaire d’organisation doit lui être attribué. Pour plus d’informations, consultez « Gestion de votre rôle dans une organisation appartenant à votre entreprise ».

  1. Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise.

    Capture d’écran du menu déroulant qui s’affiche lorsque vous cliquez sur la photo de profil sur GitHub Enterprise Server. L'option "Paramètres de l'entreprise" est mise en évidence par un contour orange foncé.

  2. Dans la barre latérale du compte d’entreprise, cliquez sur Stratégies. 1. Sous Stratégies, cliquez sur Sécurité avancée.

  3. Sous « GitHub Advanced Security », cliquez sur l’onglet Fonctionnalités de sécurité. 1. Sous « Secret scanning », sous « Modèles personnalisés », cliquez sur pour le modèle qui vous intéresse.

Remarque : Au niveau de l’entreprise, vous pouvez uniquement modifier et activer la protection des poussées pour les modèles personnalisés que vous avez créés.

1. Pour activer la protection des poussées pour votre modèle personnalisé, faites défiler vers le bas jusqu’à « Protection des poussées » et cliquez sur **Activer**.

Capture d’écran de la page de modèles personnalisés avec le bouton permettant d’activer la protection push mis en évidence avec un contour orange foncé.

Activation de l’secret scanning en tant que protection des poussées dans une organisation pour un modèle personnalisé

Avant d’activer la protection des poussées pour un modèle personnalisé au niveau de l’organisation, vous devez veiller à activer l’secret scanning pour les dépôts que vous souhaitez analyser dans votre organisation. Pour activer l’secret scanning sur tous les dépôts au sein de votre organisation, consultez « Gestion des paramètres de sécurité et d’analyse pour votre organisation ».

  1. Dans l’angle supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Vos organisations.

    Capture d’écran du menu déroulant sous l’image de profil de @octocat. « Vos organisations » est présenté en orange foncé.

  2. En regard de l’organisation, cliquez sur Paramètres.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.

  4. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ».

  5. Sous « Secret scanning », sous « Modèles personnalisés », cliquez sur pour le modèle qui vous intéresse.

  6. Pour activer la protection des poussées pour votre modèle personnalisé, faites défiler vers le bas jusqu’à « Protection des poussées » et cliquez sur Activer.

    Remarques :

    • La protection des envois (push) pour les modèles personnalisés s’applique uniquement aux référentiels de l’organisation sur lesquels l’secret scanning est activée comme protection des envois (push). Pour plus d’informations, consultez « Protection des poussées pour les référentiels et les organisations ».
    • L’activation de la protection des envois (push) pour les modèles personnalisés courants peut entraîner des perturbations pour les contributeurs.

    Capture d’écran de la section « Protection push » de la page de modèle personnalisé. Un bouton, intitulé « Activer », est indiqué en orange foncé.

Activation de l’secret scanning en tant que protection des poussées dans un dépôt pour un modèle personnalisé

Avant d’activer la protection des poussées pour un modèle personnalisé au niveau du dépôt, vous devez définir le modèle personnalisé pour le dépôt et le tester dans le dépôt. Pour plus d’informations, consultez « Définition de modèles personnalisés pour l’analyse des secrets ».

  1. Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt.

  2. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres. Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.

  4. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ».

  5. Sous « Secret scanning », sous « Modèles personnalisés », cliquez sur pour le modèle qui vous intéresse.

  6. Pour activer la protection des poussées pour votre modèle personnalisé, faites défiler vers le bas jusqu’à « Protection des poussées » et cliquez sur Activer.

    Capture d’écran de la section « Protection push » de la page de modèle personnalisé. Un bouton, intitulé « Activer », est indiqué en orange foncé.

Utilisation de l’analyse des secrets comme protection par émission de données à partir de 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).

Jusqu’à cinq secrets détectés s’affichent à la fois sur la ligne de commande. Si un secret particulier a déjà été détecté dans le dépôt et qu’une alerte existe déjà, GitHub ne bloque pas ce secret.

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. Pour plus d’informations sur la correction des secrets bloqués, consultez « Envoi d’une branche bloquée par la protection par émission de données ».

Si vous confirmez qu’un secret est réel et que vous avez l’intention de le corriger ultérieurement, vous devez veiller à effectuer la correction dès que possible. Par exemple, vous pouvez révoquer le secret et le supprimer de l’historique des commits du dépôt. Les secrets réels exposés doivent être révoqués pour éviter tout accès non autorisé. Vous pouvez commencer par faire pivoter le secret avant de le révoquer. Pour plus d’informations, consultez « Suppression de données sensibles dans un dépôt ».

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).

Autorisation de la poussée d’un secret bloqué

Si GitHub bloque un secret alors que selon vous sa poussée ne pose pas de problème, vous pouvez autoriser le secret et spécifier la raison pour laquelle il doit être autorisé.

Lorsque vous autorisez un secret à être poussé, une alerte est créée sous l’onglet Sécurité. GitHub ferme l’alerte et n’envoie pas de notification si vous spécifiez que le secret est un faux positif ou qu’il est utilisé uniquement dans les tests. Si vous spécifiez que le secret est bien réel et que vous le corrigerez plus tard, GitHub garde l’alerte de sécurité ouverte et envoie des notifications à l’auteur du commit, ainsi qu’aux administrateurs du dépôt. Pour plus d’informations, consultez « Gestion des alertes à partir de l’analyse des secrets ».

  1. Visitez l’URL qu’a retournée GitHub quand votre poussée a été bloquée.
  2. Choisissez l’option qui décrit le mieux la raison pour laquelle vous devez être en mesure de pousser le secret.
    • Si le secret est utilisé uniquement dans des tests et ne représente aucune menace, cliquez sur Il est utilisé dans des tests.
    • Si la chaîne détectée n’est pas un secret, cliquez sur Il s’agit d’un faux positif.
    • Si le secret est réel, mais que vous avez l’intention de le corriger plus tard, cliquez sur Je le corrigerai plus tard.
  3. Cliquez sur M’autoriser à pousser ce secret.
  4. Retentez la poussée sur la ligne de commande dans un délai de trois heures. Si vous n’effectuez pas la poussée dans les trois heures, vous devrez répéter ce processus.

Utilisation de l’analyse des secrets comme protection des poussées à partir de 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.

GitHub n’affiche qu’un secret détecté à la fois dans l’interface utilisateur web. Si un secret particulier a déjà été détecté dans le dépôt et qu’une alerte existe déjà, GitHub ne bloque pas ce secret.

Vous pouvez supprimer le secret du fichier à l’aide de l’interface utilisateur web. Une fois que vous avez supprimé le secret, vous pourrez valider vos modifications.

Contournement de la protection des poussées pour un secret

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. Pour plus d’informations sur la correction des secrets bloqués, consultez « Envoi d’une branche bloquée par la protection par émission de données ».

Si vous confirmez qu’un secret est réel et que vous avez l’intention de le corriger ultérieurement, vous devez veiller à effectuer la correction dès que possible. Pour plus d’informations, consultez « Suppression de données sensibles dans un dépôt ».

Si GitHub bloque un secret alors que selon vous sa poussée ne pose pas de problème, vous pouvez autoriser le secret et spécifier la raison pour laquelle il doit être autorisé.

Lorsque vous autorisez un secret à être poussé, une alerte est créée sous l’onglet Sécurité. GitHub ferme l’alerte et n’envoie pas de notification si vous spécifiez que le secret est un faux positif ou qu’il est utilisé uniquement dans les tests. Si vous spécifiez que le secret est bien réel et que vous le corrigerez plus tard, GitHub garde l’alerte de sécurité ouverte et envoie des notifications à l’auteur du commit, ainsi qu’aux administrateurs du dépôt. Pour plus d’informations, consultez « Gestion des alertes à partir de l’analyse des secrets ».

  1. Dans la boîte de dialogue qui s’est affichée lorsque GitHub a bloqué votre validation, consultez le nom et l’emplacement du secret.
  2. Choisissez l’option qui décrit le mieux la raison pour laquelle vous devez être en mesure de pousser le secret.
    • Si le secret est utilisé uniquement dans des tests et ne représente aucune menace, cliquez sur Il est utilisé dans des tests.
    • Si la chaîne détectée n’est pas un secret, cliquez sur Il s’agit d’un faux positif.
    • Si le secret est réel, mais que vous avez l’intention de le corriger plus tard, cliquez sur Je le corrigerai plus tard.
  3. Cliquez sur Autoriser le secret.