Schema, Matrix, Report-Share-Card und Badge sind als Public-Read-Flächen im Router sichtbar.
Public-Exports weiter cachebar und ohne Secret-Felder halten.API Runtime Gate Probe
Public Reads sichtbar, Operator-API bis zu echten Gates blockiert
API Runtime Gate Probe: Public-Read-Flächen und Runtime-Kontrollen sind dokumentiert; produktive Operator-/Write-/Admin-Flows bleiben blockiert, bis 7/7 API-Key-Servergates freigegeben sind.
Dieser Probe ist ein öffentlicher No-Secret-Nachweis. Er erstellt keine API-Keys, prüft keine echten Authorization-Header, speichert keine Hashes und führt keine Schreibaktion aus. Echte Live-Deny-Smoke-Tests sind erst nach aktivierten Server-Gates sinnvoll.
Runtime-Gates
Was der öffentliche Probe belegt
7/7 Kontrollen im Backend nachweisbar: Key-Store-Vertrag, Scope, Audit, Rate-Limit, Revocation, Domain-Claim, Write-HMAC.
Produktive Env-Gates, Migration und echte Test-Keys separat freigeben.Tabellen api_keys und api_access_audit_log sind vorhanden; Audit-Events letzte 24h: 0.
Protected Endpoint mit fehlendem, falschem und später echtem Test-Key weiter prüfen./api/operator/probe prüft Bearer-Key, Scope, Revocation/Expiry und schreibt sanitisierte Audit-Entscheidungen.
Nach Secret-/Key-Freigabe echte 401/403/200-Smoke-Tests mit Test-Key ausführen.Noch kein sanitisierter Fallback-Audit-Event in den letzten 24h sichtbar.
GET /api/operator/probe ohne Bearer-Key ausführen und Fallback-Audit prüfen.saferpage-api.service und scripts/run-api-service-smoke.sh sind als Runtime-Evidence dokumentiert.
systemctl status saferpage-api.service und scripts/run-api-service-smoke.sh nach jedem Deploy prüfen.Diese Seite erzeugt keine Keys, speichert keine Hashes und akzeptiert keine Authorization-Header.
Produktive Key-Ausstellung separat hinter Admin-Auth, Domain-Claim und Auditlog bauen.4 erwartete Deny-Entscheidungen sind ohne Live-Secret ausformuliert; 1 ist bereits live auditierbar.
Nach Aktivierung der Server-Gates dieselben Faelle als echte Smoke-Tests ausführen.0/7 API-Key-Servergates aktiv.
Key-Store, Scope-Middleware, Auditlog, Rate-Limit, Revocation, Domain-Claim und Write-HMAC aktivieren.Runtime-Implementierung
Welche API-Kontrollen im Backend vorhanden sind
Migration und Storage-Funktionen deklarieren Prefix, Hash, Scopes, Status und Ablauf.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Operator-Probe weist Scope-Mismatches mit 403 ab und auditiert sie.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Postgres-Audit und File-Fallback sind implementiert; Fallback-Events 24h: 0.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Operator-Probe prüft Rate-Limits und auditiert 429-Entscheidungen.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Revoked/expired Keys werden vor Allow-Entscheidung abgewiesen.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Operator-Scopes brauchen Domain-Scope; Mismatches werden nur mit Hash-Evidence auditiert.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Write-Scopes verlangen HMAC-Signatur und Idempotency-Key.
Mit Migration, Env-Freigaben und echten Test-Keys weiter verifizieren.Public Read
Diese Flächen dürfen ohne Betreiber-Key öffentlich bleiben
Router und Schema Registry deklarieren einen öffentlichen, cachebaren Schema-Katalog.
- URL
- öffnen
Konkurrenzmatrix ist als öffentlicher JSON-Export deklariert.
- URL
- öffnen
Kanonische Domain-Reports und Share-Cards bleiben öffentlich, ohne Betreiber-Secret.
- URL
- öffnen
Status-Badges sind öffentliche Trust-Links ohne interne Rohdaten.
- URL
- öffnen
Protected Contract
Operator- und Schreibpfade bleiben bis zu echten Gates gesperrt
live_endpoint_denies_without_key_and_audits
blocked_until_domain_claim_scope_audit_ready
blocked_until_domain_claim_scope_audit_ready
blocked_until_sanitization_and_domain_claim_ready
blocked_until_write_hmac_and_audit_ready
blocked_until_write_hmac_rate_limit_and_approval_ready
blocked_until_admin_auth_audit_and_revocation_ready
Deny-Fixtures
Erwartete 401/403-Entscheidungen vor Live-Key-Ausgabe
GET /api/operator/probe?scope=reports:read ohne Authorization
Der Live-Operator-Probe verweigert fehlende Bearer-Authorization mit 401 und schreibt sanitisiertes Audit.GET /nachweise/anrufer.info/export mit Scope reports.public:read
Evidence-Exports brauchen evidence:read, Domain-Claim und Auditlog.POST Nachweispositions-Delivery ohne X-SaferPage-Signature und Idempotency-Key
Schreibpfade bleiben bis Write-HMAC und Rate-Limit blockiert.GET Portfolio-Export mit revokiertem Key-Prefix
Revocation muss vor Scope-Entscheidung wirken.Write-HMAC
Signatur-Test für schreibende Operator-API-Clients
Client berechnet über exakt diesen kanonischen String dieselbe Signatur und sendet sie mit Idempotency-Key.
Öffentlicher Testfall für Operator-API-Write-Clients. Nicht als produktives Secret verwenden.- Scope
- nachweise:write
- Idempotency
- sp-api-write-test-fixture
- SHA-256
- 16e4a7e04cf94f5ad6bc986e
- Signatur
- sha256=aa2e6130e9eeb1bd9d3b92f4d