Sari la conținut

Secrete & Variabile de Mediu

Gestionează cheile API și secretele server-side pentru codul de backend și realtime personalizat.

Majoritatea aplicațiilor Proyecta nu au nevoie de secrete. Plățile, emailul, autentificarea și conținutul sunt capabilități ale platformei — Proyecta le configurează și gestionează credențialele pentru tine (vezi Connectors). Majoritatea aplicațiilor nu adaugă niciun secret aici. Ai nevoie de unul doar pentru un serviciu care nu este acoperit de nicio capabilitate sau conector — de obicei într-o aplicație cu cod de backend/realtime personalizat (un backend realtime este în curând disponibil).

Apasă butonul Settings din bara de instrumente a builder-ului pentru a deschide panoul Settings. Acesta are trei secțiuni:

Secțiune La ce folosește
General Numele proiectului și baza de cunoștințe
SEO & sharing Setează titlul site-ului, descrierea și favicon-ul
Secrets Secrete server-side pentru codul de backend / realtime personalizat
  1. Apasă butonul Settings din bara de instrumente a builder-ului
  2. Deschide tab-ul Secrets
  3. Introdu un nume (de exemplu STRIPE_SECRET_KEY) și o valoare
  4. Apasă Add

Pentru o aplicație care are un backend realtime, secretele sunt sincronizate cu acel deployment și referențiate în codul server cu process.env.SECRET_NAME. Ele NU sunt disponibile în codul tău frontend sau ca variabile de mediu la nivel de pod — acest lucru împiedică scurgerea secretelor în bundle-ul browser-ului.

Pentru integrările obișnuite, de obicei nu este nevoie să adaugi un secret — Proyecta gestionează credențialele ca parte a capabilității sau conectorului:

  • "Accept payments" → capabilitatea Commerce configurează Stripe Connect (checkout, comenzi, plăți)
  • "Send emails" → capabilitatea email / un conector gestionat se ocupă de cheia furnizorului
  • "Add sign-in" → capabilitatea auth provisionează un client OIDC și injectează configurația OAuth

Adaugă un secret aici doar pentru un serviciu care nu este acoperit de o capabilitate sau conector, într-o aplicație cu cod de backend/realtime personalizat (un backend realtime este în curând disponibil). Acel cod citește secretul prin process.env.

Valorile secretelor sunt mascate implicit. Poți comuta vizibilitatea pentru a dezvălui valorile, a le actualiza sau a le șterge și recrea.

AI-ul poate vedea numele secretelor tale, dar nu și valorile lor. Astfel, poate face referire la variabila de mediu corectă atunci când construiește funcționalități, fără a expune date sensibile.

Proyecta detectează automat tipare comune de chei sensibile (chei API, tokeni, parole) și le maschează valorile în interfață.

Secțiunea SEO & sharing îți permite să setezi:

  • Site title — apare în tab-ul browser-ului și în rezultatele de căutare
  • Site description — utilizată pentru meta descrierile SEO
  • Favicon — iconița afișată în tab-urile browser-ului

Aceste setări sunt stocate în proiectul tău și aplicate la publicare.

Secțiunea Knowledge Base îți permite să adaugi materiale de referință și context pe care AI-ul le folosește la construirea aplicației tale. Adaugă ghiduri de brand, specificații tehnice sau orice altă documentație care ajută AI-ul să ia decizii mai bune.

Sunt secretele criptate?

Secretele sunt stocate în proiectul tău, iar pentru aplicațiile cu un backend realtime sunt sincronizate cu acel deployment. Ele nu apar niciodată în codul tău commit-uit.

Pot avea secrete diferite pentru development și producție?

În prezent, secretele se aplică atât pentru runtime-ul de development, cât și pentru aplicația publicată. Gestionarea secretelor per mediu este planificată pentru o versiune viitoare.

Ce fac dacă expun accidental un secret?

Șterge imediat vechiul secret, revocă cheia la furnizorul terț și creează unul nou.

Care este diferența dintre secrete și connectors?

Secretele sunt variabile de mediu brute pe care le gestionezi tu însuți. Conectorii sunt integrări gestionate în care Proyecta se ocupă de stocarea credențialelor, autentificare, reîmprospătarea tokenilor și jurnalizarea auditului. Folosește conectorii când sunt disponibili (Stripe, Slack, Resend, ElevenLabs); folosește secretele pentru serviciile care nu au încă un conector.