Pot 01Lekcija 1 / 6

Vibe coding: uporaba in omejitve

Pomagajte ljudem raziskovati ideje z AI. Na bančnem prototipu spoznajte, zakaj resnični podatki in dovoljenja API zahtevajo dokazila o varnosti.

Osnove11 minPregledano

Izdajatelj Kako pišemo

Preverite razumevanjeBančna nadzorna plošča deluje z izmišljenimi transakcijami. Sodelavec predlaga povezavo pravega računa z dostopom samo za branje. Kaj morate storiti?Opravite vajo
Bančna nadzorna plošča deluje z izmišljenimi transakcijami. Sodelavec predlaga povezavo pravega računa z dostopom samo za branje. Kaj morate storiti?

Kaj se boste naučili

  • Ločite raziskovanje od odločitve o izdaji.
  • Prepoznajte manjkajoče odgovornosti v prepričljivi predstavitvi.
  • Izberite varno mejo za prvi poskus.

Omogočite ljudem ustvarjanje

CTO podjetja lahko pomaga več ljudem pretvoriti njihovo znanje v ideje za programsko opremo. Povabite ljudi iz financ, operativnih služb, prodaje in razvoja. Dajte jim čas, sintetične podatke, API-je v peskovniku in podporo.

Ljudem omogočite uporabo različnih orodij za raziskovanje znotraj jasnih meja za namestitev, račune in dovoljene vnose. Orodje za gradnjo aplikacij v brskalniku, asistent za programiranje ali lokalni agent jim lahko pomaga preizkusiti idejo. Izbira orodja ne daje dovoljenja za nalaganje informacij podjetja ali povezavo pravega sistema.

Objavite preprost postopek za predajo uporabnega prototipa razvojni ali platformni ekipi. Ustvarjalec prispeva opis problema, primer delovnega poteka in opaženo vrednost. Ni mu treba prevzeti vloge varnostne in operativne ekipe storitve.

Ugotovite, kaj se morate naučiti

Vibe coding se običajno začne z opisom programske opreme, ki jo želite. Sprejmete ustvarjeno kodo in z vidnim rezultatom usmerjate naslednjo spremembo. Izraz ima različne pomene. V tem vodiču oseba, ki usmerja delo, ne razume nujno vsake izvedbene odločitve.

Ta metoda vam lahko pomaga pri učenju. Preprost vmesnik lahko pokaže, da ima postopek odobritve preveč korakov. Začasna skripta vam lahko pomaga oceniti obliko datoteke. Prototip ljudem ponudi konkreten načrt za razpravo. To znanje lahko ohranite, tudi če kodo zavržete.

Najprej določite vprašanje z odgovorom, ki ga lahko opazujete. Na primer: »Ali lahko vodja ekipe razume ta postopek odobritve?« To vprašanje ima jasen obseg. Zahteva za izdelavo sistema za upravljanje stroškov vključuje tudi varstvo podatkov, nadzor dostopa, delovanje in odgovornost.

Torkov bančni prototip

Oglejmo si izmišljeni primer. Sodelavec iz financ v torek z orodjem Lovable izdela nadzorno ploščo iz izmišljenih bančnih transakcij. Plošča združuje izdatke in prikazuje neplačane račune. Ekipa lahko zdaj razpravlja o uporabnem delovnem poteku.

Nekdo predlaga povezavo bančnega računa podjetja. To spremeni posledice, tudi če je aplikacija še vedno označena kot »prototip«.

Dostop za branje lahko razkrije stanje na računih, zgodovino transakcij, imena strank ali sklice plačil, odvisno od API-ja. Če povezava omogoča tudi plačila, lahko napake premaknejo pravi denar. Potrdite dejanski obseg dovoljenj; bančna povezava ne vključuje vedno dostopa do plačil.

Predstavitev ne dokazuje, da lahko uporabnik vidi samo račune, do katerih ima dovoljen dostop. Skrit gumb ne uveljavlja dovoljenja. OWASP opisuje, kako lahko manjkajoča preverjanja računov ali zapisov razkrijejo podatke drugega uporabnika.

Kaj bi lahko odpovedalo?Zakaj je pomembnoDokazila pred dostopom do pravega sistema
Zasebna poverilnica API se pojavi v kodi brskalnika ali dnevnikihDruga oseba bi lahko uporabila njena dovoljenjaPreglejte ravnanje s skrivnostmi; preizkusite preklic dostopa
Zaledni sistem sprejme ID računa brez preverjanja pravic klicateljaEn uporabnik bi lahko bral drug računPreizkusite zavrnitev zahtev za druge uporabnike in račune
Plačilni zahtevi poteče časovna omejitev, aplikacija pa jo pošlje znovaPonovni poskus bi lahko ustvaril drugo plačiloPreizkusite obravnavo ponovnih poskusov in uskladite rezultat s ponudnikom
Aplikacija pošlje podrobnosti transakcij neodobreni storitvi AIZaupne informacije zapustijo odobreno mejoSledite zahtevam, dnevnikom, prejemnikom in hrambi
Odvisnost po izdaji postane ranljivaNespremenjena aplikacija lahko še vedno potrebuje varnostni popravekDoločite odgovornost za stalno pregledovanje, odpravo ranljivosti in preverjanje namestitve

Pri plačilnih API-jih idempotentnost pomeni, da ponovljena zahteva ne ponovi predvidenega učinka. Stripe dokumentira eno izvedbo. Preverite vedenje, omejitve in pravila ponovnih poskusov dejanskega ponudnika. Povrnitev aplikacije na prejšnjo različico ne razveljavi plačila, ki ga je banka že obdelala.

Ta primer ni dokaz napake v orodju Lovable. Varnostne smernice orodja Lovable zahtevajo zaščitene skrivnosti, preverjanja na strežniku, preizkušene politike podatkov in sproten pregled. Za vsako orodje za gradnjo aplikacij, agenta ali ročno napisano aplikacijo uporabite enaka merila za dokazila.

Preverite dostop pred povezavo pravih sistemov

Delovni potek še naprej preizkušajte s sintetičnimi podatki in računi v peskovniku. Pred dostopom do pravega sistema naj odgovorni za storitev, varnost in platformo preverijo aplikacijo ter njeno okolje delovanja.

Uporabite postopek povezave, ki ga je odobrila banka ali ponudnik. Dodelite dostop samo do potrebnih računov in samo potrebna dovoljenja. Zasebne poverilnice hranite v odobreni shrambi skrivnosti, zunaj pozivov in kode brskalnika. Kadar so plačila potrebna, določite odobritve in omejitve plačil. Preverite, kako preklicati dostop, raziskati napake in se odzvati na sumljivo dejavnost.

Te odločitve sodijo pred vnos zaupnih informacij ali pravih poverilnic v sistem. Čakanje na uradno produkcijsko izdajo je lahko prepozno. Nadaljujte z mejami podatkov in infrastrukturo podjetja.

Določite odgovornosti pred širšo uporabo

Poskus z izmišljenimi podatki je lahko kratkotrajen in namenjen majhnemu krogu ljudi. Ko so drugi odvisni od aplikacije, določite odgovornosti za njeno uporabo.

  1. Določite odgovorno osebo.
  2. Opredelite dovoljene uporabnike in podatke.
  3. Določite odziv na napako.
  4. Izvorno kodo in konfiguracijo hranite v repozitoriju.
  5. Preverite, ali lahko druga oseba pregleda in ponovno vzpostavi sistem.

Vsaka skripta ne potrebuje platforme za podjetja. Osebno orodje za oblikovanje brez občutljivih podatkov potrebuje manj kontrol kot aplikacija za odobritev plačil. Ocenite posledice napake. Preverite, ali jo lahko zaznate in razveljavite njene učinke.

Preden razširite prototip, ločite spoznanja o problemu od dokazil o izvedbi. Vmesnik lahko obdržite in zamenjate notranjo kodo. Predvideno uporabo lahko omejite. Prototip lahko ohranite tudi kot začasen poskus.

Načrtujte obravnavo ranljivosti po predstavitvi

Uspešna predstavitev lahko skrije resno vrzel pri vzdrževanju. Za odvisnost je lahko objavljeno novo opozorilo o ranljivosti brez spremembe vaše kode. Pregled ob izdaji opisuje eno časovno točko.

Če aplikacija ostane v uporabi, mora nekdo stalno iskati, ocenjevati in odpravljati ranljivosti. Popravek mora priti v produkcijo in prestati preverjanje. Orodje za pregledovanje brez tega odzivnega postopka pušča izpostavljenost nerešeno.

Preverite, kaj zagotavljata vaše dejansko orodje in njegova konfiguracija. Poznejše poglavje o stalnem upravljanju ranljivosti pojasnjuje celoten postopek, vključno z neuspelimi pregledi in nameščenimi različicami.

Poskrbite, da bo naslednjo spremembo preprosto pregledati

Agentu dodelite eno majhno spremembo z jasnimi merili sprejemljivosti. Navedite, katera dejanja sme izvesti. Preglejte nastali diff. Izvedite preverjanja, ki lahko zavrnejo napačno izvedbo. Namestitev ohranite kot ločeno odločitev, dokler odgovornosti za izdajo niso jasne.

NIST Secure Software Development Framework opisuje širše prakse varnega razvoja. Uporabite ga kot vir pri ocenjevanju manjkajočih kontrol. Okvira se vam ni treba naučiti na pamet. Prepoznati morate manjkajoča dokazila, preden programska oprema vpliva na druge ljudi.

Opravite vajo

Izberite funkcijo iz nedavne predstavitve. 1. Zapišite en rezultat, ki ga je predstavitev dokazala. 2. Zapišite tri vprašanja, ki ostajajo odprta. 3. Za vsako vprašanje določite odgovorno osebo. 4. Navedite konkreten preizkus, ki lahko odkrije vsako možno napako. Izraza »poskrbite za varnost« ne uporabljajte namesto konkretnega preizkusa.

Prenesi delovni list (Markdown)
Preverite razumevanje ↑

Nadaljujte učenje

Viri in nadaljnje branje

Povezano gradivo podjetja Taiga