Sari la conținut

Secrete

Un proiect Restorm este făcut ca să fie pus în commit. Secretele, în schimb, nu trebuie să intre niciodată în el. Tipul de valoare Secret răspunde acestei nevoi: variabila înregistrează o referință către o sursă, niciodată valoarea însăși.

Alegeți tipul Secret pentru o variabilă, apoi sursa. Fișierul de proiect nu conține atunci decât identificatorul sursei și parametrii acesteia. Valoarea este rezolvată în procesul principal, în momentul execuției.

Două variabile de mediu de tip Secret (petstore_auth_token, api_key): celula poartă marcatorul $= și butoanele de reîmprospătare, de editare a preluării și de blocare — alături de o variabilă de tip șir

Un secret rămâne vizibil din aplicație: editorul de medii, vizualizările valorii rezolvate, consola internă și fragmentele de cod îi afișează valoarea. Este secretul dumneavoastră, îl cunoașteți deja — tipul Secret nu încearcă să vi-l ascundă.

Ceea ce garantează el este că valoarea:

  • nu intră niciodată în fișierele care vă părăsesc mașina — nu este scrisă în proiectul .restorm, deci nu este nici pusă în commit, nici trimisă într-un depozit, nici inclusă într-un export;
  • nu este transmisă unui serviciu terț neautorizat — destinațiile de ieșire trec prin firewall.

Citește o variabilă de mediu a sistemului de operare. Un singur parametru: numele variabilei.

Este sursa de preferat în integrarea continuă: secretul este injectat de seiful sistemului dumneavoastră de CI, iar Restorm nu face decât să îl citească.

Terminal window
export API_TOKEN=""
restorm --open projet.restorm --run "Tests" --headless

Citește — și scrie — un fișier restorm.env așezat lângă proiect. Este modul local: fișierul rămâne pe mașina dumneavoastră și se adaugă în .gitignore.

Spre deosebire de sursa precedentă, aceasta este inscriptibilă: puteți introduce valoarea din Restorm, iar ea este salvată în fișierul de secrete, nu în proiect.

Valorile rezolvate sunt păstrate în memoria cache. După ce ați schimbat un secret în exterior (rotația unui token, modificarea fișierului .env), folosiți Reîmprospătează mediul pentru a goli memoria cache și a reciti toate sursele.

Restorm expurgă secretele din ceea ce scrie pe disc:

Instrumentele MCP, în schimb, primesc valoarea rezolvată, la fel ca restul aplicației: agentul pilotează Restorm în numele dumneavoastră, cu propriile dumneavoastră secrete. Garanțiile de mai sus rămân neschimbate — valoarea nu este scrisă nici în proiect, nici într-un export, și nu pleacă spre un serviciu terț neautorizat.

  1. Adăugați restorm.env și *.responses.zip în .gitignore.
  2. În CI, folosiți envVar în loc de fișierul de secrete.
  3. Parola unui protocol nativ (MQTT, AMQP, Redis, Kafka) acceptă și o valoare de tip Secret — nu scrieți aceste parole în clar în cerere.