Formulare verbinden Browser, Fachlogik und Persistenz und sind damit ein häufiger Ort für Datenfehler und Sicherheitslücken. Ein sauberer Ablauf trennt Darstellung, Validierung, Verarbeitung und Rückmeldung.
Das Seminar behandelt klassische Formulare, serverseitige Validatoren, CSRF-Schutz, Post/Redirect/Get und sichere Datei-Uploads. Fehlermeldungen und Barrieren werden aus Sicht realer Nutzerflüsse getestet.
Inhaltsübersicht
- Formulare und serverseitige Validierung
- CSRF-Schutz und robuste Eingabeprüfung
- Datei-Uploads und sichere Verarbeitung
- Makros, Includes und wiederverwendbare Komponenten
- Request-Daten und Kontextobjekte
- CSRF, Cookies und Sitzungsabsicherung
- Routen- und Browserfluss-Tests
- Praxisprojekt und Wissenssicherung
Lernziele
- Formularabläufe mit Post/Redirect/Get strukturiert umsetzen.
- Technische und fachliche Validierung sauber trennen.
- CSRF-Schutz für cookieauthentifizierte Requests integrieren.
- Datei-Uploads gegen Größen-, Typ- und Pfadangriffe absichern.
- Erfolgs-, Fehler- und Manipulationsfälle automatisiert testen.
Zielgruppe
Flask-Entwickler und Webteams, die datenerfassende Oberflächen, Verwaltungsdialoge oder Upload-Funktionen sicher umsetzen.
Voraussetzungen
Python- und Flask-Grundkenntnisse sowie Basiswissen zu HTML-Formularen und HTTP-Methoden.
Seminarinhalte
1. Formulare und serverseitige Validierung
Formularverarbeitung wird als klarer Ablauf aus Anzeige, Eingabeprüfung, Verarbeitung und Rückmeldung umgesetzt.
- Schritt 1: GET- und POST-Verhalten trennen und das Post/Redirect/Get-Muster anwenden.
- Schritt 2: Felder, Validatoren und fachliche Abhängigkeiten in Formular- beziehungsweise Schemaobjekten definieren.
- Schritt 3: Fehlermeldungen feldbezogen, verständlich und ohne Verlust eingegebener Werte ausgeben.
- Schritt 4: Erfolgs- und Fehlerpfade mit realistischen Daten über den Test-Client prüfen.
2. CSRF-Schutz und robuste Eingabeprüfung
Verändernde Anfragen werden gegen fremde Ursprünge geschützt und Eingaberegeln zentral durchgesetzt.
- Schritt 1: CSRF-Token aktivieren, in Formulare integrieren und für APIs bewusst anders behandeln.
- Schritt 2: Längen, Formate, Wertebereiche und erlaubte Auswahlwerte bereits am Rand der Anwendung prüfen.
- Schritt 3: Fachliche Validierung von Datenbankzugriff und Seiteneffekten trennen.
- Schritt 4: Manipulierte Tokens, doppelte Übermittlungen und ungültige Zeichensätze automatisiert testen.
3. Datei-Uploads und sichere Verarbeitung
Uploads werden als untrusted input behandelt und mit Größen-, Typ- und Speicherregeln abgesichert.
- Schritt 1: Multipart-Formulare, Request-Limits und erlaubte Dateitypen konfigurieren.
- Schritt 2: Dateinamen normalisieren, zufällige Zielnamen vergeben und Pfadmanipulation verhindern.
- Schritt 3: Dateien außerhalb direkt ausführbarer Webverzeichnisse speichern und Abrufrechte prüfen.
- Schritt 4: Zu große, leere, doppelte und absichtlich falsch deklarierte Dateien testen.
4. Makros, Includes und wiederverwendbare Komponenten
Wiederkehrende Oberflächenelemente werden als kleine, testbare Template-Komponenten gekapselt.
- Schritt 1: Makros für Formularfelder, Tabellen, Hinweise und Pagination definieren.
- Schritt 2: Includes nur für klar abgegrenzte Fragmente verwenden und Kontextübergaben explizit machen.
- Schritt 3: Komponentenvarianten über Parameter statt kopierter Templates abbilden.
- Schritt 4: HTML-Ausgabe der wichtigsten Komponenten mit Snapshot- oder Strukturtests prüfen.
5. Request-Daten und Kontextobjekte
Eingabedaten aus URL, Formular, JSON, Cookies und Headern werden kontrolliert gelesen und normalisiert.
- Schritt 1: Query-Parameter, Pfadwerte und Formulardaten mit expliziten Standardwerten auslesen.
- Schritt 2: JSON-Nachrichten anhand des Inhaltstyps prüfen und ungültige Nutzdaten eindeutig ablehnen.
- Schritt 3: request, session, g und current_app nach Lebensdauer und Verantwortlichkeit einsetzen.
- Schritt 4: Grenzfälle wie fehlende Felder, Mehrfachwerte und große Request-Körper mit Tests absichern.
6. CSRF, Cookies und Sitzungsabsicherung
Browserbasierte Zustandsänderungen und Sitzungen werden gegen fremde Ursprünge und Diebstahl geschützt.
- Schritt 1: CSRF-Schutz für alle cookieauthentifizierten verändernden Requests aktivieren.
- Schritt 2: Secure, HttpOnly, SameSite und kurze Lebensdauer für Sitzungscookies konfigurieren.
- Schritt 3: Session-Fixation durch Erneuerung und session.clear bei Identitätswechsel verhindern.
- Schritt 4: Cross-Site- und Replay-Szenarien mit realistischen Requests testen.
7. Routen- und Browserfluss-Tests
HTTP-Verhalten wird ohne realen Server über den Flask-Test-Client geprüft.
- Schritt 1: GET-, POST- und Redirect-Ketten mit Statuscodes und Headern testen.
- Schritt 2: Formular-, JSON-, Datei- und Cookie-Daten realistisch übermitteln.
- Schritt 3: Anmeldezustand und Request-Kontext kontrolliert erhalten.
- Schritt 4: HTML-Inhalte gezielt auf Semantik und Fehlermeldungen statt auf vollständige Zeichenketten prüfen.
Praxisprojekt
Ein mehrteiliges Verwaltungsformular wird mit Validierung, CSRF und verständlicher Fehlerausgabe aufgebaut. Danach folgt ein Uploadprozess mit Größenlimit, sicherer Ablage, Berechtigungsprüfung und Negativtests.
Methodik
Kurze fachliche Einordnungen wechseln mit Demonstrationen, geführten Umsetzungen, Fehleranalysen und eigenständigen Übungen. Jede größere Änderung wird durch einen Test, eine Diagnose oder eine betriebliche Prüfroutine abgesichert. Die Arbeitsstände werden schrittweise zu einem durchgängigen Beispielprojekt zusammengeführt.
Fachbereichsleitung / Trainerteam / Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.198 zzgl. MwSt. Inhaus: € 3.400 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Flask-Entwickler und Webteams, die datenerfassende Oberflächen, Verwaltungsdialoge oder Upload-Funktionen sicher umsetzen. |
| Voraussetzungen: | Python- und Flask-Grundkenntnisse sowie Basiswissen zu HTML-Formularen und HTTP-Methoden. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
