Aller au contenu principal

Secrets

Paramètres > Secrets contient les clés API et les paramètres utilisés par le code de votre site. L’IA peut ajouter des secrets pendant la création, et les connecteurs ajoutent les leurs pour vous. Les valeurs sont chiffrées et restent masquées tant que vous ne les affichez pas. Elles sont appliquées à votre site en ligne lors de la publication.

Page Secrets avec les sections Valeurs manquantes, Secrets et Depuis les connecteurs

La page comporte jusqu’à trois sections : Valeurs manquantes, Secrets et Depuis les connecteurs.

Valeurs manquantes​

Lorsque l’IA écrit du code qui utilise une clé que vous ne lui avez pas encore fournie, elle ajoute un secret portant ce nom avec une valeur provisoire. Ces secrets apparaissent ici avec la note « Tant que ces valeurs ne sont pas définies, les parties de votre site qui les utilisent ne fonctionneront pas. »

Il existe deux types de lignes :

  • Lignes de connexion : les secrets qu’un service renseigne pour vous, comme les clés Stripe, Supabase, Resend ou OpenAI. La ligne indique le service et propose un bouton Connecter, par exemple Connecter Stripe. La connexion au service renseigne ces secrets et les maintient à jour. Les bases de données se connectent dans le panneau Données, et les autres services dans les Connecteurs.
  • Lignes de saisie : tous les autres secrets. Collez la valeur dans le champ et cliquez sur Enregistrer ou appuyez sur Enter, ou cliquez sur Supprimer si votre site n’en a pas besoin. Pour les services courants, la ligne propose un lien vers la page où obtenir la clé, par exemple Obtenir sur OpenAI.

Une ligne apparaît aussi lorsqu’une valeur enregistrée ne peut plus être lue. Définissez-la à nouveau pour résoudre le problème.

Lorsque l’IA vous envoie un lien vers une clé dans le chat, cette page s’ouvre sur la ligne correspondante et la met en évidence.

Secrets​

Tous vos secrets, dans l’une des deux vues. Utilisez les boutons à côté de Importer un .env pour changer de vue :

  • Texte : un éditeur avec une entrée NAME=value par ligne. Idéal pour coller ou modifier plusieurs secrets à la fois.
  • Liste : une ligne par secret, qui indique quand il a été ajouté ou mis à jour, quel service l’a défini, et la mention Visible dans le navigateur pour les noms publics. Affichez, copiez, modifiez ou supprimez une valeur depuis sa ligne, et cliquez sur Ajouter un secret pour en ajouter un.

Les valeurs sont masquées par défaut. Cliquez sur Afficher les secrets pour les afficher et les modifier, puis sur Masquer les secrets pour les masquer à nouveau une fois vos modifications enregistrées ou abandonnées. Si vous n’avez pas encore de secrets, vous pouvez en ajouter directement.

Éditeur de secrets affichés avec une erreur de ligne et la barre d’enregistrement

Lorsqu’un service est connecté, l’éditeur regroupe les lignes : les secrets que vous avez ajoutés sous # Your secrets, puis ceux de chaque service sous son nom, comme # Stripe. Les secrets gérés pour vous par WebTwizz, comme ceux de WebTwizz Cloud et le secret CRON_SECRET utilisé par les tâches, ne sont pas affichés dans l’éditeur et ne peuvent pas y être supprimés.

Modification​

  • Saisissez ou collez des lignes comme OPENROUTER_API_KEY=sk-or-.... Les lignes sont numérotées.
  • Les noms peuvent contenir des lettres, des chiffres et _, mais ne peuvent pas commencer par un chiffre.
  • Les lignes commençant par # et les lignes vides sont acceptées, mais ne sont pas conservées lors de l’enregistrement.
  • Un nom sans valeur après = affiche valeur requise et apparaît sous Valeurs manquantes une fois enregistré.
  • Pour supprimer un secret, supprimez sa ligne. Les secrets d’un service connecté restent en place tant que vous ne retirez pas le service du projet.
  • Vous pouvez modifier une valeur définie par un service, mais celui-ci peut la rétablir lors de sa reconnexion.

Erreurs de ligne​

Les problèmes sont signalés sur la ligne et répertoriés sous l’éditeur, par exemple :

  • Ajoutez =value après NAME. La ligne ne contient pas de =.
  • Un nom ne peut pas commencer par un chiffre
  • NAME est défini par WebTwizz. Certains noms sont réservés, comme NODE_ENV, PORT et tous ceux qui commencent par WEBTWIZZ_.
  • NAME figure aussi à la ligne 4. Chaque nom ne peut apparaître qu’une seule fois.

Un avertissement apparaît lorsqu’un nom commençant par NEXT_PUBLIC_ contient une valeur qui ressemble à une clé privée, car toute personne qui ouvre votre site peut la lire. Cela n’empêche pas l’enregistrement.

Importation d’un fichier .env​

Cliquez sur Importer un .env pour choisir un fichier, ou faites glisser un fichier .env sur l’éditeur. Vous pouvez aussi coller un fichier entier dans l’éditeur. Les noms existants reçoivent la nouvelle valeur, et les nouveaux noms sont ajoutés à la fin. Un message indique combien ont été ajoutés et combien ont été remplacés. Rien n’est enregistré tant que vous n’avez pas vérifié et enregistré les modifications.

Enregistrement​

Dès qu’un élément change, une barre en bas résume les modifications, par exemple 2 ajouts, 1 modification. Cliquez sur Enregistrer les modifications (ou appuyez sur ⌘S / Ctrl+S dans l’éditeur) pour enregistrer, ou sur Abandonner pour revenir en arrière. Tant qu’une ligne contient une erreur, la barre affiche à la place Corrigez 1 ligne pour enregistrer.

Si vos secrets ont été modifiés ailleurs après leur affichage, par exemple dans un autre onglet, la barre affiche Ces éléments ont été modifiés ailleurs depuis leur ouverture. Cliquez sur Charger les plus récents pour charger les valeurs actuelles, puis effectuez à nouveau votre modification.

Depuis les connecteurs​

Les secrets définis par un connecteur ou une connexion à une base de données sont regroupés par service, par exemple Stripe, avec le nombre de secrets définis. Chaque service maintient ses secrets à jour.

Pour les modifier, utilisez le bouton sur la ligne. Changer de clé (pour les services que vous connectez avec une clé) et Ouvrir les connecteurs (pour les autres) ouvrent ce service dans Paramètres > Connecteurs, où Remplacer la clé permet de remplacer la clé. Changer de connexion ouvre la connexion à la base de données dans le panneau Données. Pour supprimer les secrets d’un service, retirez-le du projet avec Retirer de ce projet.

Valeurs publiques​

Les noms commençant par NEXT_PUBLIC_ sont aussi accessibles dans le navigateur : toute personne qui ouvre votre site peut donc les lire. Utilisez-les pour les valeurs qui peuvent être partagées sans risque, comme l’URL d’un site ou une clé publique. Conservez les clés API et les autres valeurs privées dans des noms sans ce préfixe.

Aperçu et site en ligne​

Les modifications sont appliquées immédiatement à votre aperçu. Votre site en ligne conserve les valeurs de votre dernière publication. Lorsqu’elles diffèrent, le haut de la page indique « Votre aperçu utilise déjà les nouvelles valeurs. Votre site en ligne utilise encore celles de votre dernière publication. » Cliquez sur Publier à cet endroit pour mettre à jour le site en ligne.

Lecture des secrets dans le code​

Lisez un secret avec process.env.NAME :

// Server code: API routes, server components and server actions can read every secret
const apiKey = process.env.OPENROUTER_API_KEY;

// Browser code can only read NEXT_PUBLIC_ names
const siteUrl = process.env.NEXT_PUBLIC_SITE_URL;