Õpitee 01Õppetund 1 / 6

Vibe coding: kasutusvõimalused ja piirid

Aita inimestel AI abil ideid uurida. Panganduse prototüüp näitab, miks pärisandmed ja API õigused vajavad turvalisuse kohta tõendeid.

Alustase11 minÜle vaadatud

Avaldaja Kuidas me kirjutame

Mida õpid

  • Erista katsetamist väljalaskeotsusest.
  • Leia veenvast demost puudu olevad vastutusalad.
  • Vali esimese katsetuse jaoks turvaline piir.

Anna inimestele võimalus luua

Suure ettevõtte CTO saab aidata rohkematel inimestel muuta oma teadmised tarkvaraideedeks. Kaasa inimesi finantsidest, käitusest, müügist ja arendusest. Anna neile aega, sünteetilisi andmeid, test-API-sid ja tuge.

Luba ideede uurimiseks eri tööriistu selgete paigaldus-, konto- ja sisendandmete piiride raames. Brauseripõhine rakendusekoostaja, koodiassistent või kohalik agent võib aidata ideed katsetada. Tööriista valik ei anna luba ettevõtte infot üles laadida ega pärissüsteemi ühendada.

Kirjelda lihtsat viisi, kuidas tuua kasulik prototüüp arendus- või platvormimeeskonnani. Looja panustab probleemi, näidistöövoo ja täheldatud väärtuse. Ta ei pea ise muutuma teenuse turbe- ja käitusmeeskonnaks.

Määra, mida pead õppima

Vibe coding algab tavaliselt soovitud tarkvara kirjeldusest. Võtad genereeritud koodi vastu ja suunad järgmise muudatuse nähtava tulemuse järgi. Terminil on mitu tähendust. Selles juhendis ei pruugi töö suunaja mõista iga teostusotsust.

See meetod võib aidata õppida. Lihtne kasutajaliides võib näidata, et kinnitusprotsessis on liiga palju samme. Ajutine skript võib aidata failivormingut hinnata. Prototüüp annab inimestele konkreetse lahenduse, mida arutada. Saad need teadmised alles hoida ka siis, kui koodi kõrvale jätad.

Määra kõigepealt küsimus, mille vastust saab vaadelda. Näiteks: „Kas meeskonnajuht saab sellest kinnitusprotsessist aru?” Sellel küsimusel on selge ulatus. Kuluhaldussüsteemi loomise soov hõlmab lisaks andmekaitset, juurdepääsukontrolli, käitust ja vastutust.

Teisipäevane pangandusprototüüp

Vaatame väljamõeldud näidet. Teisipäeval koostab finantskolleeg Lovable’i abil juhtpaneeli väljamõeldud pangatehingutest. See rühmitab kulud ja näitab tasumata arveid. Meeskond saab nüüd arutada kasulikku töövoogu.

Keegi soovitab ühendada ettevõtte pangakonto. See muudab tagajärgi isegi siis, kui rakendus kannab endiselt silti „prototüüp”.

Lugemisõigus võib API-st olenevalt avaldada saldod, tehinguajaloo, klientide nimed või maksete viited. Kui ühendus lubab ka makseid, võivad vead liigutada pärisraha. Kinnita õiguste tegelik ulatus: pangaühendus ei hõlma alati makseõigust.

Demo ei tõenda, et kasutaja näeb ainult talle lubatud kontosid. Peidetud nupp ei jõusta õigust. OWASP kirjeldab, kuidas puuduv konto- või kirjekontroll võib avaldada teise kasutaja andmed.

Mis võib ebaõnnestuda?Miks see on oluline?Tõendid enne pärisjuurdepääsu
Privaatsed API autentimisandmed ilmuvad brauserikoodi või logidesseTeine osapool võib kasutada nende õigusiUuri saladuste käitlust; testi juurdepääsu tühistamist
Tagasüsteem võtab konto ID vastu kutsuja õigusi kontrollimataÜks kasutaja võib lugeda teise kontotTesti teiste kasutajate ja kontode keelatud päringuid
Maksepäring aegub ja rakendus saadab selle uuestiKorduskatse võib tekitada teise makseTesti korduskatsete käitlust ja võrdle tulemust teenusepakkuja andmetega
Rakendus saadab tehinguandmed heakskiitmata AI-teenuseleKonfidentsiaalne info väljub lubatud piiridestJälgi päringuid, logisid, saajaid ja säilitamist
Sõltuvus muutub pärast käivitamist haavatavaksKa muutmata rakendus võib vajada turvaparandustMäära vastutus pideva skannimise, parandamise ja juurutuse kontrolli eest

Makse-API-des tähendab idempotentsus, et korduv päring ei korda kavandatud mõju. Stripe dokumenteerib ühe teostuse. Kontrolli tegeliku teenusepakkuja käitumist, piire ja korduskatsete reegleid. Rakenduse tagasipööre ei tühista makset, mille pank on töödelnud.

See näide ei tõenda Lovable’i viga. Lovable’i enda turvajuhised nõuavad kaitstud saladusi, serveripoolseid kontrolle, testitud andmereegleid ja pidevat ülevaatust. Rakenda sama tõendamisnõuet igale rakendusekoostajale, agendile või käsitsi kirjutatud rakendusele.

Kontrolli juurdepääsu enne pärissüsteemide ühendamist

Jätka töövoo testimist sünteetiliste andmete ja testkontodega. Enne pärisjuurdepääsu lase teenuse, turbe ja platvormi eest vastutajatel kontrollida rakendust ning selle käituskeskkonda.

Kasuta panga või teenusepakkuja heakskiidetud ühendusvoogu. Anna ainult vajalikud kontod ja õigused. Hoia privaatseid autentimisandmeid heakskiidetud saladustehoidlas, väljaspool prompte ja brauserikoodi. Kui maksed on vajalikud, määra nende kinnitused ja piirangud. Kontrolli, kuidas juurdepääsu tühistada, tõrkeid uurida ja kahtlasele tegevusele reageerida.

Need otsused tuleb teha enne konfidentsiaalse sisendi või pärisautentimisandmete süsteemi jõudmist. Ametliku tootmisväljalaske ootamine võib olla liiga hiline. Jätka teemadega andmepiirid ja ettevõtte taristu.

Määra vastutus enne kasutuse laiendamist

Väljamõeldud andmetega katsetus võib olla lühiajaline ja väikese kasutajaskonnaga. Kui teised inimesed hakkavad rakendusest sõltuma, määra vastutus selle kasutamise eest.

  1. Nimeta vastutaja.
  2. Määra lubatud kasutajad ja andmed.
  3. Kirjelda reaktsiooni tõrkele.
  4. Hoia lähtekoodi ja konfiguratsiooni koodihoidlas.
  5. Kontrolli, et teine inimene saab süsteemi uurida ja taastoota.

Iga skript ei vaja ettevõtte platvormi. Isiklik vormindaja, mis ei kasuta tundlikke andmeid, vajab vähem kontrolle kui maksete kinnitamise rakendus. Hinda vea tagajärgi. Kontrolli, kas saad vea tuvastada ja selle mõju tagasi pöörata.

Enne prototüübi laiendamist erista probleemi kohta õpitut teostuse kohta kogutud tõenditest. Saad kasutajaliidese alles jätta ja sisemise koodi asendada. Saad kavandatud kasutust piirata. Saad prototüübi ka ajutiseks katsetuseks jätta.

Plaani haavatavuste käsitlemist pärast demot

Edukas demo võib varjata tõsist hoolduslünka. Sõltuvuse kohta võib ilmuda uus haavatavusteade ilma sinu koodi muutuseta. Väljalaskeaegne skannimine kirjeldab üht ajahetke.

Kui rakendus jääb kasutusse, peab keegi jätkama haavatavuste leidmist, hindamist ja parandamist. Parandus peab jõudma tootmiskeskkonda ning läbima kontrolli. Ilma selle reageerimisprotsessita jätab skanner ohu kõrvaldamata.

Kontrolli, mida sinu tegelik tööriist ja konfiguratsioon pakuvad. Hiljem selgitab pidev haavatavuste haldus kogu protsessi, sealhulgas skannimistõrkeid ja juurutatud versioone.

Tee järgmine muudatus hõlpsasti ülevaadatavaks

Anna agendile üks väike muudatus selgete vastuvõtukriteeriumidega. Ütle, milliseid toiminguid agent võib teha. Uuri tekkinud diffi. Tee kontrolle, mis suudavad vale teostuse tagasi lükata. Hoia juurutus eraldi otsusena, kuni väljalaskevastutus on selge.

NIST Secure Software Development Framework kirjeldab turvalise arenduse laiemaid praktikaid. Kasuta seda puuduvaid kontrolle hinnates. Sa ei pea raamistikku pähe õppima. Pead leidma puuduvad tõendid enne, kui tarkvara teisi inimesi mõjutab.

Tee harjutus

Vali mõnest hiljutisest demost üks funktsioon. 1. Pane kirja üks tulemus, mida demo tõendas. 2. Pane kirja kolm küsimust, mis jäid lahtiseks. 3. Määra igale küsimusele vastutaja. 4. Nimeta konkreetne kontroll, mis suudab iga võimaliku vea tuvastada. Ära asenda konkreetset kontrolli juhisega „tee see turvaliseks”.

Laadi tööleht alla (Markdown)

Kontrolli oma arusaamist

Panga juhtpaneel töötab väljamõeldud tehingutega. Kolleeg soovitab ühendada päriskonto ainult lugemisõigusega. Mida peaksid tegema?

Allikad ja lisalugemine

Seotud lugemine Taigalt