Skip to main content

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

Vous pouvez étendre l’secret scanning pour détecter les secrets au-delà des modèles par défaut.

Les Secret scanning alerts for partners s’exécutent automatiquement sur tous les dépôts publics. Si vous disposez d’une licence pour GitHub Advanced Security, vous pouvez activer et configurer les secret scanning alerts for users pour tout dépôt appartenant à une organisation. Pour plus d’informations, consultez « À propos des secret scanning alerts for users » et « À propos de la 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 fournisseurs de services pris en charge, consultez « Modèles d’Secret scanning ».

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 l’activation de la protection des envois (push), consultez « protection des envois (push) avec l’analyse des secrets ».

Syntaxe des 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.

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

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.

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’secret scanning pour vos dépôts ».

  1. Dans GitHub.com, accédez à la page principale du dépôt. 1. Sous le nom de votre dépôt, cliquez sur Paramètres. Bouton Paramètres du dépôt

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

  3. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ». 1. Sous « Secret scanning », sous « Modèles personnalisés », cliquez sur Nouveau modèle. 1. Entrez les détails de votre nouveau modèle personnalisé :

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

  5. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.

  6. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez. Créer un formulaire de modèle secret scanning personnalisé

  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. 1. Une fois que vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier un modèle

  10. Si vous souhaitez activer la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez 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, consultez « Activation de l’secret scanning comme protection des envois (push) pour un référentiel ».
    • 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 envois (push) mis en évidence.

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 secret scanning alerts, consultez « Gestion des alertes d’secret scanning ».

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, cliquez sur votre photo de profil, puis sur Vos organisations. Vos organisations dans le menu Profil 2. En regard de l’organisation, cliquez sur Paramètres. Le bouton Paramètres

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

  3. Sous « Sécurité et analyse du code », recherchez « GitHub Advanced Security ». 1. Sous « Secret scanning », sous « Modèles personnalisés », cliquez sur Nouveau modèle. 1. Entrez les détails de votre nouveau modèle personnalisé :

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

  5. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.

  6. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez. Créer un formulaire de modèle secret scanning personnalisé

  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. Capture d’écran montrant les référentiels sélectionnés pour le test
    • 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. Capture d’écran montrant les référentiels sélectionnés pour le test
  9. Lorsque vous êtes prêt à tester votre nouveau modèle personnalisé, cliquez sur Exécuter. 1. 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

  10. 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. 1. Une fois que vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier un modèle

  11. Si vous souhaitez activer la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez sur Activer.

    Remarque :

    • 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 « Activation de l’secret scanning comme protection des envois (push) pour une organisation ».
    • 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 envois (push) mis en évidence.

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 secret scanning alerts, consultez « Gestion des alertes d’secret scanning ».

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

Remarques :

  • Au niveau de l’entreprise, seul le créateur d’un modèle personnalisé peut le modifier et l’utiliser dans un essai à blanc.
  • Des propriétaires d’entreprise ne peuvent utiliser que des essais à blancs sur des dépôts auxquels ils ont accès, et n’ont pas nécessairement accès à la totalité des organisations ou dépôts au sein de l’entreprise.
  1. Dans le coin supérieur droit de GitHub.com, cliquez sur votre photo de profil, puis sur Vos entreprises. « Vos entreprises » dans le menu déroulant de la photo de profil sur GitHub Enterprise Cloud

  2. Dans la liste des entreprises, cliquez sur l’entreprise que vous souhaitez afficher. Nom d’une entreprise dans la liste de vos entreprises

  3. Dans la barre latérale d’entreprise, cliquez sur Stratégies. Onglet Stratégies dans la barre latérale du compte d’entreprise 1. Sous Stratégies, cliquez sur « Sécurité et analyse du code ». Capture d’écran des stratégies de « Sécurité et analyse du code » dans la barre latérale

  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é :

    1. 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.
    2. Vous pouvez cliquer sur Autres options pour fournir tout autre contenu environnant ou des exigences de correspondance supplémentaires pour le format du secret.
    3. Fournissez un exemple de chaîne de test pour vérifier que votre configuration correspond aux modèles que vous attendez. Créer un formulaire de modèle secret scanning personnalisé
  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. Capture d’écran montrant les référentiels sélectionnés pour le test

  9. Lorsque vous êtes prêt à tester votre nouveau modèle personnalisé, cliquez sur Exécuter. 1. 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

  10. 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. 1. Une fois que vous êtes satisfait de votre nouveau modèle personnalisé, cliquez sur Publier un modèle

  11. Si vous souhaitez activer la protection des envois (push) pour votre modèle personnalisé (facultatif), cliquez sur Activer.

    Remarque :

    • 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 « Activation de l’secret scanning comme protection des envois (push) pour l’entreprise ».
    • 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 envois (push) mis en évidence.

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 secret scanning alerts, consultez « Gestion des alertes d’secret scanning ».

Modification d’un modèle personnalisé

Quand vous enregistrez une modification apportée à un modèle personnalisé, toutes les secret scanning alerts 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 poussées pour les modèles personnalisés s’applique uniquement aux dépôts sur lesquels l’secret scanning est activée comme protection des poussées. Pour plus d’informations sur l’activation de la protection des poussées, consultez « Protection des poussées (push) avec l’analyse des secrets ».
    • L’activation de la protection des poussées 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 des envois (push) mis en évidence.

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.

    Confirmation de la suppression d’un modèle d’secret scanning