Tveganje za razvojnika
Cursor in Claude (kot tudi Copilot in altri AI urejevalniki) so neverjeten za razvoj, vendar se uslužbenci pogosto počuti zaupne podatke v AI.
Dejanskost?
- Razvojnik A je napisal
fetch("/api/customers", {headers: {Auth: process.env.DATABASE_URL}}) - Claude je napisal kodo z vključenim ključem
- Razvojnik je preveril kodo in jo spravil v GitHub
- GitHub je pregledal kredenciale in jih objavil na GitGuardian
Kako se zaščititi?
1. Nikoli ne pošlji credencialov v AI
❌ NAPAČNO:
"Kaj je napaka v tej kodi? Moja baza je postgres://user:password@host/db"
✅ PRAVILNO:
"Kaj je napaka v tej kodi, ki se povezuje z Postgres bazo?"
2. Vzdržuj .env datoteke izven AI
Cursor in Claude dostopata samo do datotek, ki jih vidiš. Vendar:
- Ne deli .env datotek
- Ne kopiraj vrednosti direktno
- Namesto tega uporabi spremenljivke in lastnosti
3. Preglej generirano kodo
AI bodo včasih:
- Zakodiraj ključe v kodo
- Zapiši
hardcoded: truekrmilnike - Vključi privzete gesla
Mi preveriti in izbrisati pred commitanjem.
4. Uporabi tajne upravljanje
Ako je projekt v GitHub:
- Dodaj secret v GitHub Settings → Secrets
- Uporabi
${{ secrets.API_KEY }}v workflows - Ne vidim vrednosti v repozitoriju
Za lokalni razvoj:
- Uporabi
1password,vault,dotenv - Ne shranjuj v plain text
- Obriši pri check-in
Priporočeni delovni tok
-
Zapiši zamisel najprej:
"Napravim funkcijo, ki pripelje podatke iz Stripe API. Trebam POST zahtevo s Stripe API ključem iz okoljskih spremenljivk." -
Naj AI napiše kodo:
const stripe_key = process.env.STRIPE_API_KEY; // ... koda -
Preglej za credenciale: (kot je zgoraj)
-
Preveri v .env.example:
STRIPE_API_KEY=sk_test_your_key_here -
Commit samo kode in .env.example, ne .env
Red zastavic
Odstrani to iz AI kode, preden jo uporabiš:
Bearer,Authorizationapi_key,secret,password- Databaza URL, hostnames
- Domene, domene tretjih oseb
- Razvojnik žetoni
Zaključek
Cursor in Claude sta potrebni za sodobni razvoj. Vendar so pravila preprosta: zaupaj orodjem, vendar ne kredencialom.