Sicherheit und DSGVO

Datentrennung, Einwilligungen und offen benannte Grenzen

Der Verein vertraut uns die Daten von Kindern an. Deshalb steht unten der Mechanismus und keine Zusicherung: wie die Trennung gebaut ist, wer was sieht, was gelöscht wird und wo die Grenzen liegen — auch die, die uns nicht gefallen.

  • Die Trennung liegt in der Datenbank, nicht in der Anwendung

    Jeder Verein ist ein eigener Mandant. Die Trennungsregel steht unter jedem Datensatz in der Datenbank und gilt auch für den Eigentümer der Datenbank — nicht nur für Code, den man zu schreiben vergessen kann.

  • Im Fehlerfall geschlossen

    Läuft eine Abfrage ohne Vereinskontext, liefert sie null Zeilen. Sie liefert nicht alles und meldet keinen Fehler — sie liefert nichts. Ein Fehler in unserem Code kann deshalb nicht zur Offenlegung fremder Daten werden.

  • Ein Kontext, eine Transaktion

    Die Anwendung greift auf Daten ausschließlich über den Vereinskontext zu, der innerhalb einer einzigen Transaktion gesetzt wird und an deren Ende verschwindet. Zwischen gleichzeitigen Anfragen wird er nicht weitergegeben.

  • Der Support kommt nur mit einem festgehaltenen Grund herein

    Wenn wir für den Support Einsicht in Ihren Verein brauchen, gehen wir durch dieselbe Trennungsregel hinein. Der Grund ist Pflicht — ohne ihn gibt es keinen Zugang — und Eintritt und Austritt werden im Ereignisprotokoll festgehalten.

Die Trennung ist das Einzige auf dieser Seite, das sich nicht nachträglich ergänzen lässt. Deshalb wurde sie vor der ersten Funktion gebaut — und deshalb hat sie einen eigenen Test, der bei jeder Änderung läuft.

Trennungstest · vor jeder Zusammenführung verpflichtend

Jede Änderung am Produkt muss diesen Test bestehen. Fällt eine der fünf Aussagen durch, wird die Änderung nicht zusammengeführt.

  • Ein Verein sieht nur seine eigenen MitgliederZwei Vereine, dieselbe Abfrage, zwei verschiedene Ergebnisse.
  • Ohne Kontext: null ZeilenNicht alles, kein Fehler — nichts.
  • Der Kontext geht nicht auf andere Verbindungen überZwölf gleichzeitige Abfragen, jede bleibt bei ihrem Verein.
  • Ein Schreibvorgang in einen fremden Verein wird abgelehntDie Trennung gilt auch beim Schreiben, nicht nur beim Lesen.
  • Ein ungültiger Verein wird vorab abgelehntNoch bevor die erste Abfrage ausgeführt wird.

tenant_id = nullif(current_setting('app.tenant_id', true), '')::uuid

Ohne Kontext ist der Wert leer, die Bedingung wird nicht erfüllt und das Ergebnis ist leer. Das ist die ganze Regel.

Mechanismus, kein Versprechen: der Test liegt im Code-Repository und ist Voraussetzung für die Zusammenführung, keine Aussage in der Fußzeile.

Der Erziehungsberechtigte ist der Kontoinhaber

Bei einem minderjährigen Mitglied ist der Erziehungsberechtigte derjenige, der Zugang hat, Einwilligungen erteilt und die Rechnung erhält. Der Datensatz eines Kindes ohne Erziehungsberechtigten ist keine eigenständige Einheit.

  • Zugang

    Ein minderjähriges Mitglied hat keinen Zugang, der am Erziehungsberechtigten vorbeiführt. Die Sorgeberechtigung ist ein erfasstes Verhältnis zwischen einer Person und einem Mitglied, nicht nur ein Feld mit einer Telefonnummer.

  • Einwilligungen

    Das Recht, Einwilligungen zu erteilen und zu widerrufen, liegt beim Erziehungsberechtigten. Beim Mitglied ist erfasst, welcher Erziehungsberechtigte der primäre ist und wer dieses Recht hat.

  • Alter für die eigene Einwilligung

    Es ist an das Land des Vereins gebunden und im Code des Produkts festgelegt, nicht in einer Einstellung, die jemand in der Administrationsoberfläche verschieben könnte. In Slowenien sind es 15 Jahre.

  • Zahler

    Der Verein legt bei jedem Kind fest, wer der Zahler ist — getrennt lebende Eltern können deshalb jeder für ihr eigenes Kind zahlen. Zahler kann auch eine Person sein, die für das Kind nicht erziehungsberechtigt ist: ein Arbeitgeber, eine Gemeinde oder ein Sponsor.

Was davon Eltern in ihrer App sehen, steht auf der Seite Für Eltern →

Vier typisierte Einwilligungen

Eine Einwilligung ist keine Notiz im Freitext. Es gibt vier Arten, jede mit eigenem Status, mit der Person, die sie erteilt hat, und mit dem Zeitpunkt.

Mitglied · Einwilligungen
Beispielansicht des Einwilligungsbildschirms beim Mitglied — vier Arten, Status, Person und Zeitpunkt
Einwilligung Status Erteilt von Erfasst
Aufnahmen für den Vereinsgebrauch
Fotos und Videos, die innerhalb des Vereins bleiben.
erteilt Erziehungsberechtigte · A. K. 3. 9. 2025
Aufnahmen für die Veröffentlichung
Fotos und Videos auf den öffentlichen Kanälen des Vereins.
widerrufen Erziehungsberechtigte · A. K. Widerruf 14. 1. 2026
Gesundheitsdaten
Verarbeitung von Allergien, Erkrankungen und Medikamenten — eine besondere Kategorie von Daten.
erteilt Erziehungsberechtigter · M. K. 3. 9. 2025
Benachrichtigungen
Freiwillig. Ohne sie bleibt das Mitglied eingeschrieben und verliert nichts.
nicht erteilt — —

Beispielansicht. Eine erfasste Entscheidung je Einwilligungsart — nicht zwei widersprüchliche Einträge über dieselbe Sache. Der Widerruf wird mit Zeitpunkt und Version festgehalten; der vorherige Status wird nicht überschrieben, als hätte es die Einwilligung nie gegeben.

Beispielansicht · Demo-Verein Namen und Datumsangaben sind Veranschaulichung, keine Vereinsdaten

Gesundheitsdaten

Allergien, Erkrankungen und Medikamente sind strukturierte Felder beim Mitglied, getrennt vom übrigen Datensatz — so lassen sie sich löschen, ohne das Mitglied zu löschen.

Getrennter Datensatz

Gesundheitsdaten stehen in einem eigenen Datensatz, der am Mitglied hängt. Die Trennung ist nicht kosmetisch — sie erlaubt, nur diesen Teil zu löschen.

Notizen bleiben beim Verein

Interne Notizen zu einem Mitglied sieht der Vereinsadministrator. Geht ein Trainer, bleiben sie im Verein; geht das Mitglied, gehen sie mit ihm.

Notfallkontakt

Er ist beim Mitglied erfasst, damit er bei einer Verletzung auf dem Platz erreichbar ist und nicht in einem Ordner im Büro.

Der Trainer sieht die Mitglieder seiner Gruppen — und nur diese: persönliche Daten und Gesundheitsdaten, Anwesenheit sowie namentliche Berichte nur für die Gruppen, denen er zugeteilt ist. Ein abgelehnter Einsichtsversuch in Gesundheitsdaten wird protokolliert. Ein Trainer ohne zugeteilte Gruppe sieht kein einziges Mitglied.

Der Trainingsplan des Vereins bleibt vollständig sichtbar, weil die Konflikterkennung nur gegen alle Termine richtig ist. Vereinsberichte ohne Namen und die Ehrenamtsschichten bleiben vereinsweit sichtbar — das steht hier und nicht im Kleingedruckten.

Rechte sind standardmäßig geschlossen

Jeder Bildschirm und jeder Deep Link verlangen eine ausdrückliche Berechtigung. Ohne sie gibt der Server den Inhalt nicht heraus — auch dann nicht, wenn jemand die Adresse weiterleitet.

Rollen und Einsicht
Fünf Rollen, was jede sieht und was nicht
Rolle Sieht Sieht nicht
Vereinsadministrator
Vorsitzender, Schriftführer
Alles: Mitglieder, Trainingsplan, Finanzen, Berichte, Einstellungen, Anmeldungen, Datenübernahme. —
Kassenwart
Wer die Bücher führt
Beitragssätze, Rechnungen, Zahlungen und Forderungen, Finanzberichte, die Liste der Mitglieder und Gruppen (damit klar ist, wer abgerechnet wird). Gesundheitsdaten von Kindern — Geld braucht sie nicht; das Bearbeiten von Mitgliedern, Personal und Vereinseinstellungen; Gespräche zwischen Eltern.
Trainer
Gruppenleiter
Die Mitglieder seiner Gruppen und deren Gesundheitsdaten, die Anwesenheit dieser Gruppen, den Trainingsplan des Vereins (wegen der Konflikte), Mitteilungen, Ehrenamtsschichten und den Anwesenheitsbericht seiner Gruppen. Beitragssätze, Rechnungen und Forderungen; das Bearbeiten der Vereinseinstellungen; das Bearbeiten der persönlichen Daten eines Mitglieds; die Bestätigungsliste für Anmeldungen.
Elternteil
Erziehungsberechtigte
Die eigenen Kinder, deren Trainingsplan und Absagen, die Rechnungen der eigenen Familie, Mitteilungen, Ehrenamtsschichten. Andere Mitglieder und deren Erziehungsberechtigte; fremde Gesundheitsdaten; die Finanzen des Vereins; interne Notizen.
Mitglied
Volljährig oder älterer Minderjähriger
Den eigenen Trainingsplan und Mitteilungen sowie die Angelegenheiten der eigenen Familie, genau wie der Erziehungsberechtigte. Wie beim Elternteil: nichts, was andere Familien oder die Vereinsfinanzen betrifft.

Es sind fünf Rollen und nicht mehr; sie addieren sich, dieselbe Person kann also Kassenwart und Elternteil sein. Den Kassenwart gibt es genau deshalb, damit ein Verein nicht volle Administratorrechte an denjenigen vergeben muss, der die Bücher führt — und weil Geld die Gesundheitsdaten eines Kindes nicht braucht, sieht diese Rolle sie nicht. Eine neue Funktion ist geschlossen, bis jemand sie ausdrücklich öffnet, nie umgekehrt.

Geteilter Link · Veranschaulichung

GET /invoices/9f2c…  →  403 · der Rechnungsinhalt wird nicht zurückgegeben

Die Adresse einer Rechnung, in einem Gruppenchat weitergeleitet, öffnet nichts. Nichts ist sichtbar, „nur weil man den Link hat“.

Die vollständige Liste der Bereiche und ihrer Grenzen steht auf der Seite Funktionen →

Aufbewahrung und Löschung

Löschen ist eine Funktion im Produkt, keine Bitte per E-Mail. Es hat aber eine Grenze, die wir nicht beseitigen können, und zwei Mängel, die wir nicht verschweigen.

  • Löschung eines Mitglieds im Produkt

    Entfernt das Mitglied und mit ihm seine Anmeldungen zu Terminen, die Anwesenheitseinträge, das Foto, die Einwilligungen, den Gesundheitsdatensatz und die Mitgliedschaften in Gruppen.

  • Grenze: ausgestellte Rechnungen

    Solange für ein Mitglied eine Rechnung existiert, wird die Löschung abgelehnt — ausgestellte Rechnungen dürfen nicht gelöscht werden, weil die Erfassung einer Prüfung standhalten muss. In diesem Fall wird beim Mitglied das Austrittsdatum erfasst.

  • Abgelehnte Anmeldeformulare im Produkt

    Ein abgelehntes oder zurückgegebenes Anmeldeformular enthält die Daten eines Kindes ohne Grundlage für eine Mitgliedschaft. Nach 60 Tagen werden die personenbezogenen Daten daraus automatisch gelöscht; es bleiben nur der Status und der Zeitstempel, damit die Statistik der Bestätigungsliste ehrlich bleibt.

  • Einstellbare Aufbewahrungsfristen

    Der Verein trägt in den Einstellungen ein, nach wie vielen Monaten nach dem Austritt eines Mitglieds dessen personenbezogene Daten gelöscht werden — mindestens sechs. Ohne diese Einstellung wird nichts gelöscht; einen Standardwert gibt es absichtlich nicht. Vor dem Speichern sieht der Verein namentlich, wessen Datensatz der nächste Durchlauf leeren würde.

  • Anfrage einer betroffenen Person nach einer Datenkopie

    Eltern oder Mitglied laden die Kopie selbst herunter, ohne Vermittlung des Vereins oder von uns. Der Export betrifft immer die angemeldete Person und die Kinder, für die sie erziehungsberechtigt ist — einen Weg, auf dem jemand die Akte einer fremden Familie herunterlädt, gibt es nicht.

Export — an seiner tatsächlichen Grenze

Der vollständige Export des Vereins ist eine einzige Handlung: die Verwaltung lädt eine ZIP-Datei mit CSV-Dateien herunter — Mitglieder, Erziehungsberechtigte, Einwilligungen, Trainingsplan, Anwesenheit, Rechnungen und Zahlungen. Die Gesundheitsdaten liegen in einer eigenen Datei. Daneben werden weiterhin getrennt das Rechnungsjournal und das Zahlungsjournal für die Buchhaltung exportiert. Ohne Bedingungen und ohne Gebühr beim Weggang.

Was genau in beiden Journalen steht und wie die Buchhaltung sie nutzt, steht auf der Seite Für den Vorstand →

Hosting in Bestätigung

Hier stünde auf den meisten Websites, dass die Daten in der EU bleiben. Bei uns steht, wann Sie das so schriftlich bekommen, dass es sich prüfen lässt.

„Den Hosting-Standort und die Unterauftragsverarbeiter nennen wir im Auftragsverarbeitungsvertrag, bevor Sie unterschreiben. Bis der Vertrag bestätigt ist, führen wir diese Angaben nicht als Tatsache an.“

Deshalb finden Sie auf dieser Seite keinen Namen eines Anbieters, keinen Namen einer Region und keine Aussage über den Ort der Daten. Die Zusage steht; einen schriftlichen Nachweis haben wir noch nicht veröffentlicht, und solange wir ihn nicht veröffentlichen, ist diese Zeile nicht grün.

Auftragsverarbeitungsvertrag

Der Verein ist Verantwortlicher, youthstack ist Auftragsverarbeiter. Das ist keine Formalität — es legt fest, wer über die Daten entscheidet und wer sie nur verarbeiten darf.

Der Verein entscheidet

Der Verein legt fest, welche Daten verarbeitet werden und wozu. Die Daten gehören dem Verein auch dann, wenn er von uns weggeht.

Wir verarbeiten sie nach seinen Weisungen — nicht für eigene Zwecke, ohne Werbung und ohne Verkauf oder Austausch von Daten mit Dritten.

Unterschrift vor den Daten

Den Auftragsverarbeitungsvertrag unterschreiben wir, bevor wir die ersten echten Daten ins System laden. Die Übernahme Ihrer Mitgliederliste gehört zur Einrichtung und geschieht nach der Unterschrift, nicht davor.

Die Unterauftragsverarbeiter sind darin namentlich aufgeführt. Solange Sie den Vertrag nicht zur Prüfung bekommen haben, behaupten wir auf dieser Seite nichts über sie.

Datenschutzerklärung → Nutzungsbedingungen →

Bevor wir irgendetwas hochladen

Die Demo dauert 30 Minuten und geht Ihren Verein durch: Ihre Gruppen, wer wen trainiert, wer zahlt. Die Übernahme der bestehenden Mitgliederliste machen wir.

Den Auftragsverarbeitungsvertrag bekommen Sie zur Prüfung, bevor wir irgendetwas hochladen. · 30 Minuten · die Datenübernahme machen wir · Einrichtung ≈ 75 Minuten Ihrer Zeit, verteilt auf vier Tage