From ea0dda9cab08cd800d26677ec224e575ec58791a Mon Sep 17 00:00:00 2001
From: Bjoern Runden
Date: Thu, 18 Jun 2026 09:20:44 +0200
Subject: [PATCH] =?UTF-8?q?letzter=20feinschliff=20f=C3=BCr=20show-case?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Dockerfile | 5 -----
_templates/_template.html | 2 +-
_templates/_template.py | 2 +-
app/__init__.py | 2 +-
app/config.py | 2 +-
app/database.py | 2 +-
app/models.py | 2 +-
app/routes.py | 2 +-
app/templates/admin.html | 2 +-
app/templates/base.html | 2 +-
app/templates/index.html | 2 +-
app/templates/login_error.html | 2 +-
app/templates/mitarbeiter.html | 2 +-
app/templates/projekt.html | 2 +-
14 files changed, 13 insertions(+), 18 deletions(-)
diff --git a/Dockerfile b/Dockerfile
index 6c6536d..e83340e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -2,16 +2,11 @@ FROM python:3.11-slim
WORKDIR /app
-RUN addgroup --system app && adduser --system --group app
-
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
-RUN chown -R app:app /app
-USER app
-
EXPOSE 8000
CMD ["gunicorn", "--bind", "0.0.0.0:8000", "--workers", "2", "wsgi:app"]
diff --git a/_templates/_template.html b/_templates/_template.html
index 66b6b2c..8075075 100644
--- a/_templates/_template.html
+++ b/_templates/_template.html
@@ -1,6 +1,6 @@
{#
Datei: templates/.html
- Autor:
+ Autor: Björn Runden
Datum: YYYY-MM-DD
Zweck:
diff --git a/_templates/_template.py b/_templates/_template.py
index 7346e24..8e0d409 100644
--- a/_templates/_template.py
+++ b/_templates/_template.py
@@ -4,7 +4,7 @@
-:author:
+:author: Björn Runden
:date: YYYY-MM-DD
:version: 1.0
"""
diff --git a/app/__init__.py b/app/__init__.py
index a52cba2..dbcb868 100644
--- a/app/__init__.py
+++ b/app/__init__.py
@@ -4,7 +4,7 @@ Application Factory der OIDC Flask Showcase App.
Initialisiert Flask, SQLAlchemy und Authlib. Registriert alle Blueprints
und stellt den CLI-Befehl ``flask seed-db`` bereit.
-:author:
+:author: Björn Runden
:date: 2026-06-17
:version: 0.1
"""
diff --git a/app/config.py b/app/config.py
index a426192..bf4cd9c 100644
--- a/app/config.py
+++ b/app/config.py
@@ -5,7 +5,7 @@ Liest alle Einstellungen aus Umgebungsvariablen (.env) nach dem 12-Factor-App-Pr
ZITADEL_SERVER_METADATA_URL ist der von Authlib erwartete Config-Key für die
OIDC Discovery URL.
-:author:
+:author: Björn Runden
:date: 2026-06-17
:version: 0.1
"""
diff --git a/app/database.py b/app/database.py
index 06ec07e..8081793 100644
--- a/app/database.py
+++ b/app/database.py
@@ -1,7 +1,7 @@
"""
Datenbankinitialisierung mit Flask-SQLAlchemy.
-:author:
+:author: Björn Runden
:date: 2026-06-17
:version: 0.1
"""
diff --git a/app/models.py b/app/models.py
index 290098a..e6aab88 100644
--- a/app/models.py
+++ b/app/models.py
@@ -4,7 +4,7 @@ SQLAlchemy-Datenmodelle für lokale RBAC- und Projektzuweisung.
Alle Nutzeridentitäten stammen aus Zitadel (``zitadel_user_id`` = OIDC ``sub``-Claim).
Die lokalen Tabellen regeln nur die Autorisierung – nie die Authentifizierung.
-:author:
+:author: Björn Runden
:date: 2026-06-17
:version: 0.1
"""
diff --git a/app/routes.py b/app/routes.py
index a1b4e50..b16d390 100644
--- a/app/routes.py
+++ b/app/routes.py
@@ -4,7 +4,7 @@ Flask-Routen und Routing-Guards der OIDC-Showcase-App.
Alle geschützten Routen prüfen (1) den Zitadel-Claim aus der Session und
(2) die lokale DB-Zuordnung. Jede Verletzung leitet auf /error um.
-:author:
+:author: Björn Runden
:date: 2026-06-17
:version: 0.1
"""
diff --git a/app/templates/admin.html b/app/templates/admin.html
index 460aef6..f266600 100644
--- a/app/templates/admin.html
+++ b/app/templates/admin.html
@@ -1,6 +1,6 @@
{#
Datei: templates/admin.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Admin-Ansicht mit Übersicht aller Clients, Projekte und Nutzer.
Variablen: user, clients (list), projects (list), users (list)
diff --git a/app/templates/base.html b/app/templates/base.html
index 52995d5..652a597 100644
--- a/app/templates/base.html
+++ b/app/templates/base.html
@@ -1,6 +1,6 @@
{#
Datei: templates/base.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Basis-Layout für alle Seiten. Erwartet: session.user (optional).
#}
diff --git a/app/templates/index.html b/app/templates/index.html
index 3b6ec98..df903af 100644
--- a/app/templates/index.html
+++ b/app/templates/index.html
@@ -1,6 +1,6 @@
{#
Datei: templates/index.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Dashboard mit Test-Matrix. Zeigt Kacheln je nach Rolle des eingeloggten Nutzers.
Variablen: user (dict), projects (list[Project]), forbidden_project (Project|None)
diff --git a/app/templates/login_error.html b/app/templates/login_error.html
index edd058b..f293937 100644
--- a/app/templates/login_error.html
+++ b/app/templates/login_error.html
@@ -1,6 +1,6 @@
{#
Datei: templates/login_error.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Fehlerseite bei verweigertem Zugriff. Keine Variablen erwartet.
#}
diff --git a/app/templates/mitarbeiter.html b/app/templates/mitarbeiter.html
index 4caea85..c368766 100644
--- a/app/templates/mitarbeiter.html
+++ b/app/templates/mitarbeiter.html
@@ -1,6 +1,6 @@
{#
Datei: templates/mitarbeiter.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Projektübersicht für Mitarbeiter (nur zugewiesene Projekte).
Variablen: user, projects (list[Project])
diff --git a/app/templates/projekt.html b/app/templates/projekt.html
index cc266e8..8341f41 100644
--- a/app/templates/projekt.html
+++ b/app/templates/projekt.html
@@ -1,6 +1,6 @@
{#
Datei: templates/projekt.html
- Autor:
+ Autor: Björn Runden
Datum: 2026-06-17
Zweck: Projekt-Cockpit mit Notizen-Log. Zugriff nur für zugewiesene Nutzer.
Variablen: user, project (Project), notes (list[Note])