> Technesch Sécherheetsmoossnamen an EthicsPortal — Verschlësselung, Anonymitéit, Zougangskontroll, Audit-Protokolléierung an Infrastruktur.

Source: https://ethicsportal.eu/lb/security/
Updated: 2026-09-23

---

# Sécherheet

EthicsPortal behandelt sensibel Hiweisgeeberdonnéeën. Dës Säit dokumentéiert déi technesch an organisatoresch Moossnamen.

Zulescht aktualiséiert: 2026-08-28.

---

## Datenverschlësselung {#data-encryption}

All sensibel Felder ginn mat Rails Active Record Encryption **net-deterministesch** verschlësselt.

| Feld | Verschlësselt | Deterministesch |
|---|---|---|
| Meldungsbeschreiwung | Jo | Nee |
| Numm vum Hiweisgeeber | Jo | Nee |
| Kontaktdonnéeë vum Hiweisgeeber | Jo | Nee |
| Messageinhalt | Jo | Nee |
| Strukturéiert Uginne bei der Mellung (Bezéiung, Quell, Zäitpunkt, fréier Mellung, Angscht virun Repressalien) | Jo | Nee |
| Intern Fallnotizen | Jo | Nee |
| Zwee-Faktor-Geheimnisser a Backup-Coden | Jo | Nee |

All Verbindungen iwwer **HTTPS/TLS**.

---

## Anonymitéit {#anonymity-and-privacy}

### IP-Anonymiséierung

EthicsPortal **späichert ni IP-Adressen**. Portal-Routen benotzen en Einweg-SHA256-Hash ausschliesslech fir Rate-Limiting.

### Entfernung vu Dateimetadaten

| Dateityp | Entferent Metadaten | Method |
|---|---|---|
| Biller (JPEG, PNG, TIFF, WebP) | EXIF, GPS, Kameramodell, Auteur | Vips |
| PDF-Dokumenter | Auteur, Applikatioun, Historique | exiftool |
| Video | GPS, Geräteinfo | exiftool |
| Audio | Geräteinfo, Software-Tags | exiftool |

### Virenprüfung

All Upload gëtt mat [ClamAV](https://www.clamav.net) serversäiteg geprüft.

### Anonymitéit vun der Fallbearbechtung

Hiweisgeeber gesinn ni den echten Numm — just „Fallbearbechtung".

### Kee Tracking

Keng Drëttubidder-Tracking-Cookien a keng Reklamm-Pixel. Cloudflare Web Analytics gëtt nëmme op Marketing-Säite benotzt. Et setzt keng Analyse-Cookien, mee Cloudflare kann Ufro-Metadaten inklusiv IP-Adressen veraarbechten, wéi an der [Dateschutzerklärung](/privacy/) beschriwwen. De Meldekanal huet keng Analyse.

### Aktuellen Assurance-Status

EthicsPortal beansprocht op dëser Websäit aktuell keng akkreditéiert ISO-27001-Zertifizéierung. Et publizéiert och aktuell keen onofhängegen Drëtt-Audit vun der Anonymitéitsarchitektur. Wann dat ännert, ginn Ëmfang an Datum hei publizéiert.

### Material fir de Sécherheetsreview

Clienten, déi Material fir Procurement oder juristesche Review brauchen, kënnen et am Kader vum Review ufroen. Disponibelt Material kann eng ënnerschriwwen DPA, Register- a Steierbeleeër, en ausgefëllte Sécherheetsquestionnaire an schrëftlech Äntwerten zu Backup- a Restore-Prozeduren, privilegéierte Production Access an Incident Response ëmfaassen.

---

## Zougangskontroll {#access-control}

Autoriséierung iwwer [Pundit](https://github.com/varvet/pundit)-Richtlinnen.

| Roll | Kann Meldunge kucken | Kann Organisatiounseinstellunge verwalten |
|---|---|---|
| Admin | All Meldungen | Jo |
| Bearbeechter | Just zougewise Meldungen | Nee |

### Zwee-Faktor-Authentifizéierung

TOTP-baséiert 2FA fir Admins a Bearbeechter.

Och Hiweisgeeber authentifizéieren mat zwee Faktoren: Dossier-ID (ongëlleg eleng) a selwergewielte Zougangscode (nëmmen als bcrypt-Hash gespäichert).

### Sessiouns-Liewenszyklus

All authentifizéiert Sessioun späichert `last_seen_at` bei all Ufro (debounced). Benotzer kënnen hir aktiv Sessiounen iwwerpréiwen, kucken wéini all eng zulescht aktiv war, eng eenzel Sessioun widerrufen oder sech mat engem Klick aus all aneren Sessiounen ausloggen.

Sessiounen verfalen automatesch no **14 Deeg Inaktivitéit**. Déi nächst Ufro vun enger inaktiver Sessioun läscht de Server-säitegen Eintrag, läscht de Cookie an erzwéngt eng nei Authentifizéierung iwwer en neie Magic Link. En nuetse Job botzt verloossen Sessiounen no derselwechter Frist, sou datt `user_agent` an `ip_address` net iwwer d'Inaktivitéitsfenster eraus opbehale ginn, och wann de Benotzer net méi zréckkënnt.

D'Magic-Link-Authentifizéierung limitéiert d'Stéiergebitt vu laangliewege Sessiounen: e geklauten Sessiouns-Cookie gëtt keng erneit benotzbar Login-Donnéeë an d'Re-Authentifizéierung verlaangt den Zougang op d'E-Mail.

### Memberzougang an Offboarding

Den Zougang zu der Organisatioun gëtt op der Ufrogrenz duerchgesat. Wann e Member deaktivéiert gëtt:

- Den Zougang zu der Organisatioun gëtt direkt refuséiert, och op virdru gespäicherten URLen.
- Oppe Meldungszouweisunge ginn opgehuewen.
- Bedeelegunge ginn entfernt.
- D'Audit-Log-Historique vum Member bleift konservéiert.
- Den deaktivéierte Member gëtt benoricht.
- Eng Reaktivéierung stellt de virege Falle-Zougang net automatesch erëm hier.

De leschten aktiven Admin an de Besëtzer vun der Organisatioun kënnen net deaktivéiert ginn. All Deaktivéierungs- a Reaktivéierungseventer ginn an d'unhängend Audit-Log geschriwwen.

Memberen ouni Compliance-Foussofdrock (keng Audit-Log-Entréen, keng Zouweisungen, keng Bedeelegungen) ginn beim Entfernen hard geläscht; Memberen mat engem Foussofdrock ginn weich deaktivéiert, sou datt d'Audit-Spur opléisbar bleift.

### Läschen vum Kont

Wann e Member säin eegene Kont zoumécht, gëtt seng E-Mail-Adress duerch eng net liwwerbar Adress ersat an d'Zwee-Faktor-Donnéeën, Sessiounen, API-Tokenen a Preferenze ginn definitiv geläscht. Wann de Member ni an enger Organisatioun gehandelt huet, gëtt de Rekord geläscht. Soss bleiwen Numm a Profilbild mat de Fäll an dem Audit-Protokoll verbonnen, wärend d'Memberschafte deaktivéiert ginn, fir déi erfuerderlech Zourechenbarkeet ze erhalen.

### Rate-Limiting

| Endpunkt | Limit |
|---|---|
| Meldung | 5 pro 10 Minutten |
| Fallabruf | 10 pro 3 Minutten |
| Message | 10 pro 3 Minutten |

---

## Audit a Compliance

### Revisiounsséchert Audit-Protokoll {#append-only-audit-trail}

All Aktioun mat Zäitstempel (UTC), Akteur an Aktiounstyp. Onveränderbar.

### Späicherdauer

Konfiguréierbar: **12, 24, 36, 48 oder 60 Méint**. Automatesch Läschung.

### CSRF-Schutz

Iwwer Rails' agebauten CSRF-Tokens.

---

## Sécheren Entwécklungszyklus {#secure-development-lifecycle}

EthicsPortal follegt engem dokumentéierten Entwécklungszyklus fir Ännerungen, déi de Service betreffen. D'Etappe sinn hei opgelëscht, sou datt eng iwwerpréifend Persoun aus dem Akaf se de Moossnamen A.8.25--A.8.29 vun der ISO/IEC 27001:2022 zouuerdne kann (déi komplett Zouuerdnung steet an der [Moossnamekaart](/iso-27001/)).

| Etapp | Praxis |
|---|---|
| Architektur an Design | Funktiounen, déi nei Flëss vu perséinlechen Donnéeën, nei Ënnerauftragsverschaffer oder nei Autorisatiounsberäicher aféieren, ginn virun der Ëmsetzung géint d'Zousoe fir Verschlësselung, Zougrëffskontroll an Audit-Spur gepréift, déi op dëser Säit dokumentéiert sinn. |
| Ännerungspréifung | All Produktiounsännerung gëtt virum Deploy géint eng schrëftlech Checklëscht gepréift (Verschlësselungsofdeckung, Autorisatiounsberäich, Schreiwen an den Audit-Log, Validatioun vun den Androen, Ëmgang mat Geheimnisser). D'Duerchsetzung ass automatiséiert an net no Ermiessen: déi komplett Testsuite an d'statesch Analyse lafen bei all Ännerung a blockéieren den Deploy bei engem Feeler. D'Suite leeft op engem gehosteten CI-Runner oder op enger Entwécklungsaarbechtsstatioun, wouduerch de fäerdege Laf als Commit-Status festgehale gëtt, deen d'Pipeline iwwerpréift, ier se de gehosteten Laf iwwersprangt. D'Rolle fir d'Fräiginn vun Ännerunge ginn am Kader vun der Akafspréifung beschriwwen. |
| Sécher Programméierung | D'Codebasis benotzt standardméisseg Schutzmechanismen op Framework-Niveau --- parametriséiert Ufroe via ActiveRecord, strong parameters, Escaping vun der Ausgab an de Views, CSRF-Tokens, Verschlësselung op Attributniveau, Pundit-Autorisatioun op der Grenz vum Controller. Ofwäichunge verlaangen eng schrëftlech Begrënnung. |
| Sécherheetstester an der Entwécklung | Statesch Analyse ([Brakeman](https://brakemanscanner.org), [bundler-audit](https://github.com/rubysec/bundler-audit), `importmap audit`) leeft bei all Ännerung. D'Tester decken d'Autorisatiounsweeër, d'Invariante vun der Verschlësselung am Rouhzoustand, d'Schreiwen an den Audit-Log an d'Duerchsetzung vun de Reedimitte of. Déi komplett Toolchain steet ënner [Ofhängegkeets- a Patch-Management](#dependency-and-patch-management). |
| Trennung vun den Ëmfelder | Produktiouns- an Net-Produktiounsëmfelder si getrennt. Ausserhalb vun der Produktioun ginn keng perséinlech Produktiounsdonnéeë benotzt; Staging an Entwécklung benotze synthetesch Donnéeën. |
| Reaktioun op Schwachstellen | Mellunge ginn bannent 2 Aarbechtsdeeg bestätegt (kuckt [verantwortungsvoll Offenlegung](#verantwortungsvoll-offenlegung)). Ziler: kritesch Problemer bannent 7 Deeg behuewen, héich bannent 30, mëttel bannent 90. Bestätegt Problemer, déi agesate Cliente betreffen, gi via [Tëschefall-Register](/incidents/) gemellt, wa se d'Kritäre vum Register erfëllen. |

---

## Ofhängegkeets- a Patch-Management {#dependency-and-patch-management}

EthicsPortal setzt keng Softwarekomponenten am End-of-Life-Status an. D'Applikatioun leeft op aktiv ënnerstëtzte Versioune vu Rails, Ruby, PostgreSQL an dem ënnerläffegen Betribssystem; d'Sécherheetsreleases vum Upstream gi laafend agespillt.

D'Ofhängegkeete ginn kontinuéierlech an der Continuous Integration gescannt:

- **[Brakeman](https://brakemanscanner.org)** mellt Rails-spezifesch Schwachstellen bei all Ännerung.
- **[bundler-audit](https://github.com/rubysec/bundler-audit)** vergläicht de Gemfile bei all Ännerung an zousätzlech all Dag no engem fixe Zäitplang mat der Ruby Advisory Database, sou datt nei verëffentlecht Schwachstellen och ouni Codeännerung erkannt ginn.
- **`importmap audit`** scannt d'JavaScript-Imports bei all Ännerung an zousätzlech all Dag no engem fixe Zäitplang op bekannten Schwachstellen.
- **[Dependabot](https://docs.github.com/en/code-security/dependabot)** mécht wëchentlech Pull Requests fir verâlt Ruby-Gemmen a GitHub Actions op, gruppéiert no Minor-/Patch-Updates.

Komponenten, déi am Upstream den End-of-Life erreechen, ginn ersat oder upgegradéiert, ier hire Support-Zäitraum oflaaft.

---

## Infrastruktur

| Komponent | Ubidder | Standuert |
|---|---|---|
| Applikatioun an Datebank | [Hetzner](https://www.hetzner.com) | Nürnberg, Däitschland (EU) |
| Dateispäicherung | [Hetzner Object Storage](https://www.hetzner.com/storage/object-storage) | Nürnberg, Däitschland (EU) |
| Transaktionell E-Mailen | [Mailjet](https://www.mailjet.com) | Frankräich (EU) |
| Bezueelung | [Stripe](https://stripe.com) | Irland; aner Länner ënner den uwendbare Garantien — kuckt [Dateschutzerklärung](/privacy/) |

---

## Backup a Restore {#backups-and-restore}

EthicsPortal bedreift zwee komplementär Backup-Schichten, déi béid an der EU gespäichert ginn:

| Schicht | Wat | Wou | Späicherung |
|---|---|---|---|
| Datebank | Deeglech PostgreSQL-Dumpen iwwer e Kamal-Accessory | Hetzner Object Storage, Nürnberg (EU) | 21 Deeg fir aktuell Versiounen; geläscht Versioune lafen no weidere 7 Deeg of |
| Server | Komplett Disk-Snapshots vum Applikatiounsserver | Hetzner Cloud, Nürnberg (EU) | 7 Deeg |
| Beobachter | Nëmme liesen, fir Auditoren a juristesch Beroder | Nee | Nee |

**Recovery-Ziler.** Recovery Point Objective (RPO) ass 24 Stonnen. Recovery Time Objective (RTO) ass 4 Stonnen. Dës Ziler erschéngen och am [Service Level Agreement](/sla/#recovery-objectives).

**Restore-Tester.** Eng Restore-Iwwung gëtt all Mount automatesch iwwer e CI-Workflow an enger ofgrenzter Ëmgéigend ausgefouert. D'Aktualitéit vun de Backupe gëtt permanent iwwerwaacht.

**Verschlësselung.** Um Applikatiounsniveau verschlësselt Datebankfelder bleiwe verschlësselt am Dump. Hetzner Object Storage verschlësselt Objeten net standardméisseg beim Späicheren; d'Verschlësselung vum ganzen Dump a vun den Annexen ass net nogewisen.

---

## Operative Review

Dës Säit ass eng ëffentlech Sécherheets-Zesummefaassung. En Deel vun den operative Materialien gëtt am Procurement-Review gedeelt an net voll am oppene Web publizéiert, well et Infrastruktur- a Reaktiounsdetailer enthält, déi sech besser fir kontrolléiert Verëffentlechung eegnen.

Themen, déi op Ufro am Procurement-Review disponibel sinn, enthalen ënner anerem:

- Zesummefaassung vum privilegéierte Production Access
- Incident-Response-Workflow an Eskalatiounskontakter
- Äntwerten zu Business Continuity an Customer Offboarding / Export

---

## Verantwortungsvoll Offenlegung

Melden vu Sécherheetsproblemer un [security@ethicsportal.eu](mailto:security@ethicsportal.eu). Mir bestätegen bannent 2 Aarbechtsdeeg.

**Kee bezuelte Bug-Bounty.** Mir bezuele keng Belounung fir Schwachstelle-Mellungen a schléissen och keng Geheimhaltungs- oder kommerziell Ofkommes als Viraussetzung fir eng Mellung of.
