Skip to content

Commit

Permalink
Merge pull request #30 from gematik/feature/folder-structure
Browse files Browse the repository at this point in the history
Feature/folder structure
  • Loading branch information
florianschoffke authored Feb 23, 2023
2 parents c1e70ad + 1fba441 commit be1f3f1
Show file tree
Hide file tree
Showing 29 changed files with 81 additions and 79 deletions.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -98,15 +98,15 @@ SOAPAction: "http://ws.gematik.de/conn/CertificateService/v7.4#ReadCardCertifica
|Payload |
[source,xml]
----
include::../examples/konnektorservice/request_ReadCardCertificate.xml[]
include::../resources/examples/konnektorservice/request_ReadCardCertificate.xml[]
----
NOTE: In `<ns8:CertRef>C.AUT</ns8:CertRef>` wird angegeben, dass das Zertifikat zur Authentisierung gegenüber dem IDP aus der SMC-B ausgelesen werden soll.
|===

*Response*
[source,xml]
----
include::../examples/konnektorservice/response_ReadCardCertificate.xml[]
include::../resources/examples/konnektorservice/response_ReadCardCertificate.xml[]
----
NOTE: Der Konnektor liefert das Zertifikat in `<ns5:X509Certificate>` zurück, wie es auf der Karte gespeichert ist, ASN.1 DER codiert in Base64-Darstellung.

Expand Down Expand Up @@ -145,7 +145,7 @@ IMPORTANT: Die Länge des Soap-Requests, muss entsprechend im Header mit der Eig
|Payload |
[source,xml]
----
include::../examples/konnektorservice/request_VerifyCertificate.xml[]
include::../resources/examples/konnektorservice/request_VerifyCertificate.xml[]
----
NOTE: Das zu prüfende Zertifikat in Base64-DER-Codierung ist mit `<m2:X509Certificate></m2:X509Certificate>` identifiziert.
|===
Expand All @@ -155,7 +155,7 @@ NOTE: Das zu prüfende Zertifikat in Base64-DER-Codierung ist mit `<m2:X509Certi
----
HTTP/1.1 200 OK
Content-Type: text/xml;charset=utf-8
include::../examples/konnektorservice/response_VerifyCertificate.xml[]
include::../resources/examples/konnektorservice/response_VerifyCertificate.xml[]
----
NOTE: In `<ns4:VerificationResult></ns4:VerificationResult>` wird das Prüfergebnis des Zertifikats [VALID = gültig, INCONCLUSIVE = offline-gültig ohne Sperrstatus, INVALID = ungültig] angegeben

Expand Down Expand Up @@ -185,7 +185,7 @@ SOAPAction: "http://ws.gematik.de/conn/SignatureService/v7.4#ExternalAuthenticat
|Payload |
[source,xml]
----
include::../examples/konnektorservice/request_ExternalAuthenticate.xml[]
include::../resources/examples/konnektorservice/request_ExternalAuthenticate.xml[]
----
NOTE: Entsprechend der Mandantenkonfiguration wird in `<ns1:CardHandle></ns1:CardHandle>` die SMC-B referenziert, welche der IDP authentifizieren soll.

Expand All @@ -197,7 +197,7 @@ NOTE: In `<ns7:Base64Data></ns7:Base64Data>` befindet sich der zu signierende Ha
----
HTTP/1.1 200 OK
Content-Type: text/xml;charset=utf-8
include::../examples/konnektorservice/response_ExternalAuthenticate.xml[]
include::../resources/examples/konnektorservice/response_ExternalAuthenticate.xml[]
----


Expand Down Expand Up @@ -378,7 +378,7 @@ Nach dem erfolgreichen Abschluss der Bearbeitung des Requests durch die VAU des
Der HTTP-Statuscode 200 signalisiert dabei die korrekte Verarbeitung und Erstellung der verschlüsselten Antwort. Die innere HTTP-Response des fachlichen Ergebnisses aus der VAU kann dabei einen abweichenden HTTP-Statuscode beinhalten, wenn aufgrund der Daten oder Verarbeitung innerhalb der VAU Fehlerzustände eintreten oder ungültige Daten übergeben wurden. Sei `001111101111100110001001001111010110010010111110101100100011110...` die verschlüsselte Response zum obigen Beispiel. Die Entschlüsselung mit dem für den Request generierten Antwortschlüssel `16bac90134c635e4ec85fae0e4885d9f`mittels AES-GCM liefert die innere HTTP-Response der VAU als leerzeichengetrennte Zeichenkette:
[source,json]
----
include::../examples/vau/response_InnerVau.json[]
include::../resources/examples/vau/response_InnerVau.json[]
----

NOTE: Die innere HTTP-Response hat die folgende Struktur "1" + " " + ursprüngliche-Request-ID + " " + Response-Header-und-Body
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ NOTE: Im http-Header des äußeren http-Requests an die VAU (POST /VAU) sind die
*Response*
[source,xml]
----
include::../examples/ti-dienste/task/response_taskAccept.xml[]
include::../resources/examples/ti-dienste/task/response_taskAccept.xml[]
----
NOTE: Das generierte `Secret` stellt den Zugriffscode der abrufenden Apotheke dar und muss in allen folgenden Workflowschritten als `<identifier><value value="*"/></identifier>` angegeben werden, damit nicht eine fremde Apotheke den Prozess übernehmen kann.

Expand Down Expand Up @@ -143,7 +143,7 @@ Content-Length: 1234
|Payload |
[source,xml]
----
include::../examples/konnektorservice/request_VerifySignatureTask.xml[]
include::../resources/examples/konnektorservice/request_VerifySignatureTask.xml[]
----

NOTE: Das Element `<m2:Base64Signature></m2:Base64Signature>`enthält das Signaturelement inkl. des signierten E-Rezept-Datensatzes (CAdES-enveloping) als PKCS#7-Datei in Base64-Codierung
Expand All @@ -162,7 +162,7 @@ IMPORTANT: Im Verzeichnis link:../samples/qes-cases/HBA-gueltig-bis-24.4.2021[HB
*Response*
[source,xml]
----
include::../examples/konnektorservice/response_VerifySignatureTask.xml[]
include::../resources/examples/konnektorservice/response_VerifySignatureTask.xml[]
----
NOTE: Hier dargestellt ist die QES-Signaturvalidierung einer Koco-Box der durch einen Secunet-Konnektor erzeugten Signatur aus `4fe2013d-ae94-441a-a1b1-78236ae65680_S_SECUN_secu_kon_4.8.2_4.1.3_V_KOCOC_kocobox_3.6.0_2.3.24_resp.xml`. Weitere Beispiele finden sich im Unterordner der link:../samples/qes/signed[Beispiele].

Expand Down Expand Up @@ -203,7 +203,7 @@ NOTE: Im http-Header des äußeren http-Requests an die VAU (POST /VAU) sind die
¦Payload ¦
[source,xml]
----
include::../examples/ti-dienste/task/request_taskClose.xml[]
include::../resources/examples/ti-dienste/task/request_taskClose.xml[]
----
NOTE: Mit der Übergabe der MedicationDispense signalisiert der Apotheker den Abschluss des E-Rezept-Workflows. Der Versicherte erhält Informationen über das abgegebene Medikament.

Expand All @@ -225,7 +225,7 @@ NOTE: Der Fachdienst wird diese Funktion vorraussichtlich ab ende des ersten Qua
[source,xml]
----
include::../examples/ti-dienste/task/request_taskCloseMultiple.xml[]
include::../resources/examples/ti-dienste/task/request_taskCloseMultiple.xml[]
----
====
Expand All @@ -234,7 +234,7 @@ include::../examples/ti-dienste/task/request_taskCloseMultiple.xml[]
*Response*
[source,xml]
----
include::../examples/ti-dienste/task/response_taskClose.xml[]
include::../resources/examples/ti-dienste/task/response_taskClose.xml[]
----
NOTE: Im Ergebnis der Operation wird ein signiertes Bundle als Nachweis des ordnungsgemäßen Durchlaufs des E-Rezept-Workflows zurückgegeben.

Expand Down Expand Up @@ -429,7 +429,7 @@ NOTE: Im http-Header des äußeren http-Requests an die VAU (POST /VAU) sind die
*Response*
[source,xml]
----
include::../examples/ti-dienste/task/response_taskGet.xml[]
include::../resources/examples/ti-dienste/task/response_taskGet.xml[]
----
In `<resource><Bundle/></resource>` wird die Quittung wird als Objekt zusammen mit dem Task zurückgegeben

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ NOTE: Im http-Header des äußeren http-Requests an die VAU (POST /VAU) sind die
*Response*
[source,xml]
----
include::../examples/ti-dienste/task/response_taskGet_eGK.xml[]
include::../resources/examples/ti-dienste/task/response_taskGet_eGK.xml[]
----

NOTE: Alle gelieferten Tasks haben den Status `<status value="ready" />` und können im Folgenden durch die Apotheke einzeln abgerufen und beliefert werden.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ SOAPAction: "http://ws.gematik.de/conn/SignatureService/v7.4#SignDocument"
|Payload |
[source,xml]
----
include::../examples/alternative_zuweisung/sign_avs_request.xml[]
include::../resources/examples/alternative_zuweisung/sign_avs_request.xml[]
----
NOTE: Mit der Referenz `<m2:SignatureType>urn:ietf:rfc:5652</m2:SignatureType>` auf den RFC-5652 erfolgt die Erzeugung der nonQES als CMS-Signatur (CAdES).

Expand All @@ -85,7 +85,7 @@ NOTE: In `<ns5:Document ID="CMS-Doc1" ShortText="a CMSDocument2sign">` erfolgt d
*Response*
[source,xml]
----
include::../examples/alternative_zuweisung/sign_avs_response.xml[]
include::../resources/examples/alternative_zuweisung/sign_avs_response.xml[]
----
NOTE: Das Ergebnis der erfolgreichen nonQES wird Base64-codiert in `<ns7:SignatureObject>` zurückgegeben. Darin enthalten ist eine PKCS#7-Datei in HEX-Codierung, die mit einem ASN1-Decoder angesehen werden kann.

Expand Down Expand Up @@ -159,7 +159,7 @@ Das APOVZD stellt jedes Zertifikat in einer eigenen FHIR-Binary-Ressource bereit
Beispiel eines solchen Binaries:
[[apovzd-cert-binary]]
----
include::../examples/alternative_zuweisung/certificate_in_apovzd.json[]
include::../resources/examples/alternative_zuweisung/certificate_in_apovzd.json[]
----

Das Synchronisieren vom Upload-Container in das APOVZD erfolgt täglich zwischen 0 und 6 Uhr. Spätestens ab 6 Uhr ist die Änderung für das E-Rezept-FdV verfügbar.
Expand All @@ -177,7 +177,7 @@ Dem E-Rezept-FdV werden über das APOVZD die URLs innerhalb der LocationRessourc

Beispiel:
----
include::../examples/alternative_zuweisung/url_in_apovzd.json[]
include::../resources/examples/alternative_zuweisung/url_in_apovzd.json[]
----

Um aus dem E-Rezept-FdV nach Apotheken zu filtern, die dieses Feature unterstützen, wird ein zusätzlicher Type DELEGATOR aus dem Codesystem http://terminology.hl7.org/CodeSystem/v3-RoleCode eingeführt.
Expand Down Expand Up @@ -213,7 +213,7 @@ Als Versicherter möchte ich mein Rezept an die Apotheke meiner Wahl übermittel
Der folgende Datensatz wird erstellt:

----
include::../examples/alternative_zuweisung/message_from_fdv.json[]
include::../resources/examples/alternative_zuweisung/message_from_fdv.json[]
----

=== Verschlüsselung des Datensatzes
Expand All @@ -239,7 +239,7 @@ Diese ASN.1-Struktur muss Base64-DER codiert im Aufruf der Verschlüsselungsoper
Das folgende beispielhafte Kommando verschlüsselt einen Datensatz für ein ENC-Zertifikat inkl. Einbettung der unsafe-Attribute (kotlin-Code).

----
include::../examples/alternative_zuweisung/example_encryption.java[]
include::../resources/examples/alternative_zuweisung/example_encryption.java[]
----

Der erhaltene CMS-Datensatz enthält unter der genannten OID die Entschlüsselungsinformationen für den Empfänger:
Expand All @@ -259,13 +259,13 @@ Wenn das FdV eine mit dem Zertifikat der SMB-C verschlüsselte Nachricht an den
=== Entschlüsselung der Nachricht
Der übermittelte CMS-Datensatz enthält die notwendigen Informationen zur Lokalisierung der für die Entschlüsselung zu nutzende SMC-B. Der Datensatz kann mit der Operation `DecryptDocument` des Konnektors entschlüsselt werden.
----
include::../examples/alternative_zuweisung/decrypt_request.xml[]
include::../resources/examples/alternative_zuweisung/decrypt_request.xml[]
----

Der entschlüsselte Datensatz enthält folgende Informationen:

----
include::../examples/alternative_zuweisung/message_from_fdv.json[]
include::../resources/examples/alternative_zuweisung/message_from_fdv.json[]
----

NOTE: "transactionID" beinhaltet die von der E-Rezept-App erzeuge UUID zur eindeutigen Identifikation der Transaktion.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ SOAPAction: "http://ws.gematik.de/conn/SignatureService/v7.4#SignDocument"
|Payload |
[source,xml]
----
include::../examples/alternative_zuweisung/sign_avs_request.xml[]
include::../resources/examples/alternative_zuweisung/sign_avs_request.xml[]
----
NOTE: Mit der Referenz `<m2:SignatureType>urn:ietf:rfc:5652</m2:SignatureType>` auf den RFC-5652 erfolgt die Erzeugung der nonQES als CMS-Signatur (CAdES).

Expand All @@ -85,7 +85,7 @@ NOTE: In `<ns5:Document ID="CMS-Doc1" ShortText="a CMSDocument2sign">` erfolgt d
*Response*
[source,xml]
----
include::../examples/alternative_zuweisung/sign_avs_response.xml[]
include::../resources/examples/alternative_zuweisung/sign_avs_response.xml[]
----
NOTE: Das Ergebnis der erfolgreichen nonQES wird Base64-codiert in `<ns7:SignatureObject>` zurückgegeben. Darin enthalten ist eine PKCS#7-Datei in HEX-Codierung, die mit einem ASN1-Decoder angesehen werden kann.

Expand Down Expand Up @@ -159,7 +159,7 @@ Das APOVZD stellt jedes Zertifikat in einer eigenen FHIR-Binary-Ressource bereit
Beispiel eines solchen Binaries:
[[apovzd-cert-binary]]
----
include::../examples/alternative_zuweisung/certificate_in_apovzd.json[]
include::../resources/examples/alternative_zuweisung/certificate_in_apovzd.json[]
----

Das Synchronisieren vom Upload-Container in das APOVZD erfolgt täglich zwischen 0 und 6 Uhr. Spätestens ab 6 Uhr ist die Änderung für das E-Rezept-FdV verfügbar.
Expand All @@ -177,7 +177,7 @@ Dem E-Rezept-FdV werden über das APOVZD die URLs innerhalb der LocationRessourc

Beispiel:
----
include::../examples/alternative_zuweisung/url_in_apovzd.json[]
include::../resources/examples/alternative_zuweisung/url_in_apovzd.json[]
----

Um aus dem E-Rezept-FdV nach Apotheken zu filtern, die dieses Feature unterstützen, wird ein zusätzlicher Type DELEGATOR aus dem Codesystem http://terminology.hl7.org/CodeSystem/v3-RoleCode eingeführt.
Expand Down Expand Up @@ -213,7 +213,7 @@ Als Versicherter möchte ich mein Rezept an die Apotheke meiner Wahl übermittel
Der folgende Datensatz wird erstellt:

----
include::../examples/alternative_zuweisung/message_from_fdv.json[]
include::../resources/examples/alternative_zuweisung/message_from_fdv.json[]
----

=== Verschlüsselung des Datensatzes
Expand All @@ -239,7 +239,7 @@ Diese ASN.1-Struktur muss Base64-DER codiert im Aufruf der Verschlüsselungsoper
Das folgende beispielhafte Kommando verschlüsselt einen Datensatz für ein ENC-Zertifikat inkl. Einbettung der unsafe-Attribute (kotlin-Code).

----
include::../examples/alternative_zuweisung/example_encryption.java[]
include::../resources/examples/alternative_zuweisung/example_encryption.java[]
----

Der erhaltene CMS-Datensatz enthält unter der genannten OID die Entschlüsselungsinformationen für den Empfänger:
Expand All @@ -259,13 +259,13 @@ Wenn das FdV eine mit dem Zertifikat der SMB-C verschlüsselte Nachricht an den
=== Entschlüsselung der Nachricht
Der übermittelte CMS-Datensatz enthält die notwendigen Informationen zur Lokalisierung der für die Entschlüsselung zu nutzende SMC-B. Der Datensatz kann mit der Operation `DecryptDocument` des Konnektors entschlüsselt werden.
----
include::../examples/alternative_zuweisung/decrypt_request.xml[]
include::../resources/examples/alternative_zuweisung/decrypt_request.xml[]
----

Der entschlüsselte Datensatz enthält folgende Informationen:

----
include::../examples/alternative_zuweisung/message_from_fdv.json[]
include::../resources/examples/alternative_zuweisung/message_from_fdv.json[]
----

NOTE: "transactionID" beinhaltet die von der E-Rezept-App erzeuge UUID zur eindeutigen Identifikation der Transaktion.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ NOTE: Der Parameter `<code value="*"/>` steuert den Typ des dem Task zugrunde l
HTTP/1.1 201 Created
Content-Type: application/fhir+xml; charset=UTF-8
include::../examples/ti-dienste/task/response_taskCreate.xml[]
include::../resources/examples/ti-dienste/task/response_taskCreate.xml[]
----

NOTE: Der unter dem Identifier `GEM_ERP_NS_PrescriptionId` hinterlegte `<identifier><value value="*"/></identifier>` stellt die 10 Jahre lang eineindeutige Rezept-ID dar.
Expand Down Expand Up @@ -141,7 +141,7 @@ CAUTION: DEPRECATED KBV-Bundle, zulässig bis 30.06.2023
[source,xml]
----
include::../examples/kbv/Prescription_bundle.xml[]
include::../resources/examples/kbv/Prescription_bundle.xml[]
----
====

Expand Down Expand Up @@ -174,7 +174,7 @@ SOAPAction: "http://ws.gematik.de/conn/SignatureService/v7.4#SignDocument"
|Payload |
[source,xml]
----
include::../examples/konnektorservice/request_SignDocument.xml[]
include::../resources/examples/konnektorservice/request_SignDocument.xml[]
----
NOTE: Mit der Referenz `<m2:SignatureType>urn:ietf:rfc:5652</m2:SignatureType>` auf den RFC-5652 erfolgt die Erzeugung der QES als CMS-Signatur (CAdES).

Expand All @@ -192,7 +192,7 @@ IMPORTANT: Der Parameter `IncludeRevocationInfo = true` ist von herausragender B
*Response*
[source,xml]
----
include::../examples/konnektorservice/response_SignDocument.xml[]
include::../resources/examples/konnektorservice/response_SignDocument.xml[]
----
NOTE: Das Ergebnis der erfolgreichen qualifizierten Signatur wird Base64-codiert in `<ns5:SignatureObject>` zurückgegeben. Darin enthalten ist eine PKCS#7-Datei in HEX-Codierung, die mit einem ASN1-Decoder angesehen werden kann.

Expand Down Expand Up @@ -252,7 +252,7 @@ NOTE: Bei dem Wert in `<Binary><data value="*"/></Binary>` handelt es sich um di
*Response*
[source,xml]
----
include::../examples/ti-dienste/task/response_taskActivate.xml[]
include::../resources/examples/ti-dienste/task/response_taskActivate.xml[]
----
NOTE: Der E-Rezept-Fachdienst prüft die Gültigkeit der qualifizierten Signatur des übergebenen FHIR-Bundles. Bei Gültigkeit wird der Task aktiviert und die Zuordnung des Task zum Patienten auf Basis der KVNR im Task unter dem `value` von `<system value="http://fhir.de/sid/gkv/kvid-10"/>` hinterlegt.

Expand Down
Loading

0 comments on commit be1f3f1

Please sign in to comment.