Sichere Java-Entwicklung (inkl. OWASP) Schulung
Dieser Kurs behandelt die Prinzipien des sicheren Programmierens in Java anhand der Testmethodik des Open Web Application Security Project (OWASP). Das Open Web Application Security Project ist eine Online-Community, die frei verfügbare Artikel, Methoden, Dokumentation, Tools und Technologien im Bereich der Webanwendungssicherheit bereitstellt.
Schulungsübersicht
- Verständnis von Web-Bedrohungen und Angriffspfaden
- Kennenlernen der Prinzipien des sicheren Designs
- Verständnis der OWASP Top 10 Angriffe
- Verständnis der Probleme bei Authentifizierung und Autorisierung
- Wissen über die Verhinderung von Cross-Site Scripting (XSS)
- Wissen über die Verhinderung von Cross-Site Request Forgery (CSRF)
- Verständnis des sicheren Entwicklungszyklus
- Wissen über die Verhinderung von Injection-Angriffen
- Verständnis der Schutzmaßnahmen in JDBC und JPA
- Verständnis der Methoden der Penetrationstests
- Wissen über die Sicherung von Java-Anwendungen
Voraussetzungen
- Erfahrung mit Java.
- Erfahrung in der Erstellung von Webanwendungen.
Offene Schulungskurse erfordern mindestens 5 Teilnehmer.
Sichere Java-Entwicklung (inkl. OWASP) Schulung - Buchung
Sichere Java-Entwicklung (inkl. OWASP) Schulung - Anfrage
Sichere Java-Entwicklung (inkl. OWASP) - Beratungsanfrage
Erfahrungsberichte (3)
Das Thema ist aktuell und ich musste mich aktualisieren
Damilano Marco - SIAP s.r.l.
Kurs - Secure Developer Java (Inc OWASP)
Maschinelle Übersetzung
Es war sehr umfassend, die Informationen waren klar und prägnant.
Sebastian-Daniel - BRD
Kurs - Secure Developer Java (Inc OWASP)
Maschinelle Übersetzung
Mehrere Beispiele für jedes Modul und großartiges Wissen des Trainers.
Sebastian - BRD
Kurs - Secure Developer Java (Inc OWASP)
Maschinelle Übersetzung
Kommende Kurse
Kombinierte Kurse
Netzwerksicherheit und sichere Kommunikation
21 StundenDie Implementierung einer sicheren, vernetzten Anwendung kann auch für Entwickler herausfordernd sein, die bereits mit verschiedenen kryptografischen Bausteinen (wie Verschlüsselung und digitalen Signaturen) vertraut sind. Um den Teilnehmern die Rolle und den Einsatz dieser kryptografischen Primitive zu verdeutlichen, wird zunächst eine solide Grundlage bezüglich der Hauptanforderungen an eine sichere Kommunikation – sichere Bestätigung, Integrität, Vertraulichkeit, Remote-Identifizierung und Anonymität – gelegt. Dabei werden auch typische Probleme aufgezeigt, die diese Anforderungen gefährden können, sowie reale Lösungen vorgestellt.
Da Kryptografie ein entscheidender Aspekt der Netzwerksicherheit ist, werden die wichtigsten kryptografischen Algorithmen in der symmetrischen Kryptografie, Hashing, asymmetrischer Kryptografie und Schlüsselaustausch behandelt. Statt einer tiefgehenden mathematischen Herleitung werden diese Elemente aus Sicht eines Entwicklers diskutiert, wobei typische Use-Case-Beispiele und praktische Aspekte im Zusammenhang mit dem Einsatz von Kryptografie, wie beispielsweise Public Key Infrastrukturen (PKI), erläutert werden. Außerdem werden Sicherheitsprotokolle in vielen Bereichen der sicheren Kommunikation eingeführt, mit einem vertieften Fokus auf den am weitesten verbreiteten Protokollfamilien wie IPsec und SSL/TLS.
Häufige Schwachstellen in der Kryptografie werden sowohl im Hinblick auf bestimmte kryptografische Algorithmen als auch auf kryptografische Protokolle diskutiert, darunter BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding Oracle, Lucky Thirteen und POODLE sowie ähnliche Angriffe, ebenso wie die RSA-Timing-Attacke. In jedem Fall werden die praktischen Konsequenzen und potenziellen Auswirkungen jedes Problems beschrieben, ohne dabei tief in mathematische Details einzusteigen.
Da XML-Technologie für den Datenaustausch vernetzter Anwendungen zentral ist, werden schließlich die Sicherheitsaspekte von XML behandelt. Dies umfasst den Einsatz von XML in Webdiensten und SOAP-Nachrichten sowie Schutzmaßnahmen wie XML Signature und XML Encryption. Zudem werden Schwachstellen dieser Schutzmechanismen sowie XML-spezifische Sicherheitsprobleme wie XML-Injection, Angriffe über externe XML-Entitäten (XXE), XML-Bomben und XPath-Injection erläutert.
Die Teilnehmerinnen und Teilnehmer dieses Kurses
- verstehen die grundlegenden Konzepte von Sicherheit, IT-Sicherheit und Secure Coding
- verstehen die Anforderungen an eine sichere Kommunikation
- lernen Netzwerkangriffe und -verteidigung auf verschiedenen OSI-Schichten kennen
- erwerben ein praktisches Verständnis für Kryptografie
- verstehen wesentliche Sicherheitsprotokolle
- kennen einige aktuelle Angriffe gegen kryptografische Systeme
- erhalten Informationen zu einigen neuen, damit zusammenhängenden Schwachstellen
- verstehen die Sicherheitskonzepte von Webdiensten
- erhalten Quellen und weiterführende Literatur zu Praktiken im Bereich Secure Coding
Zielgruppe
Entwickler, Fachkräfte
Sicheres Programmieren in C/C++
21 StundenSicherer Code in C und C++ erfordert eine konsequente Abwehr gegen böswillige Ausnutzung, Speicherbeschädigungen und das Umgehen der Eingabeprüfung. Diese Schulung beleuchtet häufige Schwachstellenmuster wie Pufferüberläufe, Use-after-Free-Fehler, Integer-Überläufe und Typanomalien. Die Teilnehmerinnen und Teilnehmer wenden sichere Programmierregeln, Tools für statische Codeanalysen sowie Techniken defensiver Programmierung an, um Sicherheitslücken zu beseitigen, eine strikte Datenbereinigung durchzusetzen und widerstandsfähige Software zu liefern, die gegen Cyberangriffe gefestigt ist.
Erweiterte Java-Sicherheit
21 StundenAuch erfahrene Java-Entwickler beherrschen nicht unbedingt die verschiedenen von Java angebotenen Sicherheitsdienste und sind sich auch der für in Java geschriebene Webanwendungen relevanten Schwachstellen oft nicht bewusst.
Der Kurs – neben der Einführung in die Sicherheitsspezifika der Standard Java Edition – befasst sich mit Sicherheitsfragen der Java Enterprise Edition (JEE) und von Webservices. Der Diskussion spezifischer Dienste gehen Grundlagen der Kryptografie und sicherer Kommunikation voraus. Verschiedene Übungen behandeln deklarative und programmatische Sicherheits-Techniken in JEE, während sowohl die Sicherheitsmaßnahmen auf Transportschicht als auch End-to-End-Sicherheit von Webservices diskutiert werden. Die Nutzung aller Komponenten wird durch mehrere praktische Übungen veranschaulicht, bei denen Teilnehmer die besprochenen APIs und Tools selbst austesten können.
Der Kurs geht zudem durch und erklärt die häufigsten und schwerwiegendsten Programmierfehler der Java-Sprache und -Plattform sowie webbezogene Schwachstellen. Neben den typischen Fehlern, die von Java-Entwicklern begangen werden, umfassen die vorgestellten Sicherheitslücken sowohl languagespezifische Probleme als auch Probleme, die aus der Laufzeitumgebung resultieren. Alle Schwachstellen und relevanten Angriffe werden durch leicht verständliche Übungen demonstriert, denen empfohlene Coding-Richtlinien und mögliche Gegenmaßnahmen folgen.
Teilnehmer dieses Kurses werden
- Grundkonzepte der Sicherheit, IT-Sicherheit und sicheren Programmierens verstehen
- Webschwachstellen jenseits der OWASP Top Ten kennenlernen und wissen, wie man sie vermeidet
- Sicherheitskonzepte von Webservices verstehen
- Lernen, verschiedene Sicherheitsfunktionen der Java-Entwicklungsumgebung zu nutzen
- Ein praktisches Verständnis für Kryptografie entwickeln
- Sicherheitslösungen von Java EE verstehen
- Typische Programmierfehler und ihre Vermeidung kennenlernen
- Informationen über einige aktuelle Schwachstellen im Java-Framework erhalten
- Praktisches Wissen im Umgang mit Sicherheitstest-Tools erwerben
- Quellen und weiterführende Literatur zu sicheren Coding-Praktiken erhalten
Zielgruppe
Entwickler
Groovy-Programmierung
21 StundenApache Groovy ist eine dynamische Programmiersprache für die JVM (Java Virtual Machine). Zu ihren Merkmalen gehören Scripting-Fähigkeiten, die Erstellung domänenspezifischer Sprachen sowie Meta-Programmierung zur Laufzeit und Kompilierzeit, außerdem funktionale Programmierung. Groovy wird häufig als Ergänzung zu Java verwendet.
In diesem instructor-led-Live-Training lernen die Teilnehmenden Schritt für Schritt am Beispiel einer Anwendung, wie man mit Groovy programmiert.
Zielgruppe
- Entwickler
Kursformat
- Theorie und Diskussion, Übungen sowie intensive praktische Arbeitsphasen
Groovy-Programmierung für Anfänger
14 StundenDieses instructor-led-live-Training in Österreich (online oder vor Ort) richtet sich an Entwickler auf Anfängerniveau, die die Grundlagen der Groovy-Programmierung erlernen möchten.
Nach Abschluss dieser Schulung können Teilnehmer:
- Grundlegende Programmierkonzepte verstehen.
- Einfache Groovy-Skripte schreiben und Kernfunktionen von Groovy nutzen.
- Die grundlegenden Prinzipien der objektorientierten Programmierung mit Groovy verstehen und anwenden.
- Grundlegende Fehlerbehandlungstechniken erlernen, um häufige Programmfehler und Ausnahmen in Groovy zu verwalten.
Java Microservices
21 StundenDiese unter der Leitung eines Dozenten stattfindende Live-Schulung in Österreich (online oder vor Ort) richtet sich an Java-Entwickler mit mittlerem Know-how, die Microservices-basierte Anwendungen entwerfen, entwickeln, bereitstellen und warten möchten, wobei Frameworks wie Spring Boot und Spring Cloud zum Einsatz kommen.
Nach Abschluss dieser Schulung werden die Teilnehmer in der Lage sein:
- Die Prinzipien und Vorteile der Microservices-Architektur zu verstehen.
- Microservices mit Java und Spring Boot zu erstellen und bereitzustellen.
- Dienstentdeckung, Konfigurationsverwaltung und API-Gateways zu implementieren.
- Microservices effektiv abzusichern, zu überwachen und zu skalieren.
- Microservices mit Docker und Kubernetes bereitzustellen.
Mikrodienste mit Spring Boot, Docker und Kubernetes aufbauen
21 StundenDieses unter der Leitung eines Dozenten durchgeführte Live-Training in Österreich (online oder vor Ort verfügbar) richtet sich an fortgeschrittene Entwickler, die die Entwicklung von Mikrodiensten mit Spring Boot, Docker und Kubernetes beherrschen möchten.
Nach Abschluss dieses Trainings können die Teilnehmer:
- Die Prinzipien der Mikrodienstarchitektur verstehen.
- Betriebsbereite Mikrodienste mit Spring Boot erstellen.
- Die entscheidende Rolle von Docker bei der Containerisierung von Mikrodiensten nachvollziehen.
- Kubernetes-Cluster konfigurieren, um Mikrodienste bereitzustellen und zu orchestrieren.
Quarkus für Entwickler
14 StundenDiese von Instruktoren geleitete Live-Schulung in Österreich (online oder vor Ort) richtet sich an Entwickler, die Quarkus nutzen möchten, um Anwendungen zu erstellen, zu testen und bereitzustellen – mit voller Java-Leistungsfähigkeit, jedoch bei geringerem Ressourcenverbrauch.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Die erforderliche Entwicklungsumgebung einzurichten, um mit der Anwendungsentwicklung in Quarkus zu beginnen.
- Anwendungen im Native-Modus mit GraalVM zu erstellen, zu kompilieren und auszuführen.
- Quarkus-Tools und Erweiterungen für die Erstellung nativer Anwendungen mit Maven zu nutzen.
- Anwendungen mit Docker zu containerisieren, auszuführen und bereitzustellen.
Quarkus für Java Native und Microservice-Entwicklung
40 StundenDiese dozentengestützte Live-Schulung in Österreich (online oder vor Ort) richtet sich an Entwickler und Architekten mit fortgeschrittenen bis mittleren Kenntnissen, die Java-Native-Anwendungen und Microservices mit Quarkus unter Optimierung des Speicherverbrauchs und der Startzeit entwickeln möchten.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Hochleistungs-, leichtgewichtige Java-Native-Anwendungen mit Quarkus zu entwickeln.
- RESTful-Services und Microservice-Architekturen zu erstellen und bereitzustellen.
- GraalVM für Native-Compilierung zu nutzen und die Startzeit sowie Speichereffizienz zu optimieren.
- Anwendungen für Kubernetes- und OpenShift-Umgebungen zu paketieren und zu containerisieren.
RabbitMQ mit Java und Spring
14 StundenDiese dozentengeleitete Live-Schulung in Österreich (online oder vor Ort) richtet sich an Softwarearchitekten und Webentwickler, die RabbitMQ als Messaging-Middleware nutzen und Anwendungen mit Java unter Verwendung von Spring programmieren möchten.
Nach Abschluss dieser Schulung sind die Teilnehmer in der Lage:
- Java und Spring mit RabbitMQ zur Anwendungsentwicklung einzusetzen.
- Asynchrone, nachrichtengetriebene Systeme mit RabbitMQ zu designen.
- Warteschlangen, Topics, Exchanges und Bindings in RabbitMQ zu erstellen und anzuwenden.
Spring Boot, React und Redux
14 StundenDiese instructor-led-Trainingsveranstaltung in Österreich (online oder vor Ort) richtet sich an Webentwickler, die funktionale Frontend- und Backend-Webanwendungen mit Spring Boot, React und Redux aufbauen möchten.
Am Ende dieser Schulung können die Teilnehmer Folgendes:
- Eine Frontend-Anwendung mit React und Redux erstellen.
- RESTful-APIs mit Spring Boot entwickeln.
- Webservices mit Spring Security und JWT-Web-Tokens absichern.
Spring 5
21 StundenDieser instruktionsgeleitete, live stattfindende Kurs in Österreich (online oder vor Ort) richtet sich an Java-Entwickler, die das Spring-5-Framework nutzen möchten, um unternehmenskritische Webanwendungen zu entwickeln und bereitzustellen.
Nach Abschluss dieses Kurses sind die Teilnehmer in der Lage:
- Spring 5 zu installieren und zu konfigurieren.
- Die neuesten Features von Spring 5 zu verstehen und umzusetzen.
- Datenbanken mit der Spring-Anwendung anzusprechen.
- Das neue reaktive Webframework WebFlow einzusetzen, um eine Anwendung reaktiv zu gestalten.
- Eine Spring-Anwendung in bestehende Java-EE-Anwendungen zu integrieren.
- Eine unternehmensgerechte Spring-Anwendung zu testen und bereitzustellen.
Spring-Grundlagen mit Spring Boot 3.5.5 und Java 21
14 StundenSpring ist ein umfassendes Java-Framework, das die Entwicklung von Unternehmensanwendungen vereinfacht, indem es leistungsstarke Dependency Injection, eine modulare Architektur und optimierte Konfigurationsoptionen bietet.
Diese vom Dozenten geleitete Live-Schulung (online oder vor Ort) richtet sich an Java-Entwickler auf Anfängerniveau, die moderne, produktionsreife Webanwendungen mit der neuesten Version des Spring Framework und Spring Boot 3.5.5 in Verbindung mit Java 21 entwickeln möchten.
Am Ende dieser Schulung werden die Teilnehmer in der Lage sein:
- Die Kernprinzipien von Spring einschließlich IoC, DI und AOP zu verstehen.
- Spring-Anwendungen über XML, Annotationen und JavaConfig zu konfigurieren.
- RESTful-Dienste mit Spring Boot und JPA zu entwickeln.
- CRUD-Operationen zu implementieren, Transaktionen zu handhaben und die Datenpersistenz zu verwalten.
- Fortgeschrittene Spring-Funktionen wie Profile, Exception Handling und DatenSerialisierung zu nutzen.
Kursformat
- Kurze theoretische Einführung gefolgt von umfangreichen praktischen Übungen.
- Praktische Umsetzung anhand praxisnaher Beispiele.
- Interaktive Diskussion und geführte Fehlersuche.
Möglichkeiten zur individuellen Anpassung des Kurses
- Wenn Sie eine maßgeschneiderte Schulung für diesen Kurs wünschen, kontaktieren Sie uns bitte zur Vereinbarung.
Spring WebFlux: Reaktive Programmierung für skalierbare Webanwendungen
35 StundenSpring WebFlux ist ein reaktives Programmiernodul innerhalb des Spring-Frameworks, das zum Aufbau nicht-blockierender, ereignisgesteuerter Webanwendungen konzipiert wurde.
Diese von einem Instructor geleitete Live-Schulung (online oder vor Ort) richtet sich an Java-Entwickler mit Grundlagen- bis mittlerem Wissenstand, die skalierbare und responsive Anwendungen mit Spring WebFlux erstellen möchten.
Am Ende dieser Schulung werden die Teilnehmer:
- Die Grundlagen der reaktiven Programmierung mit Project Reactor verstehen.
- Nicht-blockierende RESTful-APIs mit Spring WebFlux erstellen und testen.
- WebFlux in Datenbanken und externe Dienste integrieren.
- Reaktive Muster auf reale Anwendungsszenarien anwenden.
Format des Kurses
- Interaktiver Vortrag und Diskussion.
- Umfangreiche Übungen und Praxis.
- Praktische Implementierung in einer Live-Lab-Umgebung.
Möglichkeiten zur Kursanpassung
- Für den Wunsch nach einer maßgeschneiderten Schulung zu diesem Kurs kontaktieren Sie uns bitte zur Arrangeierung.
Spring WebFlux
14 StundenDiese live durchgeführte Schulung in Österreich (online oder vor Ort) richtet sich an Entwickler, die WebFlux zur Entwicklung und Bereitstellung reaktiver Anwendungen nutzen möchten.
Nach Abschluss dieser Schulung sind die Teilnehmer in der Lage:
- Spring 5 und das WebFlux-Framework zu installieren und zu konfigurieren.
- Reaktive Anwendungen und Dienste zu entwickeln.