Spring Security
Spring Security ist ein Framework für die Implementierung von Authentifizierung und Autorisierung in Java-Anwendungen. Die Bibliothek ermöglicht die deklarative Absicherung von Anwendungskomponenten durch flexible Security-Filter.
Die strategische Bedeutung von Spring Security zeigt sich in der standardisierten Entwicklung sicherer Enterprise-Anwendungen. Das Framework unterstützt Entwicklungsteams bei der Implementierung komplexer Sicherheitsanforderungen und ermöglicht die zentrale Verwaltung von Zugriffsrechten. Die modulare Architektur vereinfacht die Integration verschiedener Authentifizierungsquellen.
Der Einsatz von Spring Security reduziert Sicherheitsrisiken durch erprobte Implementierungen von Security-Patterns. Die deklarative Zugriffskontrolle minimiert Implementierungsfehler und beschleunigt die Entwicklung. Die flexible Konfiguration ermöglicht die Anpassung an spezifische Sicherheitsanforderungen und unterstützt verschiedene Compliance-Vorgaben.
Die technische Integration erfolgt über eine Filter-Chain mit konfigurierbaren Security-Mechanismen. Spring Security unterstützt Form-basierte und Token-basierte Authentifizierung, OAuth2 und OpenID Connect. Die Method-Security ermöglicht feingranulare Autorisierung. Die CSRF-Protection verhindert Cross-Site-Angriffe. Die Session-Management-Funktionen kontrollieren Benutzer-Sessions. Die Password-Encoding-API sichert Credentials.
Meine Beratungsleistung umfasst die Konzeption von Security-Architekturen und deren Implementierung mit Spring Security. Als erfahrener Entwickler unterstütze ich Teams bei der Integration verschiedener Authentifizierungssysteme und der Entwicklung sicherer Anwendungen. Die Kombination aus Security-Expertise und Framework-Erfahrung gewährleistet geschützte Enterprise-Systeme.
Spring Security Projekte
Entwicklung einer cloud-nativen Incentive-Anwendung mit AWS
Versicherungskonzern
07/2018 - 04/2019 · Remote
Entwicklung und Betrieb einer cloud-nativen Anwendung für die dezentrale unternehmensinterne Erfassung, zentrale Verwaltung und steuerliche Behandlung von vertrieblichen Incentives und geldwerten Vorteilen einschließlich CI/CD auf Basis von Kubernetes und Diensten in Amazon Web Services
Tätigkeiten
- Planung und Einrichtung der Umgebungen für Entwicklung, Integration, Test, Schulung und Produktion auf Basis von Docker, Kubernetes und verschiedenen AWS-Diensten
- Entwicklung der CI/CD-Pipelines für Frontend und Backend-Dienste
- Erweiterung des API Gateways um Authentifizierung und Autorisierung auf Basis von Tokens
- Mitwirkung an der Entwicklung der Geschäftslogik im Backend und der RESTful API einschließlich Test und Dokumentation
- Mitwirkung an der Entwicklung des Datenmodells für die PostgreSQL-Datenbank
- Mitwirkung an Planung und Entwicklung von Schnittstellen und Batch-Prozessen zum Austausch von Daten mit SAP Gateway, PostgreSQL, Redis und S3 mit Testdaten zum Zweck der lokalen Frontend- und Backend-Entwicklung
- Dokumentation der Softwarearchitektur einschließlich Betrieb, Schnittstellen und Prozessen
- Einarbeitung der Betriebsveranwortlichen bei der Übergabe der Anwendung in den dauerhaften Betrieb
- Projektsprachen: Deutsch, Englisch
Software-Typ
Web-Anwendung · Backend-Service · API · Datenbank-LösungTechnologien
Java · Spring · PostgreSQL · SQL · Redis · Docker · REST · SAML · Single Sign-On · SSO · JWT · JSON · CSV · Spring Boot · Spring Framework · Spring MVC · Spring Security · Spring Session · Spring Batch · Spring Data · Spring Data JPA · Spring Data REST · Spring REST Docs · Spring Testing · Spring Actuator · Spring Cloud · Spring Cloud Netflix · Spring Cloud Gateway · Spring WebFlux · Thymeleaf · JPA · JPQL · Hibernate · JavaMail · Jackson · Lombok · JUnit · AssertJ · Mockito · CI/CD · Jenkins · Groovy · Maven · SonarQube · Flyway · Nexus · Bash · GitHub · Amazon S3 · Amazon RDS · Amazon ElastiCache · Amazon Route 53 · Amazon SES · AWS Certificate Manager · Elastic Load Balancing · Nginx · HTML · JavaScript · Node.js · Npm · Kubectl · Jira · Confluence · Mac · IntelliJ IDEA · Domain-driven Design · Datenmodellierung · Serviceorientierte Architektur · API-Gateway · Backend for Frontend · Load Balancing · Microservices · Service-Discovery · Authentifizierung · Autorisierung · E-Mail · CloudBackend-Entwicklung für globales Event-Buchungssystem
Medizintechnikunternehmen
11/2017 - 12/2017 · Remote
Entwicklung einer Anwendung für die globale Vermarktung mehrsprachiger Veranstaltungen und Seminare mit Funktionen zur Buchungs- und Bestellabwicklung, zur Erzeugung und Versand von digitalen Eintrittskarten sowie zur Einlasskontrolle
Tätigkeiten
- Entwicklung des Backends mit einer RESTful API zur Nutzung durch das Web-Frontend und eine mobile App einschließlich Integrationstests, Dokumentation und Coaching der Frontend- und App-Entwickler mit folgenden Funktionen
- Abruf von umfangreichen Informationen über weltweit stattfindende Veranstaltungen inklusive Filterung, Sortierung, Lokalisierung, Mehrsprachigkeit, Zeitzonen
- Buchung, Stornierung und Absage von Veranstaltungen
- Erzeugung von personalisierten Eintrittskarten mit QR-Codes und Informationen zur gebuchten Veranstaltung als PDF-Dokumente und Pässe für Apple Wallet
- Gültigkeitsprüfung und Entwertung der Eintrittskarten zwecks Einlasskontrolle bei den Veranstaltungen vor Ort
- Ereignisbasierter Versand von personalisierten Nachrichten und Status-Updates per E-Mail, SMS und Apple Notifications
- Implementierung von Authentifizierung und Autorisierung
- Entwicklung von Teilen des Datenmodells in der PostgreSQL-Datenbank
- Integration der Buchhaltung über Microsoft Dynamics Business Central (ehemals Navision)
- Projektsprachen: Deutsch, Englisch
Software-Typ
Web-Anwendung · Backend-Service · API · Datenbank-LösungTechnologien
Java · Spring Boot · Spring Data · Spring Security · Spring REST Docs · Flyway · PostgreSQL · Datenmodellierung · REST · OAuth 2.0 · JWT · PDF · Apple Wallet & PassKit · Apple Push Notifications · E-Mail · SMS · Gradle · Bitbucket · Jira · Confluence · Mac · Docker · Serviceorientierte Architektur · Backend for Frontend · MicroservicesEntwicklung und Betrieb einer mobilen App mit Backend
Dienstleistungen
10/2016 - 07/2021 · Köln
Entwicklung und Betrieb einer nativen mobilen App für iPhone und iPad zur Berechnung von Anwalts- und Gerichtskosten mit In-App-Käufen (Abonnements) mit einem mobilen Backend auf Basis von Swift, Java, PostgreSQL und REST
Tätigkeiten
- Entwicklung einer mobilen App für iOS und iPadOS zur Unterstützung von Juristinnen und Juristen bei der Bewertung wirtschaftlicher Prozessrisiken
- Spezialisierte Rechner zur schnellen und präzisen Berechnung von Anwalts- und Gerichtskosten nach dem deutschen Rechtsanwaltsvergütungsgesetz (RVG) und dem Gerichtskostengesetz (GKG)
- Berechnung der Kosten von Mahn- und Klageverfahren über mehrere Instanzen im Arbeits- und Zivilrecht
- Berechnung von Kosten für außergerichtlichen Verfahren im Arbeits- und Zivilrecht
- Berechnung der Verteilung der Kosten auf die Parteien des Verfahrens und des Kostenrisikos für Mandanten
- Berücksichtigung der kostenrechtlichen Unterschiede bei Beendigung des Klageverfahrens durch Urteil oder Vergleich
- Berücksichtigung verschiedener Umsatzsteuersätze
- Die App ermöglichte es den Anwendern, ein Premium-Abonnement abzuschließen.
- Entwicklung eines skalierbaren, sicheren Backend-Systems für die mobile App
- Verwaltung der Premium-Abonnements mit REST API zum Abruf durch die mobile App
- Verwaltung von Werbeanzeigen mit REST API zum Abruf der geschalteten Anzeigen durch die mobile App
- Authentifizierung und Autorisierung über OAuth 2.0
- Integration mit dem App Store
- CI/CD-Pipelines auf Basis von Jenkins, GitLab und Artifactory
- Entwicklung einer Website mit Informationen über die mobile App
Software-Typ
Mobile App · Backend-Service · API · Datenbank-LösungTechnologien
Swift · Java · Spring · REST · JSON · OAuth 2.0 · JWT · SQL · PostgreSQL · Datenmodellierung · HTML · CSS · Spring Boot · Spring Data · Spring Data JPA · Spring Data REST · Spring REST Docs · Spring Security · Thymeleaf · Hibernate · Flexmark · Tomcat · Maven · Jenkins · Groovy · Artifactory · Flyway · Bash · GitLab · StoreKit · Xcode · TestFlight · App Store Connect · JUnit · Mockito · Hamcrest · Nginx · Git · Redmine · IntelliJ IDEA · Mac · Serviceorientierte Architektur · Backend for Frontend · CI/CDHeadless CMS, Continuous Deployment & Kubernetes
Dienstleistungen
01/2015 - 05/2018 · Köln
Entwicklung einer Web-Anwendung zur Content-Aggregation aus einem Headless CMS mit vollständiger CI/CD-Pipeline-Automatisierung über Jenkins, Docker und Kubernetes für kontinuierliches Software-Deployment.
Tätigkeiten
- Konzeption und Implementierung einer Web-Anwendung zur Aggregation von Content (Texte, Bilder, Links) über REST API aus einem Headless CMS
- Integration und Anreicherung von CMS-Content mit zusätzlichen Daten aus externen Datenquellen für eine einheitliche Website-Darstellung
- Aufbau einer vollautomatisierten Continuous Integration, Delivery & Deployment Pipeline mit Jenkins, Bitbucket und Maven für optimierte Entwicklungsprozesse
- Einrichtung einer Git-basierten Trigger-Mechanik für automatische Build- und Deployment-Prozesse bei Code-Commits
- Migration der bestehenden VM-basierten Cloud-Infrastruktur zu einer containerisierten Kubernetes-Architektur im Jahr 2018
- Implementierung einer containerisierten Deployment-Strategie mit Docker-Image-Erstellung und automatischem Upload in Docker Registry
- Konfiguration und Betrieb von Kubernetes-Clustern für automatisierte Deployment-Prozesse auf Test-, Stage- und Produktionsumgebungen
- Betrieb und Wartung der gesamten Infrastruktur mit kontinuierlicher Optimierung der Deployment-Pipeline für häufige Release-Zyklen
- Integration von Security-Komponenten und TLS-Verschlüsselung für sichere Content-Auslieferung
Software-Typ
Web-Anwendung · APITechnologien
Java · Spring Boot · Spring Security · Thymeleaf · Prismic · Maven · Bitbucket · Jenkins · Docker · Docker Hub · Nginx · Linux Server · REST · Git · Caching · Reverse Proxy · Serviceorientierte Architektur · Backend for Frontend · CI/CD