Nutzerdokumentation der Prüfung einer Signatur und Zertifikatskette
An verschiedenen Stellen müssen API-Clients Zertifikatsketten der verwendeten Zertifikate prüfen. Hierzu ist in der Dokumentation praxisnah für verschiedene Programmiersprachen dargestellt, wie die Prüfung der Zertifikatskette durchzuführen ist.
Dazu sind folgende Schritte notwendig:
- Abruf des zur Destination gehörenden JSON Web Keys
- Überprüfung, dass der JSON Web Key für die Verschlüsselung geeignet ist ("keyops": ["wrap_key"])
- Überprüfung, dass der öffentliche Schlüssel mit dem im JSON Web Key hinterlegten Zertifikat übereinstimmt (Attribute n und e)
- Überprüfung der Zertifikats-Kette bis zum Wurzelzertifikat (BSI)
- Überprüfung mittels Validierungsdienst (gegen eine Certificate Revocation List (CRL) und/oder einen OCSP-Endpunkt) mit signierten Antworten
Akzeptanzkriterien
-
Alle Vorgaben aus bestehender Dokumentation, insbesondere die oben genannten Schritte werden beachtet. -
Es gibt Codebeispiele für alle der oben genannten Teilschritte. -
Es existiert ein Beispiel einer nicht erfolgreichen Zertifikatsvalidierung (ungültiges Zertifikat). -
An allen Stellen der API-Dokumentation (bspw. Signaturprüfung), wo eine Zertifikatsprüfung notwendig ist, wird auf die Notwendigkeit bzw. Empfehlung einer Zertifikatskettenprüfung durch die API-Client hingewiesen und auf den Detailartikel verwiesen.
Edited by Marco Holz