Secret kezelés webalkalmazásban
API kulcsok, adatbázis-jelszavak és service role credentialök: mi számít secretnek, hova kerülhet, és miért nem titok a frontend environment variable?
Röviden
Secret minden olyan credential vagy kulcs, amely birtokában valaki érzékeny műveletet végezhet. A böngészőbe elküldött érték nem tekinthető titoknak: ami a kliensbundle-ban, HTML-ben vagy hálózati kérésben megjelenik, azt a felhasználó meg tudja vizsgálni.
Mit jelent a secret kezelés webalkalmazásban?
Secret minden olyan credential vagy kulcs, amely birtokában valaki érzékeny műveletet végezhet. A böngészőbe elküldött érték nem tekinthető titoknak: ami a kliensbundle-ban, HTML-ben vagy hálózati kérésben megjelenik, azt a felhasználó meg tudja vizsgálni.
Secret életút
01
Létrehozás
02
Tárolás
03
Használat
04
Rotáció
05
Visszavonás
Hogyan működik a gyakorlatban?
Szerveroldali secreteket környezeti vagy dedikált secret managerben tárolj, korlátozott hozzáféréssel és rotációs tervvel. CI log, hibakövető, git history és support screenshot is kiszivárgási csatorna lehet.
- Public/publishable kulcsot és valódi privileged secretet különböztesd meg.
- Service role vagy admin kulcs maradjon megbízható szerveroldali környezetben.
- Gitből törölt secretet kompromittáltnak kell tekinteni és rotálni.
- Adj minden integrációnak csak szükséges scope-ot.
Gyakorlati fejlesztői szemlélet
Projekt reviewnál készíts secret inventoryt: hol jön létre, hol tárolódik, ki fér hozzá, hol logolódhat, és hogyan rotálod incidenskor. Ezzel sokkal többet nyersz, mint fájlnevekre hagyatkozó `.env` mítoszokkal.
Gyakori hibák és félreértések
- NEXT_PUBLIC_ vagy hasonló kliensoldali env változóba privilegizált secretet tenni.
- A repositoryból való törlést rotáció helyett elégnek gondolni.
- Egyetlen teljes jogú API kulcsot minden környezetben újrahasználni.
Források és szabványok
A technikai részletekhez elsődleges szabványokat és karbantartott hivatalos dokumentációt használok. Frameworkök, böngészők és webes API-k idővel változhatnak, ezért implementálás előtt mindig ellenőrizd az aktuális dokumentációt is.
Kapcsolódó ByBence Academy