Secrets ManagerIntégrations

GitLab CI/CD

Bitwarden fournit un moyen d'injecter des secrets dans vos pipelines GitLab CI/CD en utilisant le CLI de Secrets Manager de Bitwarden. Cela vous permet de stocker et d'utiliser en toute sécurité des secrets dans vos workflows CI/CD. Pour commencer :

Enregistrer un jeton d'accès

Dans cette étape, nous allons enregistrer un jeton d'accès en tant que variable GitLab CI/CD. Ce jeton sera utilisé pour s'authentifier avec l'API de Bitwarden Secrets Manager et récupérer les secrets.

  1. Dans GitLab, naviguez vers la page Paramètres > CI/CD de votre projet.

  2. Sélectionnez Développer dans la section Variables.

  3. Sélectionnez Ajouter une variable.

  4. Vérifiez le drapeau de la variable Masque.

  5. Nommez la clé BWS_ACCESS_TOKEN. C'est la variable que le CLI de Secrets Manager recherche pour authentifier. Alternativement, si vous devez nommer la clé autrement, spécifiez --jeton-d'accès NOM_DE_VAR sur la ligne bws secret get plus tard.

  6. Dans un autre onglet, ouvrez l'application web Secrets Manager et créez un jeton d'accès.

  7. De retour dans GitLab, collez le jeton d'accès nouvellement créé dans le champ Valeur .

  8. Sélectionnez Ajouter une variable pour enregistrer.

Ajoutez une variable dans GitLab
Ajoutez une variable dans GitLab

Ajoutez à votre fichier de flux de travail

Ensuite, nous allons écrire un flux de travail CI/CD GitLab rudimentaire. Créez un fichier appelé .gitlab-ci.yml à la racine de votre dépôt avec le contenu suivant:

Bash
stages: - default_runner image: ubuntu build: stage: default_runner script: - | # install bws apt-get update && apt-get install -y curl git jq unzip export BWS_VER="$( curl -s https://api.github.com/repos/bitwarden/sdk/releases/latest | \ jq -r '.tag_name' | sed 's/bws-v//' )" curl -LO \ "https://github.com/bitwarden/sdk/releases/download/bws-v$BWS_VER/bws-x86_64-unknown-linux-gnu-$BWS_VER.zip" unzip -o bws-x86_64-unknown-linux-gnu-$BWS_VER.zip -d /usr/local/bin # secrets to retrieve secret_ids=( "534cc788-a143-4743-94f5-afdb00a40a41" "9a0b500c-cb3a-42b2-aaa2-afdb00a41daa" ) # export secrets as environment variables for secret_id in "${secret_ids[@]}"; do secret="$(bws secret get "$secret_id")" secret_key="$(echo "$secret" | jq -r '.key')" secret_value="$(echo "$secret" | jq -r '.value')" export "$secret_key"="$secret_value" done # run the command that requires secrets - npm run start

Où :

  • BWS_VER est la version du CLI de Bitwarden Secrets Manager à installer. Ici, nous obtenons automatiquement la dernière version. Vous pouvez épingler la version en cours d'installation en modifiant ceci pour une version spécifique, par exemple BWS_VER="0.3.1".

  • 534cc788-a143-4743-94f5-afdb00a40a41 et 9a0b500c-cb3a-42b2-aaa2-afdb00a41daa sont des identifiants de référence pour les secrets stockés dans Secrets Manager. Le compte de service auquel appartient votre jeton d'accès doit être capable d'accéder à ces secrets spécifiques.

  • npm run start est la commande qui attend les valeurs secrètes qui sont récupérées par bws. Remplacez ceci par les commandes pertinentes pour exécuter votre projet.

avertissement

Les secrets sont stockés sous forme de variables d'environnement. Il est important d'éviter d'exécuter des commandes qui pourraient importer ces secrets dans les journaux.

Exécutez le pipeline CI/CD

Sur la gauche, sélectionnez Construire > Pipelines et sélectionnez Exécuter le pipeline en haut à droite de l'espace. Sélectionnez Exécuter le pipeline sur la page pour exécuter le pipeline nouvellement créé.

Faire une suggestion à cette page

Contacter notre équipe de soutien

Pour les questions techniques, de facturation et de produits.

Nom*
Courriel du compte Bitwarden*
Vérifier l'adresse électronique du compte*
Produit*
Êtes-vous un auto-hébergeur ?*
Sujet*
Message...*

État du nuage

Vérifier l'état

© 2024 Bitwarden, Inc. Conditions Confidentialité Paramètres des cookies Plan du site

Go to EnglishStay Here