APIRESTSecurityGraphQLJWTOAuthOWASPKryptographie

API Design und API Security: Sichere APIs entwickeln

Dreitägiges intensives Training zu professionellem API Design, Entwicklung und umfassender API-Sicherheit.

3 Tage
Intermediate
Loslegen

API Design und API Security: Sichere APIs entwickeln

Kursüberblick

Dieser umfassende 3-tägige Schulungskurs vermittelt Ihnen Best Practices für professionelles API Design und umfassende API-Sicherheit. Lernen Sie, wie Sie moderne, sichere und skalierbare APIs entwickeln, häufige Sicherheitslücken vermeiden und Ihre APIs gegen aktuelle Bedrohungen schützen.

Was Sie lernen werden

Tag 1: API Design Fundamentals und Architektur

  • API Design Best Practices

    • Grundprinzipien guten API Designs
    • RESTful API Design Guidelines
    • API Versioning Strategien
    • Resource Naming Conventions
    • HTTP Methods richtig einsetzen
    • Status Codes und Error Handling
  • API Architektur-Stile im Vergleich

    • REST APIs: Prinzipien, Vor- und Nachteile
    • GraphQL: Query Language, Schema Design, Resolvers
    • gRPC: Protocol Buffers, Performance-Vorteile
    • SOAP: Legacy-Integration
    • Wann welcher Stil am besten geeignet ist
    • Praktischer Vergleich mit Beispielen
  • API Infrastructure

    • API Gateway: Funktionen und Einsatzszenarien
    • Reverse Proxy: Nginx, Apache als API-Frontend
    • Load Balancing für APIs
    • Rate Limiting und Throttling
    • Caching-Strategien
  • API Management

    • API Lifecycle Management
    • API Documentation und Developer Portal
    • API Analytics und Monitoring
    • API Governance und Standards
    • Tools: Kong, Apigee, AWS API Gateway
  • Swagger/OpenAPI für API-Entwicklung

    • OpenAPI Specification (OAS) 3.0
    • API Design mit Swagger Editor
    • Code-Generierung aus Spezifikationen
    • SwaggerHub für kollaborative Entwicklung
    • API Testing mit Swagger UI
    • Dokumentations-Best-Practices

Tag 2: API Security Fundamentals und Kryptographie

  • Grundlagen IT-Sicherheit

    • CIA-Triade: Confidentiality, Integrity, Availability
    • Weitere Schutzziele: Authentizität, Nichtabstreitbarkeit
    • Bedrohungsmodellierung für APIs
    • Security by Design Prinzipien
    • Defense in Depth Strategie
  • Authentication und Authorization

    • Authentication-Methoden:
      • Basic Authentication
      • API Keys
      • Token-based Authentication
      • Multi-Factor Authentication (MFA)
    • Authorization-Konzepte:
      • Role-Based Access Control (RBAC)
      • Attribute-Based Access Control (ABAC)
      • Policy-Based Access Control
    • Principle of Least Privilege
    • Nichtabstreitbarkeit (Non-Repudiation):
      • Konzept und Bedeutung
      • Digitale Signaturen
      • Audit Trails und Logging
  • HTTP Security Basics

    • HTTP vs. HTTPS
    • TLS/SSL Grundlagen
    • HTTP Security Headers:
      • Strict-Transport-Security
      • Content-Security-Policy
      • X-Frame-Options
      • X-Content-Type-Options
    • CORS (Cross-Origin Resource Sharing)
    • HTTP Status Codes im Security-Kontext
  • Grundlagen Kryptographie

    • Hash-Funktionen und Digitaler Fingerabdruck
      • Was ist ein Hash/Digest?
      • Eigenschaften kryptographischer Hash-Funktionen
      • Anwendungen: Prüfsummen, Integritätsprüfung
    • Hash-Algorithmen
      • SHA-1 (veraltet, Schwächen)
      • SHA-256, SHA-384, SHA-512
      • SHA-3 Familie
      • Sicherheit von Hash-Algorithmen
    • Passwort-Hashing
      • Salting und Peppering
      • bcrypt, Argon2, PBKDF2
      • Rainbow Tables und deren Abwehr
    • Symmetrische Verschlüsselung
      • Grundprinzip: Ein Schlüssel für Ver- und Entschlüsselung
      • AES (Advanced Encryption Standard)
      • AES Modi: CBC, GCM, CTR
      • Key Management
    • Asymmetrische Verschlüsselung
      • Grundprinzip: Public/Private Key Paare
      • RSA Algorithmus
      • Elliptic Curve Cryptography (ECC)
      • Anwendungen: Key Exchange, Digitale Signaturen
    • Digitale Signaturen
      • Wie funktionieren digitale Signaturen?
      • Unterschied zu Verschlüsselung
      • Einsatz in APIs

Tag 3: JWT, OAuth und API Security Best Practices

  • JWT (JSON Web Token) im Detail

    • JWT Grundlagen
      • Was ist JWT und wofür wird es verwendet?
      • JWT vs. Session-based Authentication
      • Stateless Authentication
    • JWT Aufbau
      • Header: Algorithmus und Token-Typ
      • Payload: Claims (Standard, Public, Private)
      • Signature: Integritätssicherung
      • Base64URL Encoding
    • JOSE Standards (JSON Object Signing and Encryption)
      • JWS (JSON Web Signature): Signierte Tokens
      • JWE (JSON Web Encryption): Verschlüsselte Tokens
      • JWK (JSON Web Key): Schlüsselrepräsentation
      • JWA (JSON Web Algorithms): Algorithmen-Spezifikation
    • JWT Signing und Verification
      • HMAC (Symmetric: HS256, HS384, HS512)
      • RSA (Asymmetric: RS256, RS384, RS512)
      • ECDSA (Asymmetric: ES256, ES384, ES512)
      • Key Rotation Best Practices
    • JWT Workflow und Lifecycle
      • Token Issuance
      • Token Validation
      • Token Refresh
      • Token Revocation Strategien
    • JWT Security Best Practices
      • Kritische Claims: exp, iat, nbf
      • Token-Lebensdauer festlegen
      • Sensitive Daten in JWT vermeiden
      • Algorithm Confusion Attacks verhindern
  • OAuth 2.0 und JWT

    • OAuth 2.0 Framework Überblick
    • Authorization Flows:
      • Authorization Code Flow
      • Client Credentials Flow
      • Implicit Flow (deprecated)
      • PKCE (Proof Key for Code Exchange)
    • OAuth 2.0 mit JWT Access Tokens
    • OpenID Connect (OIDC) Grundlagen
    • Refresh Tokens vs. Access Tokens
  • OWASP API Security Top 10

    • API1: Broken Object Level Authorization
      • Was ist IDOR (Insecure Direct Object Reference)?
      • Praktisches Beispiel und Exploitation
      • Gegenmaßnahmen und Prävention
    • API2: Broken Authentication
      • Schwache Authentifizierungsmechanismen
      • Beispiel: Credential Stuffing
      • Sichere Authentication implementieren
    • API3: Broken Object Property Level Authorization
      • Mass Assignment Schwachstellen
      • Beispiel: Unerwünschte Datenmanipulation
      • Input Filtering und Whitelisting
    • API4: Unrestricted Resource Consumption
      • DoS durch fehlende Rate Limits
      • Beispiel: API Resource Exhaustion
      • Rate Limiting und Quotas implementieren
    • API5: Broken Function Level Authorization
      • Fehlende Zugriffskontrolle auf Funktionsebene
      • Beispiel: Admin-Funktionen für normale User
      • Proper Authorization Checks
    • API6: Unrestricted Access to Sensitive Business Flows
      • Business Logic Flaws
      • Beispiel: Automatisierte Angriffe auf kritische Flows
      • Bot Detection und Flow-Schutz
    • API7: Server Side Request Forgery (SSRF)
      • Wie funktioniert SSRF?
      • Beispiel: Zugriff auf interne Ressourcen
      • URL Validation und Whitelisting
    • API8: Security Misconfiguration
      • Default Credentials, unnötige Features
      • Beispiel: Exponierte Debug-Endpoints
      • Security Hardening Checklisten
    • API9: Improper Inventory Management
      • Unversionierte oder vergessene APIs
      • Beispiel: Shadow APIs
      • API Inventory und Lifecycle Management
    • API10: Unsafe Consumption of APIs
      • Vertrauen in externe APIs
      • Beispiel: API Chain Attacks
      • Validierung von Drittanbieter-Daten
  • Input Validation und Output Encoding

    • Input Validation Best Practices
    • Whitelisting vs. Blacklisting
    • SQL Injection Prevention
    • XSS Prevention in APIs
    • XML External Entity (XXE) Prevention
    • Command Injection Prevention
    • Output Encoding Strategien
  • Angriffsvektoren bei APIs aus der Praxis

    • Injection Attacks: SQL, NoSQL, Command Injection
    • Broken Access Control: Praktische Beispiele
    • API Enumeration und Information Disclosure
    • Man-in-the-Middle (MitM) Angriffe
    • Replay Attacks und Gegenmaßnahmen
    • API Scraping und Bot Detection
    • DDoS und Rate Limit Bypass
    • Real-World Case Studies
  • API Security Testing und Tools

    • Security Testing Methodologien
    • OWASP ZAP für API Testing
    • Burp Suite Professional
    • Postman Security Testing
    • Automated Security Scanning
    • Penetration Testing Basics

Voraussetzungen

  • Grundlegende Programmierkenntnisse
  • Verständnis von HTTP und Web-Technologien
  • Erfahrung mit REST APIs von Vorteil
  • Keine tiefgehenden Security-Kenntnisse erforderlich

Kursformat

  • Dauer: 3 ganze Tage (je 8 Stunden)
  • Format: Instruktor-geleitetes Training mit umfangreichen Hands-on Labs
  • Klassengröße: Maximal 12 Teilnehmer für intensive Betreuung
  • Materialien: Umfassende Kursunterlagen, Code-Beispiele und Checklisten inklusive

Hands-on Labs und Übungen

Während des Kurses arbeiten Sie an praxisnahen Projekten:

  1. Design und Implementierung einer RESTful API mit OpenAPI
  2. Vergleich: Gleiche API in REST, GraphQL und gRPC implementieren
  3. API Gateway Setup mit Kong oder Nginx
  4. Implementierung verschiedener Authentication-Mechanismen
  5. JWT-basierte Authentifizierung von Grund auf entwickeln
  6. OAuth 2.0 Flow praktisch umsetzen
  7. Kryptographie-Übungen: Hashing, Signing, Encryption
  8. OWASP Top 10 Exploits nachstellen und absichern
  9. Security Testing mit OWASP ZAP
  10. API Documentation mit SwaggerHub erstellen

Verwendete Tools und Technologien

Im Kurs arbeiten wir mit:

  • OpenAPI/Swagger, SwaggerHub
  • Postman für API Testing
  • Node.js/Express oder Python/Flask für API-Entwicklung
  • Kong oder Nginx als API Gateway
  • OWASP ZAP und Burp Suite
  • JWT Libraries und OAuth Providers
  • Git und Docker

Wer sollte teilnehmen

  • Backend-Entwickler und API-Entwickler
  • Software-Architekten
  • DevOps und Platform Engineers
  • Security Engineers und Consultants
  • Full-Stack Entwickler
  • Technical Leads und Team Leads
  • Alle, die sichere APIs entwickeln oder bewerten müssen

Lernziele

Am Ende dieses Kurses werden Sie in der Lage sein:

  • ✅ Professionelle, gut strukturierte APIs zu designen
  • ✅ Verschiedene API-Stile (REST, GraphQL, gRPC) situationsgerecht einzusetzen
  • ✅ API Gateways und Management-Tools zu konfigurieren
  • ✅ Sichere Authentication und Authorization zu implementieren
  • ✅ JWT und OAuth 2.0 korrekt einzusetzen
  • ✅ Kryptographische Grundlagen praktisch anzuwenden
  • ✅ OWASP API Security Top 10 Risiken zu erkennen und zu vermeiden
  • ✅ Input Validation und Security Best Practices umzusetzen
  • ✅ APIs auf Sicherheitslücken zu testen
  • ✅ OpenAPI-Spezifikationen zu erstellen und zu nutzen