# SaferPage API-Zugriff

Betreiber-Zugriffsmodell fuer SaferPage-APIs und Exporte mit Rollen, Scopes, Zugriffsstufen, Key-Rotation, Rate-Limits, Audit-Logs und sicherem Secret-Umgang.

> Dieses Paket beschreibt Zugriffsstufen und Sicherheitsanforderungen. Es erzeugt keine echten API-Keys und zeigt keine Secrets.

## Zugriffsstufen
- **Public Read**: keine, Scopes reports.public:read, schemas:read, badges.public:read
- **Operator Read**: API-Key oder OIDC, Scopes reports:read, portfolio:read, evidence:read, exports:read
- **Operator Workflow**: API-Key mit HMAC oder OIDC, Scopes tickets:write, dispatch:write, integrations:dry_run
- **Admin Setup**: OIDC + Admin-Rolle, Scopes keys:rotate, integrations:manage, portfolio:manage

## Kontrollpunkte
- [ ] API-Keys nur gehasht speichern (planned): Nur Key-Prefix und Hash im Admin-Kontext; kein Klartext im Export.
- [ ] Scopes serverseitig erzwingen (planned): Jeder Endpoint mappt auf mindestens einen Scope.
- [ ] Rotation und Ablaufdatum (planned): Maximale Key-Laufzeit 90 Tage, Notfall-Sperrung sofort.
- [ ] Access Audit Log (planned): Key-Prefix, Scope, Endpoint, Statuscode, Zeitstempel und Request-ID protokollieren.
- [ ] Rate-Limit je Key und Scope (planned): Lesen, Schreiben und Admin getrennt limitieren.
