De la prototip la producție · Lecția 1 din 13 · 5 minute
De la MVP la producție
Ai o aplicație care merge. Se deschide, salvează, are login, arată bine în demo. Întrebarea din acest curs e alta: rezistă când o folosește un străin altfel decât ai prevăzut tu? „Funcționează” și „e gata de producție” sunt două întrebări diferite, cu două răspunsuri diferite. Cursul ăsta e capstone-ul seriei: leagă tot ce ai învățat până acum și îl transformă într-un drum clar de la prototip la lansare.
„Merge” nu e o măsură de securitate
Un prototip răspunde la o singură întrebare: se poate face? Producția răspunde la altele, pe care nimeni nu ți le pune în demo. Ce se întâmplă când vin o mie de cereri pe secundă? Când cineva schimbă un id în adresă? Când pică rețeaua la jumătatea unei plăți? Când un cont vrea datele altui cont? Aplicația ta trece testul „merge” în clipa în care face ce ai cerut. Trece testul „producție” abia când rezistă la ce nu ai cerut.
În primul curs din serie ai văzut de ce apare golul: uneltele optimizează timpul până la prima aplicație care merge, nu până la prima aplicație sigură. Aici închidem cercul. Nu mai vorbim despre „de ce”, ci despre „ce schimbi, concret, înainte de «go live»”.
Cât de mare e diferența, măsurat
Nu e o grijă teoretică. Într-un studiu din 2026 pe 200 de aplicații vibe-coded auditate în detaliu (Deng, Fan și Meng), 91% aveau cel puțin o vulnerabilitate, iar aproape două treimi dintre defecte erau grave sau critice. La scară de internet, în septembrie 2026, UpGuard a găsit 16.326 de baze de date Supabase cu tabele citibile de oricine, peste jumătate cu indicii de date personale. Aproape niciuna nu a fost spartă cu tehnici sofisticate. Toate au fost lăsate deschise. Diferența dintre „merge” și „e sigur” e exact spațiul în care s-au produs aceste incidente.
Harta de hardening
Ca să nu pară o listă infinită de griji, împarte munca în cinci zone. Fiecare lecție care urmează ia câte una. La final ai un checklist și un plan pe două săptămâni, gata de aplicat.

Transportul înseamnă HTTPS peste tot și HSTS, ca nimeni să nu citească parola pe drum. Antetele sunt instrucțiunile pe care le dai browserului despre ce are voie să încarce. Accesul e cine ești și ce ai voie, plus protecția la nivel de rând din bază. Datele sunt secretele ținute pe server și backupul testat. Operarea e rate limiting, loguri, alerte și un pipeline curat.
Responsabilitatea configurării rămâne la cel care publică.
În 7 din 38 de incidente documentate, platforma a contestat public vina. Concluzia practică e mereu aceeași: juridic și de fapt, cel care apasă „publică” răspunde pentru configurare. Adică tu. De aceea hardeningul nu e opțional, e ultima parte a construcției.
Cum citești restul cursului
Fiecare lecție e scurtă și are un singur subiect. Unde un alt curs din serie tratează tema în adâncime, îți spun și trec mai departe: protecția la nivel de rând are cursul despre Supabase, secretele au cursul lor, injecțiile și XSS la fel. Aici le legăm într-un singur flux de lansare, ca să nu ratezi nimic în ziua în care dai drumul aplicației.
Un lucru care ajută să ții ritmul: atacatorul nu are nevoie de geniu. Nimeni nu încearcă să spargă modelul de inteligență artificială din spatele aplicației. Se scanează ce e public, se intră cu o cheie găsită, se rămâne acolo zile întregi până observă cineva. Fiecare zonă de hardening închide exact o astfel de ușă. Nu construiești o fortăreață, ci încui ușile pe care demo-ul le-a lăsat descuiate. E o muncă finită, cu un capăt, iar la finalul cursului o vei avea toată pe o singură pagină.
Al doilea lucru care ajută: hardeningul nu îți schimbă aplicația pentru utilizator. Ce ai construit rămâne la fel de rapid și la fel de simplu de folosit. Diferența e invizibilă în scenariul normal și se vede doar când cineva încearcă altceva. De aceea e ușor de amânat și e amânat des, dar tocmai amânarea lui e cauza celor mai multe incidente din serie.
De reținut
„Funcționează” și „e gata de producție” sunt întrebări diferite: prima verifică ce ai cerut, a doua ce nu ai cerut.
91% dintre aplicațiile vibe-coded auditate în 2026 aveau cel puțin o vulnerabilitate; aproape toate incidentele au fost defaulturi lăsate neatinse, nu spargeri.
Împarte hardeningul în cinci zone: transport, antete, acces, date, operare.
Responsabilitatea configurării rămâne la cel care publică; cursul îți dă drumul clar de la prototip la lansare.