Skip to main content

Collaboration dans une duplication (fork) privée temporaire pour résoudre une vulnérabilité de sécurité de dépôt

Vous pouvez créer une duplication (fork) privée temporaire pour collaborer en privé pour résoudre une faille de sécurité dans votre référentiel public.

Qui peut utiliser cette fonctionnalité ?

Propriétaires de référentiels, propriétaire d’organisations, gestionnaires de sécurité et utilisateurs avec le rôle d’administrateur

éléments réutilisables.security-advisory.repository-level-advisory-note %}

Prerequisites

Avant de pouvoir collaborer dans un fork privé temporaire, vous devez créer un projet de conseil de sécurité. Pour plus d’informations, consultez « Création d’un avis de sécurité de dépôt ».

Création d'un fork privé temporaire

Pour que les informations sur les vulnérabilités demeurent sécurisées, les intégrations, y compris l'intégration continue (CI), ne peuvent pas accéder aux forks privés temporaires.

  1. Dans la liste « Avis de sécurité », cliquez sur le nom de l'avis de sécurité pour lequel vous souhaitez créer un fork privé temporaire.

  2. Faites défiler jusqu'au bas du formulaire de conseils, puis cliquez sur Démarrer un fork privé temporaire.

    Capture d'écran de la zone « Collaborer sur un correctif en privé » du formulaire. Le bouton « Démarrer une bifurcation privée temporaire » est présenté en orange foncé.

    Un fork privé du dépôt est créé et affiché sur la page de consultation.

    La convention de nommage pour le fork privé est très similaire à la convention utilisée pour les avis dans GitHub Advisory Database et suit ce format : repo-ghsa-xxxx-xxxx-xxxx, où : * repo est le nom du dépôt. Pour rester sous la limite des 100 caractères pour les noms de dépôt, nous tronquons le nom du dépôt d'origine pour le ramener à 80 caractères. * xxxx-xxxx-xxxx est l'identificateur unique du brouillon de l'avis de sécurité : * x est une lettre ou un chiffre de l'ensemble suivant : 23456789cfghjmpqrvwx. * Les chiffres et les lettres sont attribués de manière aléatoire. * Les lettres et les chiffres sont tous en minuscules.

Par exemple, si vous créez une duplication privée temporaire dans un dépôt appelé octocat-repo et que l'ID généré automatiquement pour le brouillon de l'avis est GHSA-x854-cvjg-vx26, la duplication temporaire est appelée octocat-repo-ghsa-x854-cvjg-vx26.

Vous pouvez également utiliser l'API REST pour créer des fourchettes temporaires privées. Pour en savoir plus, reportez-vous à « Créer un fork temporaire privé » dans la documentation de l'API REST.

Ajout de collaborateurs à un fork privé temporaire

Toute personne disposant d'autorisations d'administrateur pour un avis de sécurité peut ajouter des collaborateurs à ce dernier, et les collaborateurs associés à l'avis de sécurité peuvent accéder au fork privé temporaire. Pour plus d’informations, consultez « Ajout d’un collaborateur à un avis de sécurité de dépôt ».

Ajout de modifications à un fork privé temporaire

Toute personne disposant d'autorisations d'écriture pour un avis de sécurité peut collaborer sur un correctif en apportant des modifications à un fork privé temporaire.

  1. Dans la liste « Avis de sécurité », cliquez sur le nom de l'avis de sécurité sur lequel vous souhaitez travailler.

  2. Vous pouvez effectuer vos modifications sur GitHub ou localement :

    • Pour apporter vos modifications sur , cliquez sur le fork privé temporaire sous « Collaborer sur un correctif ». Ensuite, créez une branche et modifiez des fichiers. Pour plus d’informations, consultez « Création et suppression de branches dans votre référentiel » et « Modification de fichiers ».
    • Pour ajouter des modifications localement, suivez les instructions indiquées sous « Cloner et créer une branche » et « Effectuer vos modifications, puis pousser ».

    Capture d'écran de la zone « Collaborer sur un correctif » d'un brouillon d'avis de sécurité. Le lien de la « bifurcation privée temporaire » est souligné en orange foncé.

Création d'une requête de tirage à partir d'un fork temporaire privé

Toute personne disposant des autorisations d'écriture pour un avis de sécurité peut créer une demande de fusion à partir d'un fork privé temporaire.

  1. Dans la liste « Avis de sécurité », cliquez sur le nom de l'avis de sécurité dans lequel vous souhaitez créer un pull request.

  2. Faites défiler l'écran jusqu'au bas du formulaire d'avis. Ensuite, sous « Collaborer sur un correctif », cliquez sur Comparer et créer un pull request pour la branche associée.

              ![Capture d'écran de la zone « Collaborer sur un correctif » d'un brouillon d'avis de sécurité. Le bouton « Comparer et effectuer une demande de tirage » est indiqué en orange foncé.](/assets/images/help/security/security-advisory-compare-and-pr.png)
    

« Ouvrir une pull request » comprend un en-tête qui montre les branches qui seront comparées dans une comparaison diff Git à trois points au moment de la création de la pull request. Pour plus d’informations, consultez « Comparaison des branches dans les pull requests ».

  1. Pour créer une demande de tirage (pull request) prête à être examinée, cliquez sur Créer une demande de tirage. Pour créer un brouillon de demande de tirage, utilisez la liste déroulante et sélectionnez Créer un brouillon de demande de tirage, puis cliquez sur Brouillon de demande de tirage. Si vous êtes membre d’une organisation, vous devrez peut-être demander l’accès au brouillon des demandes de tirage à partir d’un propriétaire d’organisation. Consultez À propos des demandes de tirage (pull requests).

Vous ne pouvez pas fusionner des demandes de tirage individuelles dans une duplication privée temporaire. À la place, vous fusionnez toutes les demandes de tirage ouvertes à la fois dans l’avis de sécurité correspondant. Pour plus d’informations, consultez « Fusion de modifications dans un avis de sécurité ».

Fusion de modifications dans un avis de sécurité

Toute personne disposant d'autorisations d'administrateur pour un avis de sécurité peut y fusionner des modifications.

Vous ne pouvez fusionner des modifications dans un avis de sécurité que si chaque requête de tirage ouverte dans la duplication privée temporaire doit être fusionnable. Pour que les informations sur les vulnérabilités soient sécurisées, les vérifications d'état ne s'exécutent pas sur les requêtes de tirage dans les forks privés temporaires. Pour plus d’informations, consultez « À propos des branches protégées ».

De plus, il ne peut y avoir aucun conflit de fusion, et GitHub n'applique aucune des règles de protection que vous avez peut-être configurées pour la branche vers laquelle vous essayez de fusionner les modifications.

  1. Dans la liste « Avis de sécurité », cliquez sur le nom de l'avis de sécurité auquel sont associées des modifications que vous souhaitez fusionner.
  2. Faites défiler l'écran jusqu'au bas du formulaire d'avis. Ensuite, sous « Cet notification est prête à être fusionnée », cliquez sur Fusionner les pull requests pour fusionner toutes les pull requests ouvertes dans le fork privé temporaire.

Capture d'écran de la zone « Collaborer sur un correctif » d'un brouillon d'avis de sécurité. Le bouton « Fusionner les pull requests » est encadré en orange foncé.

Remarque

Vous ne pouvez fusionner qu'une seule requête de tirage dans la branche main d'un fork privé temporaire. Si plusieurs demandes de tirage ciblent la branche main, la fusion est bloquée.

Après avoir fusionné les modifications dans un avis de sécurité, vous pouvez publier ce dernier pour alerter votre communauté sur la vulnérabilité de sécurité dans les versions précédentes de votre projet. Pour plus d’informations, consultez « Publication d’un avis de sécurité de dépôt ».

Lectures complémentaires

  •         [AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/permission-levels-for-repository-security-advisories)
    
  •         [AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/publishing-a-repository-security-advisory)