Skip to content

Prüfung des Leistungsschlüssels im Zustelldienst (Part 1)

Warum?

Momentan erlaubt der Zustelldienst, Anträge zu beliebigen Verwaltungsleistungen an beliebige Zustellpunkte (Destinations) zu schicken, auch wenn der jeweilige Zustellpunkt dieser Verwaltungsleistung gar nicht unterstützt.

Um Fehlzustellungen bereits möglichst früh zu erkennen und zu unterbinden, soll der Zustelldienst prüfen, ob die über den Endpunkt POST /v1/submissions übergebene Leistungsschlüssel der Verwaltungsleistung (serviceType -> identifier) in der Liste der Services der adressierten Destination (GET /v1/destinations/{destinationId} -> services[] -> identifier) vorhanden ist.

In diesem Issue (Part 1) sollen Fehler zunächst nur geloggt werden, um die Auswirkungen dieser Änderung zu bewerten. Später sollen ungültige Einreichungen in #924 (closed) abgelehnt werden.

Relevante Links und Bemerkungen

Akzeptanzkriterien

  1. Wenn die über den Endpunkt POST /v1/submissions übergebene Leistungsschlüssel nicht in der Liste der Services der adressierten Destination vorhanden ist, wird ein entsprechender Log-Eintrag erzeugt, nach dem über einen eindeutigen Error-Code (z.B. submission-service-identifier-mismatch o.ä.) einfach gefiltert werden kann.
  2. Der Log-Eintrag enthält die Submission-ID, die OAuth-client_id des Senders, die Destination-ID des adressierten Zustellpunktes und den in der Submission gewünschten (aber nicht passenden) Leistungsschlüssel.
  3. In der Dokumentation wird beschrieben, dass der übergebene Leistungsschlüssel in der Liste der Services der adressierten Destination vorhanden sein muss.

Durchführungsplan

Edited by Maik Böttner