Modul 19 · Bezpečnost prakticky

Čtyři chyby, ze kterých je většina průšvihů

Realistický pohled na to, co se v malých projektech pokazí nejčastěji.

10 minlekce 96/107

Po lekci umíš

  • Znáš čtyři nejčastější bezpečnostní chyby
  • Umíš odhadnout, co je u tvého projektu v sázce
  • Víš, kde začít
Obsah lekce (4)

Zapomeň na filmové hackery. Malé projekty se rozbíjejí prozaicky.

Čtyři chyby

  1. Tajemství na špatném místě

    Klíč v kódu, klíč v Gitu, klíč v prohlížeči. Nejčastější chyba vůbec.

  2. Chybějící kontrola oprávnění

    Uživatel může přes upravenou adresu vidět nebo změnit cizí data. Druhá nejčastější.

  3. Důvěra vstupu od uživatele

    Aplikace věří tomu, co dostane z formuláře nebo z adresy, a nekontroluje to.

  4. Zbytečně nasbírané údaje

    Sbíráš osobní data, která nepotřebuješ, a pak za ně odpovídáš.

Všechny čtyři se dají zkontrolovat a všechny čtyři se dobře opravují – dokud je projekt malý.

Co je v sázce

Zeptej se sám sebe, než začneš cokoliv řešit:

  1. Co nejhoršího se může stát?

    Kdyby se někdo dostal ke všemu, co aplikace má – co to znamená? U seznamu receptů málo, u zdravotních záznamů hodně.

  2. Kolik lidí to postihne?

    Jeden uživatel, nebo tisíc?

  3. Dá se to vrátit?

    Smazaná data bez zálohy ne. Uniklé osobní údaje nikdy.

Rychlá inventura

Prompt pro Claude Code

Co je v mém projektu v sázce

Než začneš cokoliv opravovat, zjisti, o co jde.

Udělej mi inventuru toho, co je v tomhle projektu citlivého.

1. Jaká data aplikace ukládá? Vypiš je a u každého napiš,
 jak citlivé to je.
2. Sbíráme něco, co k fungování nepotřebujeme?
3. Kdo má ke kterým datům přístup?
4. Co nejhoršího by se stalo, kdyby se někdo dostal
 k celé databázi?
5. Kde jsou zálohy a kdo se k nim dostane?

Piš konkrétně a bez zbytečného strašení. Chci realistický obrázek.

Bod 2 je nedoceněný. Nejlepší ochrana dat je nemít je. Údaj, který nesbíráš, nemůže uniknout.

Zásady, které pokryjí většinu

  1. Minimum práv

    Každá část systému má mít jen ta oprávnění, která potřebuje. Klíč jen pro čtení, když se nezapisuje.

  2. Nedůvěřuj klientovi

    Cokoliv přijde z prohlížeče, může být upravené. Kontroly patří na server.

  3. Minimum dat

    Nesbírej, co nepotřebuješ. Nezobrazuj, co není potřeba zobrazit.

  4. Selhat zavřeně

    Když si systém není jistý, má odmítnout, ne povolit. Chybějící kontrola nesmí znamenat volný přístup.

Pro zvídavé

Tenhle kurz tě nenaučí bezpečnost na úrovni odborníka a ani se o to nesnaží. Pokrývá to, co běžný projekt potřebuje.

Když budeš pracovat se zdravotními údaji, platebními daty nebo něčím podobně citlivým, potřebuješ k tomu člověka, který se tím zabývá. To není výmluva – je to poctivé.

Co si odnést

  • Čtyři nejčastější chyby: tajemství, oprávnění, důvěra vstupu, zbytečná data.
  • Nejdřív si zjisti, co je v sázce. Podle toho rozhodni míru péče.
  • Nejlepší ochrana dat je je nemít.
  • Zásady: minimum práv, nedůvěřuj klientovi, minimum dat, selhat zavřeně.

Máš to za sebou?

Označ lekci jako hotovou, ať víš, kde jsi skončil. Nic se tím neuzamkne.

Obsah aktualizován: 21. srpna 2026