feat(forms): Versturen… — een inzending naar de server sturen (fase 4, stap 4) #2257
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!2257
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/intake-send"
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
Fase 4, stap 4: Versturen… — een formulier dat via een uitnodiging werd geopend kan zijn inzending nu naar de server sturen.
expectedApiHostinsealFormSubmission) gaat er iets verder; wat de bundel zelf zegt (gesloten, te groot) komt als zin, nooit als "doorgaan". De pins worden bewaard zodra de bundel is geloofd, ook als het versturen mislukt.IntakeClient.submit:PUT /v1/submissions/{sid}met de uitnodigingstoken, het formulier en alleen de hash van het intrekgeheim. Het aankomstbericht wordt alleen geloofd als het over dit nummer en de hash van deze bytes gaat (noteMismatchanders);200(de server had het al) en201worden onderscheiden. Een herhaling met hetzelfde nummer, hetzelfde geheim en dezelfde bytes is veilig: de server heeft er één, niet twee.<naam>.receipt.json(IntakeReceipt, nieuw in de kern, streng gelezen) met het geheim waarmee de inzending is in te trekken. Het venster zegt dat het aankomstbericht geen bewijs tegen de server is.FormSubmissionBuiltdraagt het inzendnummer (de naam waaronder de server de inzending kent). De zin bij een verzegeling die niet doorging staat op één plek (form_seal_outcome_text.dart) voor Verzegeld opslaan… en Versturen….Getoetst
IntakeClient.submittegen de nep-server, die nu de upload doet in de volgorde van het protocol: de kopen die het protocol noemt en niets anders, dat het geheim zelf nergens heen gaat (niet in de URL, de kopen of de body), herhaling, een ander pakket onder hetzelfde nummer, een andere/ingetrokken token, gesloten, onbekend formulier, de grens vanmax_package_bytestot op de byte, een drukke server metRetry-After, elkeIntakeHttpFailure, vijf soorten antwoord dat geen aankomstbericht is, een 2xx die geen 200/201 is, de tien minuten voor een upload, een poort in het adres.intake_receipt), de client, het venster, de stroom en de zinnen; de eerste ronde liet in het venster een teruggegeven waarde zien die niemand gebruikte (geschrapt) en ontbrekende tests (geschreven).make check(ongepiped, exit 0),check-registrations,check-secrets(gitleaks + trufflehog, alle refs; de testconstante heetkTestInviteen het slechte token wordt gegenereerd — gitleaks lastoken: '…'als lek),sast,check-packages,test-packages: groen. De tak loopt niet achter op main.Wat er nog niet is
Intrekken (met het bewijs) en de outbox, de kant van de organisator (publiceren, binnenhalen, token), de server zelf en de webinvuller.
PUT /v1/submissions/{sid} met de uitnodigingstoken, het formulier en alleen de hash van het intrekgeheim; het aankomstbericht wordt alleen geloofd als het over dit nummer en deze bytes gaat. De nep-server doet de controles in de volgorde van het protocol. FormSubmissionBuilt draagt het inzendnummer; sealFormSubmission kan toetsen of de bundel voor het adres van de server is ondertekend.