Skip to main content

Restriction de la visibilité des ports transférés

Vous pouvez définir des contraintes sur les options de visibilité que les utilisateurs peuvent choisir lorsqu’ils transfèrent des ports à partir d’espaces de codes dans votre organisation.

Qui peut utiliser cette fonctionnalité ?

To manage access to port visibility constraints for the repositories in an organization, you must be an owner of the organization.

Les organisations sur les plans GitHub Team et GitHub Enterprise peuvent payer l’utilisation de membres et de collaborateurs de GitHub Codespaces. Ces organisations peuvent ensuite accéder aux paramètres et aux stratégies qui s’appliquent aux codespaces payés par l’organisation. Pour plus d’informations, consultez « Choisir qui possède et achète les codespaces dans votre organisation » et « Plans de GitHub ».

Vue d’ensemble

En règle générale, dans un codespace, vous pouvez transférer des ports de manière privée (uniquement à vous-même), aux membres de votre organisation ou publiquement (à toute personne qui dispose de l’URL). Pour plus d’informations, consultez « Transfert de ports dans votre espace de code ».

En tant que propriétaire de l’organisation, vous pouvez configurer des contraintes sur les options de visibilité que les utilisateurs peuvent définir lors du transfert de ports. Par exemple, pour des raisons de sécurité, vous pouvez interdire le transfert de ports public. Pour cela, définissez une ou plusieurs stratégies dans les paramètres GitHub Codespaces de votre organisation.

Comportement quand vous définissez une contrainte de visibilité des ports

S’il existe des codespaces qui ne sont plus conformes à une stratégie que vous avez définie, ils continuent de fonctionner tant qu’ils ne sont pas arrêtés ou qu’ils n’ont pas expiré. Quand l’utilisateur reprend le codespace, il est soumis aux contraintes de la stratégie.

Remarque : Vous ne pouvez pas désactiver le transfert de ports privé, car il est exigé par GitHub Codespaces pour continuer à fonctionner normalement, par exemple pour transférer SSH sur le port 22.

Définition de stratégies spécifiques d’un dépôt à l’échelle de l’organisation

Quand vous créez une stratégie, vous choisissez si elle s’applique à tous les dépôts de votre organisation ou uniquement aux dépôts spécifiés. Si vous définissez une stratégie à l’échelle de l’organisation, alors toutes les stratégies que vous définissez pour des dépôts individuels doivent s’inscrire dans cet ensemble de restrictions au niveau de l’organisation. L’ajout de stratégies rend le choix des options de visibilité plus restrictif, et non moins restrictif.

Par exemple, vous pouvez créer une stratégie à l’échelle de l’organisation qui limite les options de visibilité à l’organisation uniquement. Vous pouvez ensuite définir une stratégie pour le dépôt A qui interdit à la fois la visibilité publique et celle à l’échelle de l’organisation. Ainsi, seul le transfert de ports privé est disponible pour ce dépôt. Si vous définissez une stratégie pour le dépôt A qui autorise à la fois la visibilité publique et celle à l’échelle de l’organisation, seule la visibilité à l’échelle de l’organisation est disponible, car la stratégie à l’échelle de l’organisation n’autorise pas de visibilité publique.

Si vous ajoutez une stratégie à l’échelle de l’organisation, vous devez la définir sur l’option de visibilité la moins stricte disponible pour un dépôt au sein de votre organisation. Vous pouvez ensuite ajouter des stratégies plus précises pour un dépôt afin de restreindre encore ce choix.

Remarque : les stratégies relatives aux codespaces s’appliquent uniquement aux codespaces pour lesquels votre organisation est facturée. Si un utilisateur crée à ses propres frais un codespace pour un référentiel au sein de votre organisation, ce codespace ne sera pas soumis à ces politiques. Pour plus d’informations, consultez « Choisir qui possède et achète les codespaces dans votre organisation ».

Ajout d’une stratégie pour limiter les options de visibilité des ports

  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 « Code, planification et automatisation » de la barre latérale, sélectionnez Codespaces , puis cliquez sur Stratégies.

  4. Dans la page « Stratégies de codespaces », cliquez sur Créer une stratégie.

  5. Entrez un nom pour votre nouvelle stratégie.

  6. Cliquez sur Ajouter une contrainte et choisissez Visibilité des ports.

  7. Cliquez sur pour modifier la contrainte.

  8. Effacez la sélection des options de visibilité des ports (Organisation ou Publique) que vous ne souhaitez pas rendre disponibles.

    Capture d’écran de la liste déroulante « Valeurs autorisées », avec deux cases à cocher. « Org » est sélectionné et « Public » est effacé.

  9. Cliquez en dehors de la boîte de dialogue pour la fermer.

  10. Par défaut, la stratégie est définie pour s’appliquer à tous les dépôts. Si vous souhaitez qu’elle s’applique uniquement à certains des dépôts de votre organisation, cliquez sur Tous les dépôts, puis sur Dépôts sélectionnés dans le menu déroulant.

    Capture d’écran de la liste déroulante de sélection des référentiels, montrant les options « Tous les référentiels » et « Référentiels sélectionnés ».

    Remarque : si vous ajoutez une contrainte à une stratégie existante contenant déjà la contrainte « Nombre maximal de codespaces par utilisateur », vous ne pourrez pas appliquer la stratégie aux référentiels sélectionnés. En effet, la contrainte « Nombre maximal de codespaces par utilisateur » s’applique toujours à tous les référentiels de l’organisation.

    Avec le choix Dépôts sélectionnés :

    1. Cliquez sur .

      Capture d’écran de l’icône des paramètres (symbole d’engrenage) à gauche d’un bouton intitulé « Référentiels sélectionnés ».

    2. Sélectionnez les dépôts auxquels vous souhaitez appliquer cette stratégie.

    3. En bas de la liste des dépôts, cliquez sur Sélectionner des dépôts.

      Capture d’écran d’une liste de référentiels, chacun avec une case à cocher. Trois référentiels sont sélectionnés.

  11. Pour ajouter une autre contrainte à la stratégie, cliquez sur Ajouter une contrainte et choisissez une autre contrainte. Pour plus d’informations sur les autres contraintes, consultez :

  12. Une fois que vous avez terminé d’ajouter des contraintes à votre stratégie, cliquez sur Enregistrer.

La stratégie sera appliquée à tous les nouveaux codespaces facturables à votre organisation. La contrainte de visibilité des ports est également appliquée aux codespaces existants lors de leur prochain démarrage.

Modification d’une stratégie

Vous pouvez modifier une stratégie existante. Par exemple, vous avez peut-être besoin d’ajouter ou de supprimer des contraintes dans une stratégie.

  1. Affichez la page « Stratégies de codespaces ». Pour plus d’informations, consultez « Ajout d’une stratégie pour limiter les options de visibilité des ports ».
  2. Cliquez sur le nom de la stratégie à modifier.
  3. À côté de la contrainte « Visibilité des ports », cliquez sur .
  4. Apportez les changements nécessaires, puis cliquez sur Enregistrer.

Suppression d’une stratégie

  1. Affichez la page « Stratégies de codespaces ». Pour plus d’informations, consultez « Ajout d’une stratégie pour limiter les options de visibilité des ports ».

  2. Cliquez sur à droite de la stratégie que vous souhaitez supprimer.

    Capture d’écran d’une stratégie avec le bouton Supprimer (icône corbeille) mis en surbrillance avec un contour orange foncé.