diff --git a/docs/changelog.md b/docs/changelog.md index b537013a467c2543be5ba31eacf0c4a925a5e4bc..3a57bfc5954e20ce8121a2a547411be8c59bd4a4 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -7,6 +7,7 @@ Das hier veröffentlichte Changelog bezieht sich auf die [Testinstanz von FIT-Co ## 2022-10-27 ### Dokumentation - Die Informationen zu den verfügbaren Betriebsumgebungen aus dem Artikel [Getting Started](getting-started/get-started.mdx) wurden in den neuen Artikel [Betriebsumgebungen](getting-started/environments.mdx) verschoben und um die URLs der Staging- und Produktivumgebung ergänzt. +- Hinweis auf Möglichkeit der Prüfung der für die SET-Erstellung genutzten Zertifikate in der Staging- und Produktivumgebung im Artikel [Prüfung eines Security-Event-Token (SET)](getting-started/event-log/set-validation.mdx) ergänzt ## 2022-10-17 ### Dokumentation diff --git a/docs/getting-started/event-log/set-validation.mdx b/docs/getting-started/event-log/set-validation.mdx index c379eb0db3feb6bcb4375e20bd6ac3825ed85209..9e95e9d6769da7bbee15c51462703b1cb8fb053b 100644 --- a/docs/getting-started/event-log/set-validation.mdx +++ b/docs/getting-started/event-log/set-validation.mdx @@ -18,7 +18,7 @@ In dem Fall, dass das SET-Payload-Schema nicht angegeben ist, müssen trotzdem d Sowohl die Prüfung der kryptografischen Vorgaben, als auch die Prüfung der kryptografischen Signatur darf KEINESFALLS ausgelassen werden. ::: -## Prüfung der Einhaltung von kryptografischen Vorgaben und der Struktur +## Prüfung der Einhaltung von kryptografischen Vorgaben und der Struktur {#cryptoRequirements} Alle generierten Security-Event-Tokens MÜSSEN den Vorgaben aus [RFC 7519](https://tools.ietf.org/html/rfc7519) entsprechen und über folgende Header-Attribute verfügen: @@ -278,7 +278,7 @@ Ein Beispiel für ein JWKS ist in folgendem Ausschnitt dargestellt: Mit diesem JWK Set kann die Signatur eines Security-Event-Tokens überprüft werden. Hierfür muss der Schlüssel mit der passenden `kid` aus dem Header des SET’s im JWK Set gesucht werden. -Dann kann man mit diesem und einer entsprechenden Bibliothek eine Signaturprüfung durchführen. +Nach Abschluss der [Prüfung aller kryptografischen Vorgaben](#cryptoRequirements) kann mit diesem und einer entsprechenden Bibliothek eine Signaturprüfung durchgeführt werden. <Tabs defaultValue="java" @@ -329,6 +329,11 @@ boolean verifyZustelldienstSignature(SignedJWT securityEventToken, String keyId) </Tabs> +:::tip Hinweis +In der [Staging- und Produktivumgebung](../environments.mdx) ist das vom Zustelldienst für die Signaur der SET genutzte Schlüsselpaar über ein Zertifikat aus der Verwaltungs-PKI abgesichert (Attribut `x5c` des JWK). +Für eine vollständige Prüfung der Authentizität der augestellen SET SOLLTE daher – analog zur Prüfung der öffentlichen Schlüssel im Rahmen der Verschlüsselung – [eine Zertifikatsprüfung durchgeführt werden](../../sending/encrypt.mdx#certificateValidation). +::: + ## Signaturprüfung eines vom empfangenden System ausgestellten SET Um die Signatur eines von einem empfangenden System ausgestellen SET zu überprüfen ist es notwendig, auf den verwendeten Schlüssel zugreifen zu können. @@ -402,7 +407,7 @@ $ curl -X GET \ ### Validierung des SET mit Hilfe des JWK -Die Verifikation des SET mit dem eben abgerufenen JWK ist dann ziemlich geradlinig. +Die Verifikation des SET mit dem eben abgerufenen JWK ist – nach Abschluss der [Prüfung aller kryptografischen Vorgaben](#cryptoRequirements) – ziemlich geradlinig. Es wird zunächst geprüft ob der Schlüssel den passenden Algorithmus hat. Anschließend wird die eigentliche Verifikation durch die Bibliothek durchgeführt. <Tabs @@ -448,3 +453,8 @@ boolean verifyClientSignature(SignedJWT securityEventToken, String keyId) { </TabItem> </Tabs> + +:::tip Hinweis +In der [Staging- und Produktivumgebung](../environments.mdx) ist das von empfangenden Systemen (Subscriber) für die Signaur der SET genutzte Schlüsselpaar über ein Zertifikat aus der Verwaltungs-PKI abgesichert (Attribut `x5c` des JWK). +Für eine vollständige Prüfung der Authentizität der augestellen SET SOLLTE daher – analog zur Prüfung der öffentlichen Schlüssel im Rahmen der Verschlüsselung – [eine Zertifikatsprüfung durchgeführt werden](../../sending/encrypt.mdx#certificateValidation). +:::