Skip to main content

Application de stratégies pour GitHub Actions dans votre entreprise

Vous pouvez appliquer des stratégies pour GitHub Actions au sein des organisations de votre entreprise ou autoriser la définition de stratégies dans chaque organisation.

Qui peut utiliser cette fonctionnalité ?

Enterprise owners can enforce policies for GitHub Actions in an enterprise.

À propos des stratégies pour GitHub Actions dans votre entreprise

GitHub Actions permet aux membres de votre entreprise d’automatiser les workflows de développement sur GitHub Enterprise Server. Pour plus d’informations, consultez « Comprendre GitHub Actions ».

Si vous activez GitHub Actions, toute organisation qui se trouve sur votre instance GitHub Enterprise Server peut utiliser GitHub Actions. Vous pouvez appliquer des stratégies pour contrôler la façon dont les membres de votre entreprise sur GitHub Enterprise Server utilisent GitHub Actions. Par défaut, les propriétaires d'organisation peuvent gérer la façon dont les membres utilisentGitHub Actions. Pour plus d’informations, consultez « Désactivation ou limitation de la fonctionnalité GitHub Actions pour votre organisation ».

Application d’une stratégie pour restreindre l’utilisation de GitHub Actions dans votre entreprise

Vous pouvez choisir de désactiver GitHub Actions pour toutes les organisations de votre entreprise ou d’autoriser uniquement des organisations spécifiques. Vous pouvez également limiter l’utilisation des actions publiques , afin que les utilisateurs ne puissent utiliser que des actions locales qui existent dans votre 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. Sous « Stratégies », sélectionnez vos options.

    Si vous choisissez Autoriser les actions sélectionnées, les actions au sein de votre entreprise sont autorisé(e)s, et il existe d’autres options pour autoriser d’autres actions spécifiques. Pour plus d’informations, consultez « Autorisation de l’exécution des actions sélectionnées ».

    Remarque : pour autoriser l’accès aux actions publiques, vous devez d’abord configurer votre instance GitHub Enterprise Server de sorte qu’il se connecte à GitHub.com. Pour plus d’informations, consultez « Activer l’accès automatique aux actions GitHub.com à l’aide de GitHub Connect ».

  5. Cliquez sur Enregistrer.

Autorisation de l’exécution des actions sélectionnées

Si vous choisissez Autoriser les actions sélectionnées, les actions locales sont autorisés. Il existe d’autres options pour autoriser d’autres actions spécifiques :

Remarque : Vous ne pourrez peut-être pas gérer ces paramètres si votre organisation a une stratégie de substitution ou est gérée par une entreprise qui a remplacé la stratégie. Pour plus d'informations, consultez « Désactivation ou limitation de la fonctionnalité GitHub Actions pour votre organisation » ou « Application de stratégies pour GitHub Actions dans votre entreprise ».

  • Autoriser les actions créées par GitHub : vous pouvez autoriser l’utilisation de toutes les actions créées par GitHub par les workflows. Les actions créées par GitHub se trouvent dans les organisations actions et github. Pour plus d’informations, consultez les organisations actions et github.

  • Autoriser les actions de la Place de marché par les créateurs vérifiés : Cette option est disponible si vous avez activé et configuré GitHub Connect avec GitHub Actions. Pour plus d’informations, consultez « Activer l’accès automatique aux actions GitHub.com à l’aide de GitHub Connect ». Vous pouvez autoriser toutes les actions GitHub Marketplace créées par les créateurs vérifiés à utiliser par les workflows. Lorsque GitHub a vérifié le créateur de l’action en tant qu’organisation partenaire, le badge s’affiche en regard de l’action dans GitHub Marketplace.

  • Autoriser les actions spécifiées : vous pouvez limiter les workflows à l’utilisation d’actions dans des organisations et des dépôts spécifiques. Les actions spécifiées ne peuvent pas être définies sur plus de 1 000.

    Pour limiter l’accès à des étiquettes spécifiques ou valider des SHA d’une action, utilisez la même syntaxe que celle utilisée dans le workflow pour sélectionner l’action.

    • Pour une action, la syntaxe est OWNER/REPOSITORY@TAG-OR-SHA. Par exemple, utilisez actions/javascript-action@v1.0.1 pour sélectionner une étiquette ou actions/javascript-action@a824008085750b8e136effc585c3cd6082bd575f pour sélectionner un SHA. Pour plus d’informations, consultez « Recherche et personnalisation d’actions ».

    Vous pouvez utiliser le caractère générique *pour faire correspondre les modèles. Par exemple, pour autoriser toutes les actions dans les organisations qui commencent par space-org, vous pouvez spécifier space-org*/*. Pour autoriser toutes les actions dans les dépôts qui commencent par octocat, vous pouvez utiliser */octocat**@*. Pour plus d’informations sur l’utilisation du caractère générique *, consultez « Workflow syntax for GitHub Actions ».

Cette procédure montre comment ajouter des actions spécifiques à la liste d’autorisations.

  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. Sous « Stratégies », sélectionnez Autoriser les actions sélectionnées et ajoutez vos actions requises à la liste.

Désactivation des exécuteurs auto-hébergés au niveau du dépôt

Rien ne garantit que les exécuteurs auto-hébergés pour GitHub Enterprise Server seront hébergés sur des machines virtuelles éphémères propres. Par conséquent, ils peuvent être compromis par du code non approuvé dans un workflow.

De même, toute personne pouvant dupliquer le dépôt et ouvrir une demande de tirage (généralement celles qui ont un accès en lecture au dépôt) peut compromettre l’environnement des exécuteurs auto-hébergés, notamment en accédant aux secrets et au GITHUB_TOKEN qui, en fonction de ses paramètres, permet d’octroyer l’accès en écriture au dépôt. Bien que les workflows puissent contrôler l’accès aux secrets d’environnement à l’aide d’environnements et de révisions nécessaires, ces workflows ne sont pas exécutés dans un environnement isolé et encourent toujours les mêmes risques lors de l’exécution sur un exécuteur auto-hébergé.

Pour ces raisons, entre autres, vous pouvez décider d’empêcher les utilisateurs de créer des exécuteurs auto-hébergés au niveau du dépôt. Pour plus d’informations sur la création d’exécuteurs auto-hébergés au niveau du dépôt, consultez « Ajout d’exécuteurs auto-hébergés ».

Par défaut, toute personne disposant d’un accès administrateur à un dépôt peut ajouter un exécuteur auto-hébergé pour le dépôt. Les paramètres d’entreprise vous permettent de désactiver l’utilisation d’exécuteurs auto-hébergés au niveau du dépôt sur tous les dépôts de votre entreprise. Si vous autorisez les exécuteurs auto-hébergés au niveau du référentiel pour votre entreprise, les propriétaires d’organisation peuvent choisir d’autoriser ou d’empêcher la création d’exécuteurs auto-hébergés au niveau du référentiel pour certains ou la totalité des référentiels dans leur organisation. Pour plus d’informations, consultez « Désactivation ou limitation de la fonctionnalité GitHub Actions pour votre organisation ».

Remarque : Lorsque la création d’exécuteurs auto-hébergés au niveau du dépôt est désactivée, les workflows peuvent quand même accéder aux exécuteurs auto-hébergés qui ont été configurés au niveau de l’entreprise ou de l’organisation.

  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. Dans la section « Exécuteurs », sélectionnez Désactiver pour toutes les organisations.

  5. Cliquez sur Enregistrer pour appliquer la modification.

Application d’une stratégie pour la conservation des artefacts et des journaux dans votre entreprise

GitHub Actions peut stocker des artefacts et des fichiers journaux. Pour plus d’informations, consultez « Téléchargement d’artefacts de workflow ».

Par défaut, les artefacts et les fichiers journaux générés par les workflows sont conservés pendant 90 jours avant d’être automatiquement supprimés. Vous pouvez changer cette période de conservation en la remplaçant par une valeur comprise entre 1 jour et 400 jours.

Quand vous personnalisez la période de conservation, elle s’applique uniquement aux nouveaux artefacts et fichiers journaux, elle ne s’applique pas rétroactivement aux objets existants. Pour les organisations et dépôts managés, la période de conservation maximale ne peut pas dépasser la limite définie par l’organisation ou l’entreprise responsable.

  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. Dans la section « Paramètres d’artefact, de journal et de cache », sous Conservation des artefacts et des journaux, entrez une nouvelle valeur.

  5. Cliquez sur Enregistrer pour appliquer la modification.

Application d’une stratégie pour les demandes de tirage (pull request) de duplication (fork) dans votre entreprise

Vous pouvez appliquer des stratégies de façon à contrôler le comportement de GitHub Actions pour votre instance GitHub Enterprise Server quand les membres de votre entreprise exécutent des workflows à partir de duplications (fork).

Application d’une stratégie pour les demandes de tirage de duplication dans des dépôts privés

Si vous vous appuyez sur l’utilisation de duplications de vos référentiels privés, vous pouvez configurer des stratégies qui contrôlent la façon dont des utilisateurs peuvent exécuter des workflow sur des événements pull_request. Quant aux paramètres de stratégie disponibles uniquement pour les dépôts privés et internes, vous pouvez les configurer pour votre entreprise, des organisations ou des dépôts.

Si une stratégie est activée pour une entreprise, elle peut être désactivée de manière sélective dans des organisations ou dépôts individuels. Si une stratégie est désactivée pour une entreprise, les organisations ou dépôts individuels ne peuvent pas l’activer.

  • Exécuter des workflows à partir de demandes de tirage de duplication : permet aux utilisateurs d’exécuter des workflows à partir de demandes de tirage de duplication, avec une autorisation GITHUB_TOKEN en lecture seule et sans accès aux secrets.
  • Envoyer des jetons d’écriture aux workflows à partir de demandes de tirage : permet aux demandes de tirage provenant de duplications d’utiliser un GITHUB_TOKEN avec autorisation d’accès en écriture.
  • Envoyer des secrets aux workflows à partir de demandes de tirage : rend tous les secrets disponibles pour la demande de tirage.
  • Exiger l’approbation des workflows de demande de tirage (pull request) - Les exécutions de workflow sur des demandes de tirage provenant de collaborateurs sans autorisation d'écriture devront être approuvées par une personne disposant d'une autorisation d'écriture avant d'être exécutées.
  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. Sous Dupliquer les workflows de demande de tirage, sélectionnez vos options.

  5. Cliquez sur Enregistrer pour appliquer les paramètres.

Application d’une stratégie pour les autorisations de workflow dans votre entreprise

Vous pouvez définir les autorisations par défaut accordées au GITHUB_TOKEN. Pour plus d’informations sur GITHUB_TOKEN, consultez « Authentification par jeton automatique ». Vous pouvez choisir un ensemble restreint d’autorisations par défaut, ou appliquer des paramètres permissifs.

Vous pouvez définir les autorisations par défaut pour GITHUB_TOKEN dans les paramètres de votre entreprise, de vos organisations ou de vos dépôts. Si vous choisissez un option restreinte comme option par défaut dans les paramètres de votre entreprise, ceci empêche de choisir un paramètre plus permissif dans les paramètres de l’organisation ou du dépôt.

Toute personne disposant d’un accès en écriture à un dépôt peut modifier les autorisations accordées au GITHUB_TOKEN en ajoutant ou supprimant l’accès selon le besoin, en modifiant la clé permissions dans le fichier de workflow. Pour plus d’informations, consultez permissions.

Configuration des autorisations GITHUB_TOKEN par défaut

Par défaut, GITHUB_TOKEN dispose seulement d’un accès en lecture sur les étendues contents et packages lorsque vous créez 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. Sous « Autorisations de workflow », indiquez si vous souhaitez que le GITHUB_TOKEN ait un accès en lecture et en écriture pour toutes les étendues (le paramètre permissif) ou simplement un accès en lecture pour l’étendue contentset les étendues packages (le paramètre restrictif).

  5. Cliquez sur Enregistrer pour appliquer les paramètres.

Empêcher GitHub Actions de créer ou d'approuver des demandes de tirage

Vous pouvez choisir d’autoriser ou d’empêcher les workflows GitHub Actions de créer ou d’approuver les demandes de tirage (pull request).

Par défaut, les workflows ne sont pas autorisés à créer ni à approuver des demandes de tirage (pull request) lorsque vous créez 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. Sous « Autorisations de workflow », utilisez le paramètre Autoriser GitHub Actions à créer et à approuver des demandes de tirage pour configurer si GITHUB_TOKEN peut créer et approuver des demandes de tirage.

  5. Cliquez sur Enregistrer pour appliquer les paramètres.

Application d’une stratégie pour le stockage de cache dans votre entreprise

Par défaut, le stockage total du cache que GitHub Actions utilise sur le stockage externe pour votre instance GitHub Enterprise Server est limité à un maximum de 10 Go par référentiel, et la taille maximale autorisée pouvant être définie pour un référentiel est de 25 Go. Si vous dépassez la limite, GitHub enregistrera le nouveau cache, mais commencera à écarter les caches jusqu’à ce que la taille totale soit inférieure à la limite du dépôt.

Toutefois, vous pouvez définir une stratégie d’entreprise pour personnaliser la taille totale par défaut du cache pour chaque dépôt, ainsi que la taille totale maximale du cache autorisée pour un dépôt. Par exemple, vous pourriez souhaiter que la taille totale par défaut du cache soit de 5 Go pour chaque référentiel, tout en permettant aux propriétaires d’organisation et aux administrateurs du référentiel de configurer une taille totale de cache de 15 Go si nécessaire.

Les propriétaires d’organisation peuvent définir une taille totale de cache inférieure qui s’applique à chaque référentiel de leur organisation. Les personnes disposant d’un accès administrateur à un référentiel ont la possibilité de définir pour leur référentiel la taille totale de cache de leur choix dans la limite de la taille maximale autorisée par le paramètre de stratégie de l’entreprise ou de l’organisation.

  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. Dans la section « Paramètres d’artefact, de journal et de cache », entrez une valeur sous Taille maximale du cache, puis cliquez sur Enregistrer pour appliquer le paramètre.

  5. Dans la section « Paramètres d’artefact, de journal et de cache », entrez une valeur sous Limite de taille par défaut du cache, puis cliquez sur Enregistrer pour appliquer le paramètre.