CyberVault
CyberVault ist eine Full-Stack-Banking-Plattform zur Verwaltung von Kundenkonten, Finanztransaktionen, Profilen sowie Mitarbeiter- und Benutzerverwaltung über rollenbasierte Bereiche. Die Anwendung verwendet Next.js und eine separate Node.js/Express REST API mit MySQL sowie Authentifizierung, rollenbasierte Autorisierung, Token-Sicherheit, Eingabevalidierung und Audit-Logging.

Verwendete Technologien
Projektübersicht
CyberVault ist ein Full-Stack-System für Banking und Finanzverwaltung, das Kundenservices mit der internen Bankverwaltung verbindet. Es unterstützt drei Rollen: Kunden, Mitarbeiter und Administratoren. Kunden verwalten ihre Profile, sehen Kontodetails und Kontostände ein und prüfen ihre Transaktionshistorie. Mitarbeiter können Kunden suchen und ihre Daten entsprechend ihrer Berechtigungen verwalten. Administratoren verwalten Mitarbeiter und Benutzer, entsperren Konten und nutzen Verwaltungs-Dashboards. Jede Rolle hat eine eigene Oberfläche und Navigation. Das Frontend verwendet Next.js, React und TypeScript, während ein separates Node.js/Express-Backend eine versionierte REST API bereitstellt. Next.js API-Routen verbinden Frontend und Backend und verarbeiten Weiterleitung, Authentifizierungsdaten, Cookies und Antworten. Das Backend ist in Routen, Controller, Services, Repositories, Sequelize-Modelle, Validierung, Middleware und Hilfsfunktionen gegliedert.
Wichtige Funktionen
Authentifizierung und Autorisierung schützen den Zugriff auf die Bereiche der verschiedenen Rollen.
Separate Bereiche und Navigation richten sich nach den jeweiligen Banking-Aufgaben.
Transaktionsfunktionen unterstützen zentrale Banking-Abläufe innerhalb der Anwendung.
Sicherheitsmaßnahmen reduzieren häufige Angriffe und Schwachstellen in Webanwendungen.
Administratoren verwalten Benutzer- und Mitarbeiterkonten, Rollen und Zugriffsrechte.
Die Anwendung ist auf einer Cloud-Plattform mit eigener Domain und SSL-Zertifikat bereitgestellt.
Screenshots
Herausforderungen und Lösungen
- Unterschiedliche Verantwortlichkeiten abzubilden, ohne die Banking-Erfahrung unübersichtlich zu machen.
- Den Zugriff auf Bereiche mit Konto- und Transaktionsdaten zu schützen.
- Die Verantwortung der Webanwendung von den weiteren Netzwerk- und Infrastrukturaufgaben zu trennen.
- Die Anwendung wurde in Bereiche für Kunden, Mitarbeiter und Administratoren mit rollenspezifischer Navigation gegliedert.
- Authentifizierung und rollenbasierter Zugriff schützen die geschützten Anwendungsbereiche.
- Frontend und Backend-API bleiben vom umfassenderen Netzwerk- und Infrastrukturteil des Abschlussprojekts getrennt.





