docs(intake): de eisen aan de inzendserver (fase 4) #2258
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
release-blocker
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!2258
Loading…
Reference in a new issue
No description provided.
Delete branch "docs/intake-server-requirements"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Wat
Op verzoek van de eigenaar: een beschrijving van de eisen waaraan de inzendserver moet voldoen, als
docs/design/INTAKE_SERVER_REQUIREMENTS.md(CC-BY-4.0, zoals het protocol). Het schrijft §6.5 van het ontwerp — nu een handvol regels — uit tot genummerde, toetsbare eisen (MUST/SHOULD/MAY, met een id per eis zodat een conformiteitstest, een reviewbevinding of een checklist ernaar kan verwijzen), voor de beheerder (D3), wie een server draait, een reviewer en wie een andere implementatie schrijft. Het herhaalt het protocol niet; het zegt wat de server eromheen waar moet maken.Host-kop), een geordende klok, één instantie of een gedeelde noncecache, de allowlist van de operator voor een nieuwfid, een vertrokken organisator verliest toegang op het moment van de nieuwe bundel, tokens alleen als hash en constant-time vergeleken.bundle_seq, vervanging is atomair.fsyncen hernoemen, byte voor byte, opruimen als iedereen bevestigd heeft of 90 dagen na sluiting, 24 maanden grafsteentje, minimale metadata, integriteitscontrole bij het starten.Authorizationin een log, geen volledig IP-adres, de reverse proxy hoort bij het bedreigingsoppervlak, geen label per formulier of token in metrics, geen cookies.--check-configmeldt alles tegelijk, geen geheim met een standaardwaarde, een geteste back-up, en het stilleggen vóór de server voor iemand draait.Gevonden bij het schrijven
Eén echte lacune in het protocol: het ontwerp belooft dat de organisator 14 dagen vóór het opruimen wordt gewaarschuwd en bij 80 % van een grens, maar de lijst in protocol v1 draagt daar niets voor. De eisen noemen het als open punt met een voorstel (een additief
purge_atper regel en eenwarnings-lijst in de lijst; clients negeren wat ze niet kennen, dus het mag binnen versie 1). Verder: rate- en grensdefaults zijn gissingen tot een eerste echt gebruik (de Kookboek-oproep); de noncecache dwingt een enkele instantie af tenzij een gedeelde opslag; en of 24 maanden voor het grafsteentje de goede lengte is moet een jurist zeggen.Getoetst
Alleen documentatie. De verwijzingen zijn nagelopen met een script: alle 94 ids zijn gedefinieerd en elke verwijzing naar een id wijst naar een bestaande (het script vond er twee die niet bestonden — een voorbeeld-id en een verwijzing naar
SEC-31in plaats vanSUP-01— en die zijn hersteld); het bestand is geregistreerd indocs/README.mden verwezen vanuit FORM_INTAKE §6.1/§6.5 en INTAKE_PROTOCOL.make check(ongepiped, exit 0) liep vóór die laatste correctie van twee id's in de tekst; daarna draaidencheck-static,check-registrations,check-secrets,sastencheck-packagesopnieuw: groen. De tak loopt niet achter op main.