Skip to main content

Gestion de l’accès aux exécuteurs auto-hébergés à l’aide de groupes

Vous pouvez utiliser des stratégies pour limiter l’accès aux exécuteurs autohébergés qui ont été ajoutés à une organisation ou une entreprise.

Qui peut utiliser cette fonctionnalité ?

Enterprise accounts, organizations owned by enterprise accounts, and organizations using GitHub Team or GitHub Free plans can create and manage additional runner groups using self-hosted runners.

Remarque : Les exécuteurs hébergés sur GitHub ne sont pas pris en charge sur GitHub Enterprise Server. Vous pouvez voir plus d’informations sur le support futur planifié dans la GitHub public roadmap.

À propos des groupes d’exécuteurs

Pour contrôler l'accès aux exécuteurs au niveau de l'organisation, les organisations utilisant le plan GitHub Team peuvent utiliser des groupes d’exécuteurs. Des groupes d’exécuteurs sont utilisés pour collecter des ensembles d’exécuteurs et créer une limite de sécurité autour de ceux-ci.

Lorsque vous octroyez l’accès à un groupe d’exécuteurs, vous pouvez voir le groupe d’exécuteurs répertorié dans les paramètres des exécuteurs de l’organisation. Vous pouvez éventuellement attribuer au groupe d’exécuteurs des stratégies d’accès supplémentaires au référentiel et aux workflows.

Quand de nouveaux exécuteurs sont créés, ils sont automatiquement affectés au groupe par défaut, sauf spécification contraire. Les exécuteurs peuvent appartenir à un seul groupe à la fois. Vous pouvez déplacer des exécuteurs d’un groupe d’exécuteurs vers un autre. Pour plus d’informations, consultez « Déplacement d’un exécuteur vers un groupe ».

Pour plus d’informations sur la façon de router des travaux vers des exécuteurs d’un groupe spécifique, consultez « Choix de l’exécuteur pour un travail ».

Création d’un groupe d’exécuteurs auto-hébergés pour une organisation

Avertissement : Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.

Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».

Remarque : quand vous créez un groupe d’exécuteurs, vous devez choisir une stratégie qui définit les référentiels et les flux de travail ayant accès au groupe d’exécuteurs. Pour modifier la liste de référentiels et flux de travail ayant accès au groupe d’exécuteurs, les propriétaires d'organisation peuvent définir une stratégie pour l’organisation. Pour plus d’informations, consultez « Application de stratégies pour GitHub Actions dans votre entreprise ».

Toutes les organisations disposent d’un seul groupe d’exécuteurs par défaut. Les propriétaires d’organisation peuvent créer des groupes d’exécuteurs supplémentaires au niveau de l’organisation.

Si aucun groupe n’est spécifié pendant le processus d’inscription, les exécuteurs sont automatiquement ajoutés au groupe par défaut. Vous pouvez déplacer ultérieurement l’exécuteur du groupe par défaut vers un groupe personnalisé. Pour plus d’informations, consultez « Déplacement d’un exécuteur vers un groupe ».

Pour obtenir des informations sur la façon de créer un groupe d’exécuteurs avec l’API REST, consultez « Points de terminaison REST pour l’API GitHub Actions ».

  1. Sur GitHub, 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 des onglets dans le profil d’une organisation. L’onglet « Paramètres » est présenté en orange foncé.

  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Groupes d’exécuteurs.

  4. Dans la section « Groupes d’exécuteurs », cliquez sur Nouveau groupe d’exécuteurs.

  5. Entrez un nom pour votre groupe d’exécuteurs.

  6. Affectez une stratégie d’accès au dépôt.

    Vous pouvez configurer un groupe d’exécuteurs pour qu’il soit accessible à une liste spécifique de référentiels ou à l’ensemble des référentiels de l’organisation. Par défaut, seuls les dépôts privés peuvent accéder aux exécuteurs dans un groupe d’exécuteurs, mais vous pouvez remplacer cette autorisation. Ce paramètre ne peut pas être remplacé si vous configurez un groupe d’exécuteurs d’une organisation qui a été partagé par une entreprise.

  7. Affectez une stratégie d’accès au workflow.

    Vous pouvez configurer un groupe d’exécuteurs pour qu’il soit accessible à une liste spécifique de workflows ou à tous les workflows. Ce paramètre ne peut pas être remplacé si vous configurez un groupe d’exécuteurs d’une organisation, qui a été partagé par une entreprise. Si vous spécifiez quel est le workflow qui peut accéder au groupe d’exécuteurs, vous devez utiliser le chemin complet du workflow, notamment le nom et le propriétaire du dépôt. De plus, vous devez épingler le workflow à une branche, une étiquette ou un algorithme SHA complet. Par exemple : octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Seuls les travaux directement définis dans les workflows sélectionnés ont accès au groupe d’exécuteurs. Les groupes d’exécuteurs définis au niveau d’une organisation ne peuvent pas accéder aux workflows d’une autre organisation dans l’entreprise. Au lieu de cela, vous devez définir un groupe d’exécuteurs au niveau de la grande entreprise. 1. Cliquez sur Créer un groupe pour créer le groupe et appliquer la stratégie.

Création d’un groupe d’exécuteurs auto-hébergés pour une grande entreprise

Avertissement : Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.

Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».

Les grandes entreprises peuvent ajouter leurs exécuteurs à des groupes à des fins de gestion des accès. Les grandes entreprises peuvent créer des groupes d’exécuteurs accessibles à des organisations spécifiques ou à des workflows spécifiques dans le compte d’entreprise. Les propriétaires d’organisation peuvent ensuite affecter aux groupes d’exécuteurs de l’entreprise des stratégies d’accès supplémentaires précises aux dépôts ou aux workflows. Pour obtenir des informations sur la façon de créer un groupe d’exécuteurs avec l’API REST, consultez les points de terminaison d’entreprise dans l’API REST GitHub Actions.

Si aucun groupe n’est spécifié pendant le processus d’inscription, les exécuteurs sont automatiquement ajoutés à un groupe par défaut. Vous pouvez déplacer ultérieurement l’exécuteur du groupe par défaut vers un groupe personnalisé. Pour plus d’informations, consultez « Déplacement d’un exécuteur vers un groupe ».

Lors de la création d’un groupe, vous devez choisir une stratégie qui définit les organisations qui ont accès au groupe d’exécuteurs.

  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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Groupes d’exécuteurs.

  5. Cliquez sur Nouveau groupe d’exécuteurs.

  6. Sous « Nom du groupe », tapez un nom pour votre groupe d’exécuteurs.

  7. Pour choisir une stratégie pour l’accès des organisations, sélectionnez le menu déroulant Accès des organisations et cliquez sur une stratégie. Vous pouvez configurer un groupe d’exécuteurs pour qu’il soit accessible à une liste spécifique d’organisations ou à toutes les organisations de la grande entreprise. Par défaut, seuls les dépôts privés peuvent accéder aux exécuteurs dans un groupe d’exécuteurs, mais vous pouvez changer cela.

  8. Affectez une stratégie d’accès au workflow.

    Vous pouvez configurer un groupe d’exécuteurs pour qu’il soit accessible à une liste spécifique de workflows ou à tous les workflows. Ce paramètre ne peut pas être remplacé si vous configurez un groupe d’exécuteurs d’une organisation, qui a été partagé par une entreprise. Si vous spécifiez quel est le workflow qui peut accéder au groupe d’exécuteurs, vous devez utiliser le chemin complet du workflow, notamment le nom et le propriétaire du dépôt. De plus, vous devez épingler le workflow à une branche, une étiquette ou un algorithme SHA complet. Par exemple : octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Seuls les travaux directement définis dans les workflows sélectionnés ont accès au groupe d’exécuteurs.

  9. Cliquez sur Enregistrer le groupe pour créer le groupe et appliquer la stratégie.

Changer les organisations qui peuvent accéder à un groupe d’exécuteurs

Avertissement : Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.

Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».

Pour les groupes d’exécuteurs d’une entreprise, vous pouvez changer les organisations de l’entreprise qui peuvent accéder à un groupe d’exécuteurs.

  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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Groupes d’exécuteurs.

  5. Sous « Accès à l’organisation », utilisez le menu déroulant pour cliquer sur Organisations sélectionnées.

    1. À droite du menu déroulant, cliquez sur .
    2. Dans la fenêtre contextuelle, cochez les cases pour sélectionner les organisations qui peuvent utiliser ce groupe d’exécuteurs.
  6. Cliquez sur Enregistrer le groupe.

Changer les dépôts qui peuvent accéder à un groupe d’exécuteurs

Avertissement : Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.

Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».

Pour les groupes d’exécuteurs d’une organisation, vous pouvez changer les dépôts qui peuvent accéder à un groupe d’exécuteurs.

  1. Accédez à la page principale de l’organisation où se trouvent vos groupes d’exécuteurs.

  2. Cliquez sur Paramètres.

  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Groupes d’exécuteurs.

  4. Dans la liste des groupes, cliquez sur le groupe d’exécuteurs à configurer.

  5. Sous « Accès au référentiel », utilisez le menu déroulant pour cliquer sur Référentiels sélectionnés.

    1. À droite du menu déroulant, cliquez sur .
    2. Dans la fenêtre contextuelle, cochez les cases pour sélectionner les référentiels qui peuvent accéder à ce groupe d’exécuteurs.
  6. Cliquez sur Enregistrer le groupe.

Changer les workflows qui peuvent accéder à un groupe d’exécuteurs

Avertissement : Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.

Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».

Vous pouvez configurer un groupe d’exécuteurs pour exécuter les workflows sélectionnés ou tous les workflows. Par exemple, vous pouvez utiliser ce paramètre pour protéger les secrets stockés sur des exécuteurs ou pour normaliser les workflows de déploiement en limitant un groupe d’exécuteurs pour qu’il exécute uniquement un workflow réutilisable spécifique. Ce paramètre ne peut pas être remplacé si vous configurez un groupe d’exécuteurs d’une organisation qui a été partagé par une grande entreprise.

Changer les workflows qui peuvent accéder à un groupe d’exécuteurs d’une organisation

  1. Accédez à la page principale de l’organisation où se trouvent vos groupes d’exécuteurs.

  2. Cliquez sur Paramètres.

  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Groupes d’exécuteurs.

  4. Dans la liste des groupes, cliquez sur le groupe d’exécuteurs à configurer.

  5. Sous Accès aux workflows, sélectionnez le menu déroulant, puis cliquez sur Workflows sélectionnés.

  6. Cliquez sur .

  7. Entrez une liste séparée par des virgules des workflows qui peuvent accéder au groupe d’exécuteurs. Utilisez le chemin d’accès complet, y compris le nom et le propriétaire du dépôt. Épinglez le workflow à une branche, à une étiquette ou à un algorithme SHA complet. Par exemple : octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Seuls les travaux définis directement dans les workflows sélectionnés auront accès au groupe d’exécuteurs.

    Les groupes d’exécuteurs définis au niveau d’une organisation ne peuvent pas accéder aux workflows d’une autre organisation dans la grande entreprise. Au lieu de cela, vous devez définir un groupe d’exécuteurs au niveau de la grande entreprise.

  8. Cliquez sur Enregistrer.

Changer les workflows qui peuvent accéder à un groupe d’exécuteurs d’une 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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Groupes d’exécuteurs.

  5. Dans la liste des groupes, cliquez sur le groupe d’exécuteurs à configurer.

  6. Sous Accès aux workflows, sélectionnez le menu déroulant, puis cliquez sur Workflows sélectionnés.

  7. Cliquez sur .

  8. Entrez une liste séparée par des virgules des workflows qui peuvent accéder au groupe d’exécuteurs. Utilisez le chemin d’accès complet, y compris le nom et le propriétaire du dépôt. Épinglez le workflow à une branche, à une étiquette ou à un algorithme SHA complet. Par exemple : octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main.

    Seuls les travaux définis directement dans les workflows sélectionnés auront accès au groupe d’exécuteurs.

    Les groupes d’exécuteurs définis au niveau d’une organisation ne peuvent pas accéder aux workflows d’une autre organisation dans la grande entreprise. Au lieu de cela, vous devez définir un groupe d’exécuteurs au niveau de la grande entreprise.

  9. Cliquez sur Enregistrer.

Modification du nom d’un groupe d’exécuteurs

Vous pouvez modifier le nom de vos groupes d’exécuteurs au niveau de l’entreprise et de l’organisation.

Modification du nom d’un groupe d’exécuteurs d’organisation

  1. Accédez à la page principale de l’organisation où se trouvent vos groupes d’exécuteurs.
  2. Cliquez sur Paramètres.
  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Groupes d’exécuteurs.
  4. Dans la liste des groupes, cliquez sur le groupe d’exécuteurs à configurer.
  5. Entrez le nom du nouveau groupe d’exécuteurs dans le champ de texte sous « Nom du groupe ».
  6. Cliquez sur Enregistrer.

Modification du nom d’un groupe d’exécuteurs d’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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Groupes d’exécuteurs.

  5. Dans la liste des groupes, cliquez sur le groupe d’exécuteurs à configurer.

  6. Entrez le nom du nouveau groupe d’exécuteurs dans le champ de texte sous « Nom du groupe ».

  7. Cliquez sur Enregistrer.

Ajout automatique d’un exécuteur auto-hébergé à un groupe

Vous pouvez utiliser le script de configuration pour ajouter automatiquement un nouvel exécuteur à un groupe. Par exemple, cette commande inscrit un nouvel exécuteur et utilise le paramètre --runnergroup pour l’ajouter à un groupe nommé rg-runnergroup.

./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup

La commande échoue si le groupe d’exécuteurs n’existe pas :

Could not find any self-hosted runner group named "rg-runnergroup".

Déplacement d’un exécuteur auto-hébergé vers un groupe

Si vous ne spécifiez pas de groupe d’exécuteurs pendant le processus d’inscription, vos nouveaux exécuteurs sont automatiquement affectés au groupe par défaut et peuvent ensuite être déplacés vers un autre groupe.

Déplacement d’un exécuteur d’une organisation vers un groupe

  1. Sur GitHub, 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 des onglets dans le profil d’une organisation. L’onglet « Paramètres » est présenté en orange foncé.

  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Exécuteurs.

  4. Dans la liste « Exécuteurs », cliquez sur l’exécuteur que vous souhaitez configurer.

  5. Sélectionnez la liste déroulante Groupe d’exécuteurs.

  6. Dans « Déplacer l’exécuteur vers le groupe », choisissez un groupe de destination pour l’exécuteur.

Déplacement d’un exécuteur d’une entreprise vers un groupe

  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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Exécuteurs.

  5. Dans la liste « Exécuteurs », cliquez sur l’exécuteur que vous souhaitez configurer.

  6. Sélectionnez la liste déroulante Groupe d’exécuteurs.

  7. Dans « Déplacer l’exécuteur vers le groupe », choisissez un groupe de destination pour l’exécuteur.

Suppression d’un groupe d’exécuteurs auto-hébergés

Pour pouvoir supprimer un groupe d’exécuteurs, vous devez d’abord déplacer ou supprimer tous les exécuteurs du groupe.

Suppression d’un groupe d’exécuteurs d’une organisation

  1. Accédez à la page principale de l’organisation où se trouvent vos groupes d’exécuteurs.
  2. Cliquez sur Paramètres.
  3. Dans la barre latérale gauche, cliquez sur Actions, puis sur Groupes d’exécuteurs.
  4. Dans la liste des groupes, à droite du groupe à supprimer, cliquez sur .
  5. Pour supprimer le groupe, cliquez sur Supprimer le groupe.
  6. Passez en revue les invites de confirmation, puis cliquez sur Supprimer ce groupe d’exécuteurs.

Suppression d’un groupe d’exécuteurs d’une 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 d’entreprise » est mise en évidence avec un contour orange foncé.

  2. Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.

  3. Sous « Stratégies  », cliquez sur Actions.

  4. Cliquez sur l’onglet Groupes d’exécuteurs.

  5. Dans la liste des groupes, à droite du groupe à supprimer, cliquez sur .

  6. Pour supprimer le groupe, cliquez sur Supprimer le groupe.

  7. Passez en revue les invites de confirmation, puis cliquez sur Supprimer ce groupe d’exécuteurs.

Utilisation de noms uniques pour les groupes d’exécuteurs

GitHub Actions nécessite que les noms de groupes d’exécuteurs soient uniques au niveau de l’organisation. Cela signifie qu’une organisation ne peut plus créer de groupe d’exécuteurs portant le même nom qu’un autre au sein de l’entreprise. En outre, les utilisateurs voient une bannière d’avertissement sur tous les groupes d’exécuteurs qui partagent le même nom qu’un groupe dans l’entreprise, qui suggère que le groupe d’organisation doit être renommé.

Pour éviter toute ambiguïté, un workflow échoue s’il existe des groupes d’exécuteurs en double dans l’organisation et l’entreprise. Pour résoudre ce problème, vous pouvez renommer l’un de vos groupes d’exécuteurs dans l’organisation ou l’entreprise, ou mettre à jour votre fichier de workflow pour ajouter un préfixe au nom du groupe d’exécuteurs :

  • org/ ou organization/
  • ent/ ou enterprise/

Exemple : utilisation de préfixes pour différencier les groupes d’exécuteurs

Par exemple, si vous avez un groupe d’exécuteurs nommé my-group dans l’organisation et un autre nommé my-group dans l’entreprise, vous pouvez mettre à jour votre fichier de workflow pour utiliser org/my-group ou ent/my-group afin de les différencier.

Utilisation de org/:

runs-on:
  group: org/my-group
  labels: [ self-hosted, label-1 ]

Utilisation de ent/:

runs-on:
  group: ent/my-group
  labels: [ self-hosted, label-1 ]