Skip to main content

Définition de modèles personnalisés pour l’analyse des secrets

Vous pouvez définir vos propres modèles personnalisés pour étendre les fonctionnalités de secret scanning en générant une ou plusieurs expressions régulières.

Qui peut utiliser cette fonctionnalité ?

Alertes d’analyse des secrets pour les partenaires s’exécute automatiquement sur les référentiels publics et les packages npm publiques pour informer les fournisseurs de services des fuites de secrets sur GitHub.com.

Les Alertes d’analyse des secrets pour les utilisateurs sont disponibles gratuitement sur tous les dépôts publics appartenant à l’utilisateur. Les organisations qui utilisent GitHub Enterprise Cloud avec une licence pour GitHub Advanced Security peuvent également activer alertes d’analyse des secrets pour les utilisateurs sur leurs dépôts privés et internes. De plus, alertes d’analyse des secrets pour les utilisateurs sont disponibles et en version bêta sur les référentiels appartenant à l’utilisateur pour GitHub Enterprise Cloud avec Enterprise Managed Users. Pour plus d’informations, consultez « À propos de l’analyse des secrets » et « À propos de GitHub Advanced Security ».

Pour plus d’informations sur la façon dont vous pouvez essayer GitHub Advanced Security gratuitement, consultez « Configuration d’un essai de GitHub Advanced Security ».

À propos des modèles personnalisés pour secret scanning

Vous pouvez définir des modèles personnalisés pour identifier les secrets qui ne sont pas détectés par les modèles par défaut pris en charge par l’secret scanning. Par exemple, vous pouvez avoir un modèle secret interne à votre organisation. Pour plus d’informations sur les secrets et les fournisseurs de services pris en charge, consultez « Modèles d'analyse des secrets ».

Vous pouvez définir des modèles personnalisés pour votre entreprise, votre organisation ou votre dépôt. L’Secret scanning prend en charge jusqu’à 500 modèles personnalisés par organisation ou compte d’entreprise, et jusqu’à 100 modèles personnalisés par dépôt.

Vous pouvez également activer la protection des envois (push) pour les modèles personnalisés. Pour plus d’informations sur la protection push, consultez « Protection des poussées pour les référentiels et les organisations ».

À propos de l’utilisation d’expressions régulières pour les modèles personnalisés

Les modèles personnalisés d’secret scanning peuvent être spécifiés sous la forme d’une ou plusieurs expressions régulières.

L’Secret scanning utilise la bibliothèque Hyperscan et prend uniquement en charge les constructions d’expression régulière Hyperscan, qui sont un sous-ensemble de la syntaxe PCRE. Les modificateurs d’option Hyperscan ne sont pas pris en charge. Pour plus d’informations sur les constructions de modèles Hyperscan, consultez « Prise en charge des modèles » dans la documentation Hyperscan.

Les expressions régulières peuvent être entrées manuellement ou générées à l’aide du générateur d’expressions régulières.

Syntaxe des expressions régulières pour définir manuellement des modèles personnalisés

La section Plus d’options dans l’IU vous aide à écrire manuellement des expressions régulières.

  • Format du secret : expression qui décrit le format du secret lui-même.
  • Avant le secret : expression qui décrit les caractères situés avant le secret. Par défaut, cette expression est définie sur \A|[^0-9A-Za-z], ce qui signifie que le secret doit être au début d’une ligne ou être précédé d’un caractère non alphanumérique.
  • Après le secret : expression qui décrit les caractères situés après le secret. Par défaut, cette expression est définie sur \z|[^0-9A-Za-z], ce qui signifie que le secret doit être suivi d’une nouvelle ligne ou d’un caractère non alphanumérique.
  • Exigences de correspondance supplémentaires : une ou plusieurs expressions facultatives auxquelles le secret lui-même doit ou ne doit pas correspondre.

Pour les jetons simples, en règle générale, vous devez uniquement spécifier un format de secret. Les autres champs vous permettent de spécifier des secrets plus complexes sans créer d’expressions régulières complexes. Pour obtenir un exemple de modèle personnalisé, consultez « Exemple de modèle personnalisé spécifié avec des exigences supplémentaires » plus bas.

Utilisation du générateur d’expressions régulières

Le générateur utilise un modèle IA génératif dans lequel vous entrez une description textuelle du type de modèle que vous souhaitez détecter, avec des exemples de chaînes qui doivent être détectées (facultatif). Le modèle retourne jusqu’à trois expressions régulières pour vous permettre de les vérifier et de faire votre choix. Pour plus d’informations, consultez « À propos du générateur d’expressions régulières pour les modèles personnalisés » et « Génération d’expressions régulières pour les modèles personnalisés avec l’IA ».

Définition d’un modèle personnalisé pour un dépôt

Avant de définir un modèle personnalisé, vous devez vous assurer que l’secret scanning est activée sur votre dépôt. Pour plus d’informations, consultez « Configuration de l’analyse des secrets pour vos dépôts ».

  1. Dans GitHub.com, 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 Nouveau modèle.

  6. Entrez les détails de votre nouveau modèle personnalisé. Vous devez au moins fournir le nom de votre modèle, ainsi qu’une expression régulière pour le format de votre modèle de secret.

    1. Dans le champ Nom du modèle, saisissez un nom pour votre modèle.
    2. Dans le champ Format secret, saisissez une expression régulière pour le format de votre modèle secret. Vous pouvez également utiliser le générateur pour générer une expression régulière pour vous. Pour plus d’informations, consultez « Génération d’expressions régulières pour les modèles personnalisés avec l’IA ».
    3. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.
    4. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez.

    Capture d’écran d’un formulaire de modèle d’secret scanning personnalisé rempli.

  7. Quand vous êtes prêt à tester votre nouveau modèle personnalisé, pour identifier les correspondances dans le dépôt sans créer d’alertes, cliquez sur Enregistrer et effectuer un test à blanc.

  8. Une fois le test à blanc terminé, vous voyez un échantillon de résultats (jusqu’à 1000). Passez en revue les résultats et identifiez les faux résultats positifs. Capture d’écran montrant les résultats d’un test à blanc.

  9. Modifiez le nouveau modèle personnalisé pour résoudre les problèmes liés aux résultats, puis cliquez sur Enregistrer et effectuer un test à blanc pour tester vos modifications.

  10. Quand vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier le modèle.

  11. Vous pouvez éventuellement activer la protection des poussées (push) pour votre modèle personnalisé, en cliquant sur Activer.

    Remarque : Le bouton « Activer » n’est disponible que si l’essai à blanc a réussi et que vous avez publié le modèle.

    Pour plus d’informations sur la protection push, consultez « Protection des poussées pour les référentiels et les organisations ».

Une fois votre modèle créé, secret scanning recherche les secrets dans l’historique Git de toutes les branches présentes dans votre référentiel GitHub.. Pour plus d’informations sur l’affichage des Alertes d’analyse de secrets, consultez « Gestion des alertes à partir de l’analyse des secrets ».

Exemple de modèle personnalisé spécifié avec des exigences supplémentaires

Une entreprise a un jeton interne avec cinq caractéristiques. Elle utilise les différents champs pour spécifier comment identifier les jetons, comme suit :

CaractéristiqueChamp et expression régulière
Longueur comprise entre 5 et 10 caractèresFormat du secret : [$#%@AA-Za-z0-9]{5,10}
Ne se termine pas par .Après le secret : [^\.]
Contient des chiffres et des lettres majusculesExigences supplémentaires : le secret doit correspondre à [A-Z] et [0-9]
N’inclut pas plus d’une lettre minuscule dans une ligneExigences supplémentaires : le secret ne doit pas correspondre à [a-z]{2,}
Contient un caractère parmi $%@!Exigences supplémentaires : le secret doit correspondre à [$%@!]

Les jetons suivants correspondent au modèle personnalisé décrit ci-dessus :

a9@AAfT!         # Secret string match: a9@AAfT
ee95GG@ZA942@aa  # Secret string match: @ZA942@a
a9@AA!ee9        # Secret string match: a9@AA

Les chaînes suivantes ne correspondent pas au modèle personnalisé décrit ci-dessus :

a9@AA.!
a@AAAAA
aa9@AA!ee9
aAAAe9

Définition d’un modèle personnalisé pour une organisation

Avant de définir un modèle personnalisé, vous devez vous assurer que vous activez 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.com, sélectionnez 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 Nouveau modèle.

  6. Entrez les détails de votre nouveau modèle personnalisé. Vous devez au moins fournir le nom de votre modèle, ainsi qu’une expression régulière pour le format de votre modèle de secret.

    1. Dans le champ Nom du modèle, saisissez un nom pour votre modèle.
    2. Dans le champ Format secret, saisissez une expression régulière pour le format de votre modèle secret. Vous pouvez également utiliser le générateur pour générer une expression régulière pour vous. Pour plus d’informations, consultez « Génération d’expressions régulières pour les modèles personnalisés avec l’IA ».
    3. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.
    4. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez.

    Capture d’écran d’un formulaire de modèle d’secret scanning personnalisé rempli.

  7. Quand vous êtes prêt à tester votre nouveau modèle personnalisé, pour identifier des correspondances dans certains dépôts sans créer d’alertes, cliquez sur Enregistrer et effectuer un test à blanc.

  8. Sélectionnez les référentiels dans lesquels vous souhaitez effectuer le test.

    • Pour effectuer le test dans l’ensemble de l’organisation, sélectionnez Tous les référentiels de l’organisation.
    • Pour spécifier les référentiels dans lesquels vous souhaitez effectuer le test, sélectionnez Référentiels sélectionnés, puis recherchez et sélectionnez jusqu’à 10 référentiels.
  9. Lorsque vous êtes prêt à tester votre nouveau modèle personnalisé, cliquez sur Exécuter.

  10. Une fois le test à blanc terminé, vous voyez un échantillon de résultats (jusqu’à 1000). Passez en revue les résultats et identifiez les faux résultats positifs. Capture d’écran montrant les résultats d’un test à blanc.

  11. Modifiez le nouveau modèle personnalisé pour résoudre les problèmes liés aux résultats, puis cliquez sur Enregistrer et effectuer un test à blanc pour tester vos modifications.

  12. Quand vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier le modèle.

  13. Si vous souhaitez activer la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez sur Activer. Pour plus d’informations, consultez « Protection des poussées pour les référentiels et les organisations ».

    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.

Une fois votre modèle créé, l’secret scanning recherche tous les secrets dans les dépôts de votre organisation, y compris leur historique Git entier sur toutes les branches. Les propriétaires d’organisation et les administrateurs de dépôt sont avertis des secrets trouvés et peuvent passer en revue l’alerte dans le dépôt où se trouve le secret. Pour plus d’informations sur l’affichage des Alertes d’analyse de secrets, consultez « Gestion des alertes à partir de l’analyse des secrets ».

Définition d’un modèle personnalisé pour un compte d’entreprise

Avant de définir un modèle personnalisé, vous devez vous assurer que vous activez l’analyse des secrets pour votre compte d’entreprise. Pour plus d’informations, consultez « Activation de GitHub Advanced Security pour votre entreprise ».

Notes:

  • Au niveau de l’entreprise, seul le créateur d’un modèle personnalisé peut le modifier et l’utiliser dans un essai à blanc.
  • 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.com, cliquez sur votre photo de profil, puis sur Vos entreprises.

  2. Dans la liste des entreprises, cliquez sur l’entreprise que vous souhaitez afficher.

  3. Dans la barre latérale du compte d’entreprise, cliquez sur Stratégies. 1. Sous Stratégies, cliquez sur Sécurité et analyse du code.

  4. Sous « Sécurité et analyse du code », cliquez sur Fonctionnalités de sécurité.

  5. Sous « Modèles personnalisés d’analyse des secrets », cliquez sur Nouveau modèle.

  6. Entrez les détails de votre nouveau modèle personnalisé. Vous devez au moins fournir le nom de votre modèle, ainsi qu’une expression régulière pour le format de votre modèle de secret.

    1. Dans le champ Nom du modèle, saisissez un nom pour votre modèle.
    2. Dans le champ Format secret, saisissez une expression régulière pour le format de votre modèle secret. Vous pouvez également utiliser le générateur pour générer une expression régulière pour vous. Pour plus d’informations, consultez « Génération d’expressions régulières pour les modèles personnalisés avec l’IA ».
    3. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.
    4. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez.

    Capture d’écran d’un formulaire de modèle d’secret scanning personnalisé rempli.

  7. Quand vous êtes prêt à tester votre nouveau modèle personnalisé, pour identifier les correspondances dans l’entreprise sans créer d’alertes, cliquez sur Enregistrer et effectuer un test.

  8. Recherchez et sélectionnez jusqu’à 10 référentiels dans lesquels vous souhaitez effectuer le test.

  9. Lorsque vous êtes prêt à tester votre nouveau modèle personnalisé, cliquez sur Exécuter.

  10. Une fois le test à blanc terminé, vous voyez un échantillon de résultats (jusqu’à 1000). Passez en revue les résultats et identifiez les faux résultats positifs. Capture d’écran montrant les résultats d’un test à blanc.

  11. Modifiez le nouveau modèle personnalisé pour résoudre les problèmes liés aux résultats, puis cliquez sur Enregistrer et effectuer un test à blanc pour tester vos modifications.

  12. Quand vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier le modèle.

  13. Si vous souhaitez activer la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez sur Activer. Pour plus d’informations, consultez « Protection des poussées pour les référentiels et les organisations ».

    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.

Une fois votre modèle créé, l’secret scanning recherche tous les secrets dans les dépôts au sein des organisations de votre entreprise avec GitHub Advanced Security activé, y compris leur historique Git entier sur toutes les branches. Les propriétaires d’organisation et les administrateurs de dépôt sont avertis des secrets trouvés et peuvent passer en revue l’alerte dans le dépôt où se trouve le secret. Pour plus d’informations sur l’affichage des Alertes d’analyse de secrets, consultez « Gestion des alertes à partir de l’analyse des secrets ».

Modification d’un modèle personnalisé

Quand vous enregistrez une modification apportée à un modèle personnalisé, toutes les Alertes d’analyse de secrets créées avec la version précédente du modèle sont fermées.

  1. Accédez à l’emplacement où le modèle personnalisé a été créé. Un modèle personnalisé peut être créé dans un compte d’organisation ou d’entreprise ou dans un dépôt.

  2. Sous « Secret scanning », à droite du modèle personnalisé que vous souhaitez modifier, cliquez sur .

  3. Quand vous êtes prêt à tester votre modèle personnalisé modifié, pour identifier les correspondances sans créer d’alertes, cliquez sur Enregistrer et effectuer un test.

  4. Une fois que vous avez examiné et testé vos modifications, cliquez sur Publier les modifications. 1. Vous pouvez éventuellement activer la protection des poussées (push) pour votre modèle personnalisé, en cliquant sur Activer.

    Remarque :

    • La protection des envois (push) pour les modèles personnalisés s’applique uniquement aux référentiels sur lesquels l’secret scanning est activée comme protection des envois (push). Pour plus d’informations sur l’activation de la protection push, 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 page de modèles personnalisés, avec le bouton permettant d’activer la protection des poussées mis en évidence.

  5. Si vous souhaitez désactiver la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez sur Désactiver.

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

Suppression d’un modèle personnalisé

  1. Accédez à l’emplacement où le modèle personnalisé a été créé. Un modèle personnalisé peut être créé dans un compte d’organisation ou d’entreprise ou dans un dépôt.
  2. À droite du modèle personnalisé que vous souhaitez supprimer, cliquez sur .
  3. Passez en revue la confirmation et sélectionnez une méthode pour gérer les alertes ouvertes relatives au modèle personnalisé.
  4. Cliquez sur Oui, supprimer ce modèle.

Métriques pour les modèles personnalisés

Les propriétaires d’organisation et les personnes disposant d’autorisations d’administrateur peuvent voir une vue d’ensemble de l’activité pour les modèles personnalisés. La vue d’ensemble comprend l’activité d’alerte et de protection des envois (push) pour le modèle personnalisé au cours des 30 derniers jours.

Remarque : les métriques pour les modèles personnalisés sont en version bêta publique et sont susceptibles d’être modifiées.

Affichage des métriques pour les modèles personnalisés

  1. Accédez à l’emplacement où le modèle personnalisé a été créé. Un modèle personnalisé peut être créé dans un compte d’organisation ou d’entreprise ou dans un dépôt.
  2. Sous « Secret scanning », cliquez sur le modèle personnalisé que vous souhaitez afficher.

Les métriques sont affichées sous le nom du modèle personnalisé.