Defense in Depth - Vrstvená bezpečnost
Bezpečnost není jedna velká zeď kolem vašich systémů. Je to sada vrstev ochrany, kde i když selže jedna vrstva, další vrstvy stále chrání vaše data. Čím blíže se útočník dostane k cenným datům, tím silnější je ochrana. Jako ve videohře - každá úroveň je těžší než předchozí.
Analogie s fyzickou bezpečností
Představte si luxusní vilu s cennými předměty. Jak byste ji zabezpečili?
- Vysoká zeď (Firewall): První bariéra, ale pokud někdo přeleze...
- Zamčené hlavní dveře (Autentizace): Další překážka, ale klíče mohou být ukradeny...
- Zamčená místnost s cennými předměty (Autorizace): I uvnitř domu je přístup omezen...
- Trezor (Encryption): Nejcennější věci jsou v extra chráněné schránce...
- Kamery (Logging): Zaznamenávají všechno co se děje...
- Alarm (Monitoring): Upozorní když se něco děje...
Klíčový princip
Nedávejte klíče ke všem dveřím komukoliv. Access management je základ bezpečnosti - každý má přístup pouze k tomu co potřebuje.
Vrstvy aplikační bezpečnosti
Security Layers
1. Perimeter Security
První linie obrany
- Firewall a security groups
- WAF (Web Application Firewall)
- DDoS protection
- Rate limiting
2. Identity & Access
Kdo má přístup a k čemu
- Authentication (MFA)
- Authorization (RBAC)
- Session management
- Least privilege principle
3. Application Security
Bezpečnost aplikačního kódu
- Input validation
- Output encoding
- Secure coding practices
- Dependency management
4. Data Protection
Ochrana dat
- Encryption at rest
- Encryption in transit (TLS)
- Key management
- Data masking
5. Monitoring & Response
Detekce a reakce
- Security logging
- Intrusion detection
- Alerting
- Incident response
Least Privilege Principle
Každý uživatel, služba nebo systém by měl mít pouze minimální oprávnění potřebná pro vykonání své práce. Nic víc, nic míň.
- Developeři: Přístup k dev prostředí, ne k production
- CI/CD pipeline: Pouze deploy oprávnění, ne admin
- Aplikace: Přístup pouze k databázím které potřebuje
- Kontejnery: Bez root, s minimal capabilities
Proč je to důležité?
Pokud je kompromitován účet s admin oprávněními, útočník může dělat cokoliv. Pokud je kompromitován účet s omezenými oprávněními, škody jsou limitované.
Secure Development Lifecycle
Shift Left Security
- Security requirements už v design fázi
- Threat modeling před implementací
- Security code review
- Automatizované security testy v CI/CD
- Security training pro developery
Security v každé fázi
- Plan: Security requirements, threat modeling
- Code: Secure coding guidelines, pre-commit hooks
- Build: SAST, SCA, secret scanning
- Test: DAST, penetration testing
- Deploy: Configuration review, hardening
- Operate: Monitoring, incident response
Security Culture
DevSecOps není jen o nástrojích - je to změna kultury. Každý v týmu je zodpovědný za bezpečnost.
Jak budovat security kulturu
- Security training pro všechny (ne jen security tým)
- Security champions v každém týmu
- Blameless post-mortems po incidentech
- Gamifikace security (CTF, bug bounty)
- Sdílení security learningů napříč týmy
- Měření a vizualizace security metrik
Top Security Best Practices - Shrnutí
Must-Have
- MFA pro všechny účty
- Least privilege access
- Encryption everywhere (at rest + in transit)
- Regular patching a updates
- Logging a monitoring
- Incident response plan
- Regular backups
- Security awareness training
Nejčastější chyby
- Hardcoded credentials
- Admin přístup pro všechny
- Žádný input validation
- Ignorování security updates
- Žádné logging nebo monitoring
- Security až na konci projektu
- "Security by obscurity"