[v2] Versenden von Einreichungen (Submissions) ohne Fachdaten nicht mehr erlauben (required encryptedData
) [Open Code #20]
Warum?
Submissions und Replies ohne maschinenlesbare Fachdaten sollen nicht mehr unterstützt werden. Um das Ziel der effizienteren Digitalisierung durch Maschinenlesbarkeit zu fördern, wollen wir keine Submissions und Replies zulassen, die nur (PDF-)Anhänge enthalten.
Disclaimer: Einige Zeit nach Konzeption dieser Story wurde Funktion im SDK verbaut, die übergroße Fachdaten automatisch als Anhänge überträgt. Dieser Ansatz wird nach Umsetzung dieser Story nicht mehr ohne weiteres funktionieren. Den Entscheidern ist dies bewusst und es muss ein Platzhalter für die Fachdaten eingeführt werden.
Prinzipiell sollen langfristig die Submission-API, das Metadatenschema, SET-Payload-Schema und die Dokumentation angepasst werden, sodass eine Einreichung ohne Fachdatensatz nicht mehr möglich ist. Im Rahmen von FIT-Connect V2 ist davon zunächst nur ein Teil umsetzbar, siehe Vorgehen.
Ist-Zustand
Für die Implementierung der replies
wurde die Entscheidung getroffen, dass Fachdaten (encryptedData
) ein Pflichtfeld sind.
An den Zustellpunkten in der Submission API ist die URI eines Fachdatenschemas ein Pflichtfeld: https://docs.fitko.de/fit-connect/docs/apis/submission-api/#get-/v1/destinations
Im Metadaten-Schema sind die Fachdaten contentStructure.data
optional: https://schema.fitko.de/fit-connect/metadata/1.5.0/metadata.schema.json
Beim Einreichen (https://docs.fitko.de/fit-connect/docs/apis/submission-api/#put-/v1/submissions/-submissionId-) und Abholen (https://docs.fitko.de/fit-connect/docs/apis/submission-api/#get-/v1/submissions/-submissionId-) sind die verschlüsselten Fachdaten ebenfalls optional.
Sowohl in der Spezifikation der Absenderseite als auch im Kapitel Sicherstellen der Integrität einer Submission auf der Seite "Einreichung überprüfen" sind die Fachdaten als optional beschrieben. Auch in den Schemas (AuthenticationTags, SubmitSubmission-Event) sind die für die Fachdaten relevanten Felder optional.
Auf der gleichen Seite gibt es aber auch einen Abschnitt Fachdatensatz, nach dem der Fachdatensatz als Pflichtfeld geprüft werden soll.
Vorgehen
Wir können mit dem v2-Release zunächst nur das Senden von Einreichungen ohne Fachdaten unterbinden, nicht jedoch das Empfangen. Letzteres liegt daran, dass bei erfolgtem v2-Release die v1-Version immernoch von Onlinediensten verwendet werden kann, um Einreichungen zu versenden. Ein Fachverfahren wird dann trotz Verwendung der v2-API weiterhin solche Submissions erhalten. Die API-Spec für den Empfang muss also weiterhin das Feld als optional kennzeichnen und die Dokumentation muss weiterhin beschreiben, dass beim Empfang dieser Fall betrachtet werden muss.
Durch die Publikation eines neuen Metadatenschemas erlauben wir den Fachverfahren, selbsstständig zu entscheiden, ab wann nur noch Einreichungen nach dem neuen Schema (und damit mit verpflichtenden Fachdaten) erlaubt sein sollen. Dies muss natürlich vorsichtig bilateral mit bestehenden Onlinedienst-Anbindungen koordiniert werden. In jedem Fall ist die Verwendung des neuen Schemas unabhängig von der verwendeten API-Version. Es bleibt also dabei, dass die v2-API-Spec das Feld encryptedData
für den Empfang weiterhin als optional betrachten muss.
Akzeptanzkriterien
-
In der Api-Spec der Submission-API v2 wird encryptedData
beiPUT v2/submissions/id
als verpflichtend markiert. -
Im ZSD wird ein PUT v2/submissions/id
ohne Fachdaten abgelehnt - dies wird auch getestet. -
Im Metadatenschema 2.0.0 ist contentStructure.data
als verpflichtend markiert.
Durchführungsplan (von Entwickler:in bei Umsetzungsplanung auszufüllen)
-
https://gitlab.opencode.de/fitko/feedback/-/issues/20 bescheid geben nach Implementierung -
... -
... -
Definition of Done wurde geprüft