Posts

Es werden Posts vom November, 2020 angezeigt.

Java Anwendungen im Docker Container

Bild
Jede Java Anwendungen bauen, ausliefern und überall ausführen - klingt super und geht mit Docker! Ich zeige euch, wie ihr möglichst einfach und schnell in die Docker Welt einsteigt. Wir bauen ein Docker Image mit einer Java Anwendung, starten den eigenen Container lokal und testen die Anwendung im Container. Installationen und Vorbereitung Um die Voraussetzungen für den Einstieg in die Docker Welt zu schaffen, müssen wir folgendes tun: Docker für Windows installieren, siehe:  https://docs.docker.com/docker-for-windows/install/ Wenn ihr Linux oder MacOS nutzt, findet ihr auf der Docker Webseite auch passende Anleitungen. Eine Java-Anwendung schreiben, die dann in den Container kommt 😄 Falls ihr gerade keine zur Hand habt, könnt ihr diese verwenden: https://github.com/elmar-brauch/thymeleaf   Im Prinzip funktioniert es mit jeder beliebigen Java-Anwendung. Hier in der Demo nutze ich Vorteile von Spring Boot, um eine möglichst einfache Demonstration machen zu können. Docker Image bauen N

Validierung per Annotation in Java und Spring

Bild
Security ist mittlerweile ein allgegenwärtiges Thema. SQL-Injection oder Cross-Site Scripting Angriffe sind klassische Bedrohungen, die mittels Validierung aller Eingabedaten abgewehrt werden können. Macht man das ungeschickt, ist es aufwändig und unsicher. In diesem Artikel zeige ich euch, wie man auf einfache Weise per Annotation den eigenen Spring Web-Service absichert. Der harte Weg: Validierung im Java Code Die beste Methode SQL- oder Code-Injection Angriffe zu verhindern, ist Eingaben dieser Art nicht zu erlauben. Auf die Details wie diese Art von Angriffen funktionieren, möchte ich hier nicht eingehen - ihr könnt es aber z.B. hier nachlesen: https://de.wikipedia.org/wiki/SQL-Injection https://en.wikipedia.org/wiki/Code_injection Wichtig ist, dass die Überprüfung der Eingabedaten Server-seitig stattfinden, da Hacker Client-seitige Eingabevalidierung (z.B. mit JavaScript im Browser) umgehen können. Mit Java könnte man die Überprüfung der Eingabedaten mittels regulärer Ausdrücke du