documentation-dsit/docs/Services/Datalab/Onyxia/secrets.md

58 lines
2.8 KiB
Markdown
Raw Normal View History

# Gestion des secrets
### Les variables d'environnement;
Il arrive que certaines informations doivent être mise à disposition d'un grand nombre d'applications, ou ne doivent pas figurer en clair dans votre code (jetons d'accès, mots de passe, etc.). L'utilisation de **variables d'environnement** permet de pouvoir accéder à ces informations depuis n'importe quel service.
2024-02-09 14:09:45 +01:00
Au lancement d'un service, plusieurs variables d'environnement sont déjà injectées automatiquement — par exemple, les tokens d'accès à <a href="https://documentation-dsit.lab.groupe-genes.fr/Services/Datalab/Onyxia/version/" target="_blank">GitHub</a> et <a href="https://documentation-dsit.lab.groupe-genes.fr/Services/Datalab/Onyxia/stockage/" target="_blank">MinIO</a>.
![](/img/secret.png)
### Création et gestion de secrets
Sur la plateforme, les variables d'environnement sont des secrets écrits dans <a href="https://www.vaultproject.io" target="_blank">Vault</a> <a href="https://onyxia.lab.groupe-genes.fr/my-secrets/" target="_blank">(le coffre fort du Datalab)</a> et sont chiffrées. Cela vous permet d'y stocker des jetons, des identifiants et des mots de passe. La page <a href="https://onyxia.lab.groupe-genes.fr/my-secrets/" target="_blank">Mes secrets</a> prends la forme d'un explorateur de fichiers où vous pouvez trier et hiérarchiser vos variables dans des dossiers.
#### Pour commencer :
* Créez un nouveau dossier `+ Nouveau dossier`
* Puis dans ce dossier, créez un nouveau secret `+ Nouveau secret`
* Ouvrez votre secret
![](/img/toolbarsecret.png)
Chaque secret peut contenir plusieurs variables, composés de paires de clés-valeurs.
* `+ Ajouter une variable`
![](/img/secrettable.png)
!!! warning
Les clés (nom de la variable) commencent toujours par`$`et contiennent uniquement des lettres, des chiffres et le caractère de soulignement (`_`). Par convention, les clefs s'écrivent en MAJUSCULE.
Remplissez le champ du nom de la clef puis sa valeur.
### Convertir des secrets en variables d'environnement
Une fois votre secret édité, avec ses différentes variables, vous êtes prêt à l'utiliser dans votre service.
* Copiez le chemin du secret en cliquant sur le bouton `Utiliser dans un service`
* Puis au moment de la configuration de votre service, allez dans l'onglet `Vault`et collez le chemin du secret dans le champ dédié
![](/img/secret-config.png)
* Créez et ouvrez votre service
Pour vérifier que vos variables d'environnement ont bien été créés, vous pouvez lancer les commandes suivantes dans le terminal du service :
```bash
# Lister toutes les variables d'environnement disponibles
env
# Afficher la valeur d'une variable d'environnement
echo $MA_VARIABLE
# Trouver toutes les variables d'environnement qui contiennent un pattern donné
env | grep -i "<PATTERN>"
```