133 lines
3.6 KiB
Markdown
133 lines
3.6 KiB
Markdown
# Florian Edlmayer
|
|
|
|
## Individueller Teil: Florian Edlmayer
|
|
**Datensicherheit, Backup-Systeme & Premium-Bereich**
|
|
|
|
---
|
|
|
|
## Ausgangslage & Zielsetzung
|
|
- **Ausgangssituation**:
|
|
- Keine digitale, sichere Absolventen-Vernetzung.
|
|
- **Mein Beitrag**:
|
|
- Datenschutz (DSGVO).
|
|
- Automatisierte Backups & Restore.
|
|
- LinkedIn-Login (OAuth 2.0).
|
|
- Premium-Bereich.
|
|
- **Nutzen**: Rechtssicherheit, Ausfallsicherheit, hohes Engagement.
|
|
|
|
---
|
|
|
|
## Eingesetzte Technologien
|
|
- **Framework**: ASP.NET Core & .NET 8
|
|
- **Datenbanksystem**: PostgreSQL
|
|
- **Authentifizierung**: OAuth 2.0 (LinkedIn)
|
|
- **Scripting & Automation**: Bash-Skripte für Linux Cronjobs
|
|
|
|
---
|
|
|
|
## DSGVO & Datenschutz
|
|
- **Rechtliche Basis**: Einhaltung von DSGVO & DSG.
|
|
- **Umsetzung**:
|
|
- **Datenschutzerklärung**: Rechtskonform integriert.
|
|
- **Datenminimierung**: Nur zwingend benötigte Daten.
|
|
- **Vertraulichkeit**: TLS/HTTPS & lokales Austria-Hosting.
|
|
- **Betroffenenrechte**: Auskunft & Löschung garantiert.
|
|
|
|
---
|
|
|
|
## Backup- & Restore-Systeme (1)
|
|
- **Problem**: Datenverlust (Hardware, Software, Cyberangriffe).
|
|
- **Lösung**: Vollautomatisiertes Backup-Skript.
|
|
|
|
```mermaid
|
|
graph TD
|
|
Start((Start: Cronjob 02:30)) --> Init[Initialisierung]
|
|
Init --> Vars[Konfiguration laden]
|
|
|
|
subgraph Sicherungsphase
|
|
Dir[Erstelle Backup-Ordner] --> DB[Datenbank-Backup]
|
|
DB --> Files[Dateisystem sichern]
|
|
end
|
|
|
|
Files --> Check{Fehler?}
|
|
Check -- Ja --> Mail[Log Error & Abbruch]
|
|
Check -- Nein --> Rotate[Lade Backups-Liste]
|
|
|
|
subgraph Speicherverwaltung
|
|
Rotate --> Count{Anzahl > 30?}
|
|
Count -- Ja --> Delete[Älteste löschen]
|
|
Count -- Nein --> Finish[Abschluss]
|
|
Delete --> Finish
|
|
end
|
|
|
|
Finish --> Ende((Ende))
|
|
```
|
|
|
|
---
|
|
|
|
## Backup- & Restore-Systeme (2)
|
|
- **Speichermanagement (Retention)**:
|
|
- Automatische Backup-Rotation.
|
|
- Limit: Letzte 30 Tage (Speicherplatz-Optimierung).
|
|
- **Restore-Skript**:
|
|
- Kontrollierter Wiederherstellungsprozess.
|
|
- Sicherheitsabfrage vor Überschreiben.
|
|
- Backup als "Rückversicherung" vor Import.
|
|
- DB-Neuanlage & automatischer Import.
|
|
|
|
---
|
|
|
|
## Authentifizierung mit LinkedIn (OAuth 2.0)
|
|
- **Ziel**:
|
|
- Abbau von Registrierungshürden.
|
|
- Keine sensiblen Passwörter im eigenen System.
|
|
|
|

|
|
|
|
---
|
|
|
|
## Der Premium-Bereich (1)
|
|
- **Zweck**: Motivation für aktives Mitglieder-Engagement.
|
|
|
|
**Ingenieur-Antrags-Workflow & Prüfung:**
|
|

|
|
|
|
**Bibliothek genehmigter Vorzeige-Anträge:**
|
|

|
|
|
|
---
|
|
|
|
# Der Premium-Bereich (2)
|
|
**Architektur des Premium-Bereich-Moduls:**
|
|
```mermaid
|
|
graph LR
|
|
subgraph Client [WebAssembly]
|
|
UI[Benutzeroberfläche] --> SvcC[Service Client]
|
|
end
|
|
|
|
subgraph Server [ASP.NET Core]
|
|
SvcC --> Ctrl[API Controller]
|
|
Ctrl --> SvcS[Service Schicht]
|
|
end
|
|
|
|
subgraph Data [Datenbank]
|
|
SvcS --> EF[EF Core]
|
|
EF --> DB[(PostgreSQL)]
|
|
end
|
|
```
|
|
|
|
**Datensparsame Mitgliedersuche & Kontaktfunktion:**
|
|

|
|
|
|
---
|
|
|
|
## Fazit & Ausblick
|
|
- **Erreichtes**:
|
|
- DSGVO-konformer Datenschutz.
|
|
- Hohe Ausfallsicherheit (automatisierte Bash-Backups).
|
|
- Barrierefreier Zugang (LinkedIn-Login).
|
|
- Echter Mehrwert durch Premium-Funktionen.
|
|
- **Ausblick**:
|
|
- Weitere OAuth-Anbieter (z.B. Google, Microsoft).
|
|
- Ausbau zukünftiger Premium-Features.
|