ai:zapisy-a-workflow:workflow:bezpecnost-ve-vibe-codingu

Bezpečnost ve vibe codingu

Vytvořeno: 11.6.2026 | Aktualizováno: 11.06.2026 14:23

Bezpečnost ve vibe codingu: nejčastější chyby a jak se jim vyhnout je rozhovor s Janem Ševčíkem o tom, jaké bezpečnostní chyby typicky vznikají při vývoji aplikací pomocí AI a jak je systematicky odhalovat. Zápis je praktický checklist pro projekty, které vznikly „vibe codingem“ a mají se posunout z prototypu do bezpečnějšího provozu.

Vibe coding umožňuje velmi rychle vytvořit prototyp nebo MVP, ale snadno vede k falešnému pocitu bezpečí. Aplikace může vypadat funkčně, přitom obsahovat uniklé API klíče, otevřené endpointy, chybějící testy nebo zbytečný balast v projektu. Hlavní doporučení z videa je postupovat pomaleji, průběžně se ptát na bezpečnost a nepouštět produkční aplikaci bez základní hygieny: 2FA, Git, audit secrets, kontrola endpointů a automatické testy.

Jedna z hlavních chyb je uložení API klíčů přímo v kódu nebo v doprovodných souborech. Ve videu se zmiňuje, že secrets nemusí být jen ve funkčním kódu, ale i v různých *.md souborech, které AI agent průběžně generuje.

Riziko je praktické: pokud se klíč dostane ven, může být zneužitý proti napojené službě. U AI služeb, platebních bran nebo cloudových účtů pak nemusí být hned vidět, co se stalo.

Pracovní prompt pro kontrolu projektu:

Vypiš mi všechny secrets a API klíče, které jsou v tomto projektu vidět.

Interpretace je jednoduchá: pokud je agent umí vypsat, jsou v projektu dostupné a je potřeba je přesunout mimo repozitář, typicky do environment proměnných nebo správce secrets.

AI podle videa často vytvoří endpointy nebo URL, které nejsou správně chráněné autentizací. Typický problém je stránka nebo API cesta, na kterou se dá dostat přímo přes URL, i když má být dostupná jen přihlášenému nebo platícímu uživateli.

Kontrola by neměla být jen „klikací“. Je potřeba projít všechny důležité URL a ověřit, které opravdu vyžadují přihlášení, roli, předplatné nebo jiné oprávnění.

U vibe-coded aplikací často chybí testy. Pak se snadno stane, že oprava jedné části rozbije jinou část aplikace. Ve videu zaznívá konkrétní příklad testů pro předplatné: ověřit, že do systému nepropadnou uživatelé bez zaplaceného subscribu.

Doporučený postup je nechat AI nejdřív navrhnout plán testů a až potom generovat konkrétní testy:

Připrav mi plán automatických testů pro tento projekt. Zaměř se hlavně na přístupová práva, platby, předplatné a endpointy, které nesmí být veřejné.

Potom navázat konkrétně:

Vytvoř automatický test pro kontrolu, že uživatel bez zaplaceného předplatného nemá přístup k placené části aplikace. Test ulož do samostatné složky pro testy.

Git je základní bezpečnostní i provozní hygiena. Umožňuje auditovat, co se v projektu měnilo, vracet se k předchozím verzím a zapojit nástroje, které kontrolují elementární bezpečnostní chyby.

Pokud projekt ještě není v repozitáři, je to první věc k nápravě.

Nestačí hledat jen v souborech aplikace. Kontrolovat je potřeba i:

  • konfigurační soubory,
  • dokumentační *.md soubory,
  • soubory vygenerované agentem,
  • staré nebo zdánlivě nepoužívané části projektu.

Prakticky lze začít ručně přes vyhledávání v editoru a potom přidat automatické kontroly v repozitáři nebo CI.

U každé důležité URL nebo API cesty je potřeba ověřit:

  • kdo se na ni může dostat,
  • zda vyžaduje přihlášení,
  • zda kontroluje roli nebo předplatné,
  • zda nevrací citlivá data bez autorizace,
  • zda test pokrývá očekávané chování.

Model může používat zastaralé postupy, protože jeho znalosti končí datem tréninku. Ve videu se jako řešení zmiňuje připojení MCP serveru Context 7, který poskytuje aktuální dokumentaci k technologiím jako Laravel, Stripe nebo Next.js.

Použitelný prompt po napojení dokumentace:

Při řešení tohoto úkolu vycházej z aktuální dokumentace dostupné přes MCP server. Nejdřív si dokumentaci projdi a teprve potom navrhni postup.

2FA není jen ochrana vývojářského účtu. Ve videu zaznívá širší pointa: čím víc aplikací vzniká rychlým vibe codingem, tím častěji uživatelé zadávají svá data do systémů, které nemusí být dobře zabezpečené. Dvoufaktorové ověřování proto snižuje dopad úniku hesla.

Jan Ševčík zmiňuje Laravel jako příklad determinističtějšího frameworku. Výhoda pro AI je v tom, že framework má jasnější konvence a méně prostoru pro libovolné řešení stejné věci. To může modelu snížit prostor pro chyby.

Naopak u ekosystémů typu React nebo Next.js modely často umí hodně variant, protože na nich bylo mnoho trénovacích dat. To ale samo o sobě neznamená, že jde o nejvhodnější volbu pro daný projekt nebo že výsledný kód bude bezpečnější.

  • Projekt je v Gitu a změny jsou auditovatelné.
  • Secrets nejsou v kódu, dokumentaci ani vygenerovaných souborech.
  • API klíče jsou mimo repozitář.
  • Všechny služby kolem projektu mají zapnuté 2FA.
  • Kritické endpointy vyžadují autentizaci a správná oprávnění.
  • Existují automatické testy pro přihlášení, role, platby a předplatné.
  • AI používá aktuální dokumentaci, ne jen tréninkovou paměť modelu.
  • Balast a nepotřebné soubory jsou odstraněné, aby projekt zbytečně nežral tokeny a nebyl méně přehledný.
  • Před prací s reálnými uživatelskými daty nebo penězi proběhne externí review nebo bezpečnostní audit.

Pokud aplikace zpracovává osobní údaje, odpovědnost za jejich ochranu nezmizí tím, že kód vygenerovala AI. Ve videu se připomíná GDPR a odpovědnost provozovatele aplikace při případném úniku dat. Vibe coding je dobrý nástroj pro rychlé prototypování, ale u aplikací s klientskými daty, platbami nebo citlivým obsahem je potřeba počítat s profesionálním review.

  • ai/zapisy-a-workflow/workflow/bezpecnost-ve-vibe-codingu.txt
  • Poslední úprava: 11.06.2026 14:23
  • autor: Petr Nosek