Gérer les secrets chiffrés
Les secrets sont des variables d’environnement chiffrées que vous pouvez créer pour stocker des jetons, des informations d’identification ou tout autre type d’informations sensibles que votre GitHub des workflows et des actions peuvent reposer. Une fois créés, ils peuvent être utilisés dans les workflows et les actions qui ont accès à l’organisation, au référentiel ou à l’environnement de référentiel dans lequel ils sont stockés.
Dans cette section, vous allez explorer les différents outils et stratégies disponibles dans GitHub Enterprise Cloud et GitHub Enterprise Server afin de gérer l’utilisation des secrets chiffrés. Nous allons également expliquer comment accéder aux secrets chiffrés dans vos flux de travail et actions.
Gérer les secrets chiffrés au niveau de l’organisation
La création de secrets chiffrés au niveau de l’organisation pour stocker des informations sensibles est un excellent moyen de garantir la sécurité de ces informations tout en réduisant les frais de gestion de votre entreprise.
Supposons que certains développeurs écrivant des workflows dans votre organisation GitHub ont besoin des informations d’identification pour déployer du code en production dans certains de leurs workflows. Afin d’éviter de partager ces informations sensibles, vous pouvez créer un secret chiffré contenant les informations d’identification au niveau de l’organisation. Ainsi, les informations d’identification peuvent être utilisées dans les workflows sans être exposées.
Pour créer un secret au niveau de l’organisation, accédez aux Paramètres de votre organisation, puis sélectionnez Secrets et variables > Actions > Nouveau secret d’organisation dans la barre latérale gauche. Dans l’écran qui s’affiche, entrez un nom et une valeur, puis choisissez une stratégie d’accès au référentiel pour votre secret :
La stratégie d’accès apparaît sous le secret dans la liste des secrets après l’enregistrement :
Pour plus d’informations sur les autorisations configurées pour votre secret, vous pouvez sélectionner l’option Mettre à jour .
Gérer les secrets chiffrés au niveau du référentiel
Si vous avez besoin d’étendre un secret chiffré à un référentiel spécifique, GitHub Enterprise Cloud et GitHub Enterprise Server vous permettent également de créer des secrets au niveau du référentiel.
Pour créer un secret au niveau du dépôt, accédez aux Paramètres de votre dépôt, puis sélectionnez Secrets et variables > Actions > Nouveau secret de dépôt dans la barre latérale gauche. Dans l’écran qui s’affiche, entrez un nom et une valeur pour votre secret :
Accéder aux secrets chiffrés au sein des actions et des workflows
Dans les workflows
Pour accéder à un secret chiffré dans un workflow, vous devez utiliser le contexte secrets
dans votre fichier de workflow. Par exemple :
steps:
- name: Hello world action
with: # Set the secret as an input
super_secret: ${{ secrets.SuperSecret }}
env: # Or as an environment variable
super_secret: ${{ secrets.SuperSecret }}
Dans les actions
Pour accéder à un secret chiffré dans une action, vous devez spécifier le secret en tant que paramètre input
dans le fichier de métadonnées action.yml
. Par exemple :
inputs:
super_secret:
description: 'My secret token'
required: true
Si vous avez besoin d’accéder au secret chiffré dans le code de votre action, le code d’action peut lire la valeur de l’entrée à l’aide de la variable d’environnement $SUPER_SECRET
.
Avertissement
Quand vous créez vos propres actions, veillez à ne pas inclure de secrets chiffrés dans le code source de votre action, car les actions sont des unités de travail partageables. Si votre action doit utiliser des secrets chiffrés ou d’autres entrées fournies par l’utilisateur, il est préférable d’utiliser le module de base à partir du kit de ressources d’actions.