> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Secrets

> Stockez les identifiants de services externes sous forme de secrets et les paramètres non sensibles sous forme de configurations dans votre projet Replit.

L'outil Secrets stocke et chiffre les **secrets**, les informations sensibles de votre projet Replit.
Il s'agit notamment des clés API, des jetons d'authentification et des chaînes de connexion aux bases de données que votre projet utilise pour se connecter à des services externes.
Par exemple, votre projet peut avoir besoin d'identifiants pour appeler une API tierce, se connecter à un fournisseur d'authentification ou accéder à une base de données.

Lorsque vous ajoutez un secret, l'outil chiffre automatiquement les données et les met à disposition de votre projet Replit sous forme de variable d'environnement.
Cette approche vous permet d'éliminer le codage en dur des secrets dans votre code et de réduire le risque de les exposer.

<Frame>
  <iframe width="100%" height="400" src="https://www.youtube.com/embed/qE_2Z8ReyWI" title="Outil Secrets de l'Éditeur de projet" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen />
</Frame>

Le codage en dur des secrets dans votre base de code peut entraîner une exposition accidentelle dans les scénarios suivants :

* Partage de votre code avec d'autres personnes via une application Replit publique ou par copier-coller
* Validation de votre code dans un système de contrôle de version dans un dépôt public
* Diffusion en direct ou partage d'écran de votre code

Utilisez l'outil Secrets pour partager votre code en toute confiance sans vous soucier de l'exposition des identifiants.

<Frame caption="Secrets et configurations dans l'outil Secrets. Les noms de secrets propres au projet sont masqués.">
  <img src="https://mintcdn.com/replit/fAZUw0LJRyEUb1kI/images/workspace/secrets-and-configurations.png?fit=max&auto=format&n=fAZUw0LJRyEUb1kI&q=85&s=ce568db53d05b59d82e3063c807a76bc" alt="Outil Secrets affichant des valeurs de secrets masquées et une section Configurations distincte pour les informations non sensibles" width="2488" height="1412" data-path="images/workspace/secrets-and-configurations.png" />
</Frame>

## Secrets et configurations

L'outil **Secrets** comporte des sections distinctes pour les secrets et les configurations. Les deux permettent au code de votre projet de lire des valeurs sous forme de variables d'environnement sans les coder en dur.

| Type | À utiliser pour | Exemples |
| - | - | - |
| **Secrets** | Informations sensibles qui doivent rester privées | Clés API, jetons d'authentification et chaînes de connexion aux bases de données |
| **Configurations** | Paramètres non sensibles | Niveaux de journalisation, feature flags et URL de services publics |

Les configurations sont utiles lorsqu'un paramètre diffère entre les tests sur Replit et l'exécution de votre projet publié.
Utilisez un secret chaque fois qu'une valeur contient des identifiants ou d'autres données sensibles.

## Fonctionnalités

Les Secrets comprennent les fonctionnalités suivantes :

* **Chiffrement** : Protégez vos secrets avec le chiffrement AES-256 au repos et le chiffrement TLS en transit
* **Secrets au niveau du projet** : Stocker et gérer les secrets spécifiques à un projet Replit
* **Configurations** : Gérer les variables d'environnement non sensibles à côté de vos secrets
* **Accès par variable d'environnement** : Accéder à vos secrets depuis votre code à l'aide de variables d'environnement
* **Accès collaboratif** : Partager des secrets avec des collaborateurs et des membres de l'équipe

## Utilisation

<Note>
  Les Secrets sont disponibles pour tous les types de déploiements sauf les Déploiements statiques.
</Note>

### Comment accéder aux Secrets

Ouvrez l'outil **Secrets** depuis le panneau d'outils de votre projet :

1. Ouvrez votre projet dans l'Éditeur de projet.
2. Sélectionnez **Outils** en haut pour ouvrir le panneau d'outils.
3. Trouvez la section **Configuration** et sélectionnez **Secrets**.

<Frame caption="Sélectionnez Outils, puis Secrets sous Configuration.">
  <img src="https://mintcdn.com/replit/fAZUw0LJRyEUb1kI/images/workspace/secrets-tool-navigation.png?fit=max&auto=format&n=fAZUw0LJRyEUb1kI&q=85&s=6571da9b2f604208dd8c7fb7f1032005" alt="Panneau d'outils de l'Éditeur de projet avec le bouton Outils en haut et Secrets sous le titre Configuration" width="418" height="1094" style={{ width: "360px", maxWidth: "100%", height: "auto", objectFit: "contain" }} data-path="images/workspace/secrets-tool-navigation.png" />
</Frame>

L'outil **Secrets** s'ouvre avec les secrets de votre projet, suivis de la section **Configurations**.

### Gérer les secrets du projet

Gérez les secrets de votre projet directement dans l'outil **Secrets**.
Utilisez **Filtrer les secrets par nom** pour trouver un secret.

**Ajouter un secret**

1. Sélectionnez **Nouveau secret**.
2. Entrez une **Clé**, le nom du secret, et une **Valeur**, le secret lui-même.
3. Sélectionnez **Ajouter un secret** pour enregistrer l'entrée.

<Frame caption="Ajoutez un secret avec une clé et une valeur. Les noms des secrets existants sont masqués.">
  <img src="https://mintcdn.com/replit/fAZUw0LJRyEUb1kI/images/workspace/secrets-add.png?fit=max&auto=format&n=fAZUw0LJRyEUb1kI&q=85&s=2fae817bed602f7e1aad02934e0c0990" alt="Formulaire Nouveau secret avec GOOGLE_API_KEY comme exemple de clé, un champ Valeur vide et le bouton Ajouter un secret" width="2488" height="1412" data-path="images/workspace/secrets-add.png" />
</Frame>

**Modifier un secret**

1. Sélectionnez le menu <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/vertical-dots.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=7b4b6a9992b3b20202297b60b6ef416d" alt="icône trois points verticaux" height="16" width="16" data-path="images/icons/vertical-dots.svg" /> à points verticaux à côté du secret.
2. Sélectionnez **Modifier** dans le menu contextuel.
3. Mettez à jour le texte dans le champ **Clé** ou **Valeur** et sélectionnez **Mettre à jour le secret** pour enregistrer les modifications ou **Annuler** pour les ignorer.

**Afficher ou masquer un secret**

Pour afficher un secret, sélectionnez l'icône <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/eye.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=ef4c8029c7e1a366680367b9aa573029" alt="icône œil" width="16" height="16" data-path="images/icons/eye.svg" /> œil à côté du secret.

Pour masquer le secret, sélectionnez l'icône <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/eye-slash.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=cccbc60ff55d519c89c7b4d2a3e0ee4a" alt="icône œil barré" width="16" height="16" data-path="images/icons/eye-slash.svg" /> œil barré.

**Supprimer un secret**

Pour supprimer un secret, sélectionnez le menu <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/vertical-dots.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=7b4b6a9992b3b20202297b60b6ef416d" alt="icône trois points verticaux" height="16" width="16" data-path="images/icons/vertical-dots.svg" /> à points verticaux à côté du secret et sélectionnez **Supprimer**.

**Modifier les secrets en masse**

Ouvrez le menu à points verticaux dans l'en-tête **Secrets** et sélectionnez **Modifier en JSON** ou **Modifier en .env**.
Passez en revue la liste complète avant d'enregistrer : la modification en masse remplace les secrets existants du projet.

### Gérer les secrets du compte

Les secrets du compte vous permettent de réutiliser des identifiants dans vos projets. Gérez-les dans **Paramètres du compte > Secrets du compte**.

Pour lier des secrets du compte à un projet que vous possédez :

1. Ouvrez l'outil **Secrets** du projet.
2. Sélectionnez l'icône de maillon de chaîne intitulée **Lier les secrets du compte** dans l'en-tête.
3. Cochez les cases à côté des secrets que vous souhaitez utiliser.
4. Sélectionnez **Lier à cette application**.

Les secrets liés restent synchronisés avec vos secrets du compte. Pour supprimer un lien, ouvrez le menu d'options du secret lié et sélectionnez **Dissocier**.

### Gérer les configurations

Utilisez la section **Configurations** de l'outil **Secrets** pour les valeurs non sensibles.

Pour ajouter une configuration :

1. Sélectionnez **Nouvelle configuration**.
2. Entrez une **Clé**, par exemple `LOG_LEVEL`, et une **Valeur**, par exemple `debug`.
3. Sélectionnez **Ajouter la configuration**.

Pour une valeur propre à un environnement, sélectionnez **Plus** à côté de **Nouvelle configuration**, puis **Nouvelle configuration d'application publiée** ou **Nouvelle configuration de test**.

<Frame caption="Ajoutez un paramètre non sensible dans la section Configurations.">
  <img src="https://mintcdn.com/replit/fAZUw0LJRyEUb1kI/images/workspace/configurations-add.png?fit=max&auto=format&n=fAZUw0LJRyEUb1kI&q=85&s=fafcc5a53ac90eb163137fe3bde7c7de" alt="Section Configurations avec des champs Clé et Valeur vides et un bouton Ajouter la configuration" width="2070" height="416" data-path="images/workspace/configurations-add.png" />
</Frame>

<Warning>
  Ne stockez pas de clés API, de mots de passe ou de jetons d'authentification comme configurations. Utilisez des secrets pour les valeurs sensibles.
</Warning>

### Gérer les secrets de production

Pour trouver les secrets de votre projet publié, ouvrez **Publication**, sélectionnez **Ajuster les paramètres** et repérez **Secrets de l'application en production**.
Passez en revue les valeurs dont votre projet publié a besoin, surtout si vous utilisez des identifiants différents pour les tests et la production.

### Gestion de la visibilité des secrets

La visibilité des secrets dépend de votre accès à un projet Replit et de si vous en êtes l'auteur.

Vous pouvez utiliser l'une des options suivantes pour partager votre application Replit :

* **Multijoueur** : Invitez des utilisateurs Replit à collaborer en temps réel
* **Page de couverture** : Affichez un aperçu de votre application Replit avec la possibilité de la copier
* **Copie** : Rendez votre application Replit individuelle ou organisationnelle publique pour que d'autres puissent créer leur propre version

Le tableau suivant présente la visibilité du nom et de la valeur des secrets dans différents scénarios :

| Méthode d'accès | Qui | Peut voir les noms | Peut voir les valeurs |
| - | - | - | - |
| Multijoueur | Collaborateur multijoueur | ✓ | ✓ |
| Multijoueur | Membre de l'organisation (rôle Propriétaire) | ✓ | ✓ |
| Multijoueur | Membre de l'organisation (non-propriétaire) | ✓ | |
| Page de couverture | Tout visiteur | | |
| Copie | Propriétaire/collaborateur copiant sa propre application Replit | ✓ | ✓ |
| Copie | Non-propriétaire/collaborateur copiant l'application Replit | ✓ | |
| Copie | Toute personne copiant depuis la page de couverture | ✓ | |
| Copie d'organisation | Membre de l'organisation avec rôle Propriétaire | ✓ | ✓ |
| Copie d'organisation | Membre de l'organisation sans rôle Propriétaire | ✓ | |

<Warning>
  Les membres de l'organisation sans le rôle Propriétaire ne peuvent pas voir les valeurs des secrets dans une application Replit, mais peuvent accéder à leurs valeurs en affichant les variables d'environnement.
</Warning>

## Secrets liés aux bases de données

Lorsque vous ajoutez la base de données de Replit, l'Éditeur de projet crée automatiquement le secret suivant :

| Secret | Description |
| - | - |
| `DATABASE_URL` | Chaîne de connexion à la base de données SQL |

<Info>
  Les anciennes bases de données de développement Neon peuvent également inclure `PGHOST`, `PGUSER`, `PGPASSWORD`, `PGDATABASE` et `PGPORT`. Les bases de données de développement Replit actuelles utilisent `DATABASE_URL` à la place.
</Info>

Pour afficher toutes les variables d'environnement dans votre projet Replit, exécutez `printenv` dans l'outil Shell de l'Éditeur de projet ou affichez-les depuis votre code.

## Variables d'environnement prédéfinies

Replit définit automatiquement les variables d'environnement suivantes auxquelles vous pouvez accéder depuis votre application :

| Variable d'environnement | Description |
| - | - |
| `REPLIT_DOMAINS` | Liste séparée par des virgules de tous les domaines associés à votre application Replit |
| `REPLIT_USER` | Nom d'utilisateur de l'éditeur actuel, qui peut varier dans les sessions multijoueurs |
| `REPLIT_DEPLOYMENT` | Défini à `1` si le code s'exécute dans une application publiée, non défini sinon |
| `REPLIT_DEV_DOMAIN` | URL de développement sur le domaine `replit.dev`, différente de l'URL de déploiement |

Celles-ci ne sont pas listées dans l'outil Secrets, mais le code de votre projet peut les lire comme n'importe quelle autre variable d'environnement.
