Web
November 2025
BurgCloud: Dokumentenverwaltung für Vereine
Sichere, rollenbasierte Cloud-Lösung für die Dokumentenverwaltung mit automatischem Deployment. Entwickelt für den Stargarder Burgverein e.V.
Das Problem
Der Stargarder Burgverein e.V. suchte eine bessere Lösung für seine Dokumentenverwaltung:
- Keine zentrale Speicherung: Dokumente lagen verstreut auf privaten PCs
- Fotos nur über WhatsApp: Keine strukturierte Archivierung von Vereinsfotos
- Keine Zugriffsrechte: Jeder Vorstand hatte Zugriff auf alles oder nichts
- Keine Versionierung: Ältere Versionen von Dokumenten gingen verloren
- Keine Nachverfolgung: Wer hatte wann auf was zugegriffen?
Die Lösung
BurgCloud ist eine Cloud-Lösung, gebaut für genau diese Abläufe im Verein:
Rollenbasiertes System
8 vordefinierte Rollen mit granularen Berechtigungen:
- Administrator, Vorsitzender, Stellvertreter
- Schriftführer, Schatzmeister, Beisitzer
- Arbeitsgruppenleiter, Mitglied
Dokumentenverwaltung
- Multi-File Upload: Mehrere Dateien gleichzeitig hochladen
- Sichere Downloads: Mit Berechtigungsprüfung und Audit-Logging
- Automatische Versionierung: Jede Änderung wird protokolliert
- Hierarchische Ordnerstruktur: Vorstandsbereich, Mitgliederbereich, Finanzen
Foto-Management
- Galerie-Ansicht: Kachelansicht mit Bildvorschau
- RAW-Support: Canon, Nikon, Sony, und 15+ weitere Formate
- Upload-Tokens: Temporäre Links für anonyme Uploads nach Veranstaltungen
Kalender-System
- Events erstellen: Mit Titel, Beschreibung, Datum, Ort
- Rollenbasierte Sichtbarkeit: Öffentlich, Mitglieder, Vorstand
- Anhänge: Dokumente an Termine anhängen
- iCal-Export: Termine in externe Kalender importieren
Ergebnis
- Zentrale Dokumentenablage für alle Vereinsmitglieder
- Sichere Trennung von sensiblen Finanzdaten
- Strukturierte Fotoarchivierung nach Veranstaltungen
- Nachvollziehbar, wer wann welches Dokument geändert hat
- Automatisches Deployment bei jedem Push
Technische Umsetzung
| Bereich | Technologie |
|---|---|
| Backend | ASP.NET Core 8.0 MVC, C# 12 |
| Datenbank | MySQL 8.0 (Docker), Entity Framework Core |
| Frontend | Razor-Views, Bootstrap 5, jQuery |
| Storage | Storage Box (1 TB, SFTP) |
| Deployment | Docker Compose, Nginx, GitHub Actions |
| Server | CX23 (2 vCPU, 4 GB RAM) |
Architektur
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Browser │────▶│ Nginx │────▶│ ASP.NET Core │
│ (Client) │ │ (Port 80) │ │ (Port 5000) │
└─────────────────┘ └─────────────────┘ └────────┬────────┘
│
┌────────────────────────────────┼────────────────────────────────┐
│ │ │
┌────────▼────────┐ ┌────────▼────────┐ ┌────────▼────────┐
│ MySQL 8.0 │ │ Storage Box │ │ SFTP Pool │
│ (Docker) │ │ Box (1 TB) │ │ (Parallel) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
Sicherheitsfeatures
- Rollenbasierte Zugriffskontrolle (RBAC)
- Passwort-Hashing mit ASP.NET Core Identity
- Session-Management mit automatischer Abmeldung
- Audit-Logging für alle Aktionen
- Anmeldeversuche protokolliert zur Abwehr von Angriffen
- CSRF-Protection
- Dateityp- und Größenvalidierung (max. 200 MB)