latest
Elektronische Gesundheitskarte und Telematikinfrastruktur
Spezifikation Autorisierung ePA
Version | 1.55.0 |
Revision | 654368 |
Stand | 21.06.2023 |
Status | freigegeben |
Klassifizierung | öffentlich |
Referenzierung | gemSpec_Autorisierung |
Dokumentinformationen
Änderungen zur Vorversion
Anpassungen des vorliegenden Dokumentes im Vergleich zur Vorversion können Sie der nachfolgenden Tabelle entnehmen.
Dokumentenhistorie
Version | Stand | Kap./ Seite | Grund der Änderung, besondere Hinweise | Bearbeitung |
---|---|---|---|---|
1.0.0 | 18.12.18 | initiale Erstellung des Dokuments | gematik | |
1.1.0 | 15.05.19 | Einarbeitung Änderungsliste P18.1 | gematik | |
1.2.0 | 28.06.19 | Einarbeitung Änderungsliste P19.1 | gematik | |
1.3.0 | 02.10.19 | Einarbeitung Änderungsliste P20.1/2 | gematik | |
1.4.0 | 02.03.20 | Einarbeitung Änderungsliste P21.1 | gematik | |
1.4.1 | 26.06.20 | Einarbeitung Änderungsliste P21.3 | gematik | |
1.5.0 | 30.06.20 | Anpassungen gemäß Änderungsliste P22.1 und Scope-Themen aus Systemdesign R4.0.0, Einarbeitung offener Punkte | gematik | |
1.6.0 | 12.10.20 | Einarbeitung der Scope-Themen aus R4.0.1 |
gematik | |
1.7.0 | 19.02.21 | Einarbeitung Änderungsliste P22.5 | gematik | |
1.8.0 | 02.06.21 | Einarbeitung Änderungsliste ePA_Maintenance_21.1 | gematik | |
1.8.1 | 09.07.21 | Einarbeitung Anpassung IOP-WS (ePA_Maintenance_21.2) | gematik | |
1.8.2 | 30.09.21 | Einarbeitung ePA_Maintenance_21.3 und red. Anpassung (Pfad auf github) | gematik | |
1.9.0 | 31.01.22 | Einarbeitung ePA_Maintenance_21.4 und ePA_Maintenance_21.5 |
gematik | |
1.9.1 | 31.03.22 | Einarbeitung ePA_Maintenance_22.1 | gematik | |
1.50.0 | 13.04.22 | ePA-Stufe 2.5: gemF_ePA_DiGA_Anbindung, gemF_ePA_FDZ_Anbindung | gematik | |
1.51.0 | 25.07.22 | Änderungsliste ePA_Maintenance_22.2, redaktionell: diskriminierungsfreie Sprache (Black-/Whitelist) | gematik | |
1.52.0 | 01.12.22 | 6.2.3.8 | Einarbeitung ePA_Maintenance_22.3 | gematik |
1.53.0 | 12.04.23 | Einarbeitung ePA_Maintenance_23.1 | gematik | |
1.54.0 | 26.05.23 | Anpassung zu ePA-Release 2.6.0 | gematik | |
1.55.0 | 21.06.23 | 6.5.2 | Anpassung zu ePA-Release 2.6.0 (Wegfall A_15551-03) | gematik |
Inhaltsverzeichnis
1 Einordnung des Dokumentes
1.1 Zielsetzung
Das vorliegende Dokument spezifiziert die Anforderungen an die Komponente "Autorisierung" des Produkttyps ePA-Aktensystem. Die Komponente Autorisierung ist verantwortlich für die zentrale Verwaltung des empfängerbezogenen verschlüsselten Schlüsselmaterials.
1.2 Zielgruppe
Das Dokument richtet sich an Hersteller und Anbieter der Komponente "Autorisierung" für die Nutzung in einem ePA-Aktensystem sowie an Hersteller und Anbieter von Produkttypen ePA, die Schnittstellen der Komponente "Autorisierung" nutzen.
1.3 Geltungsbereich
Dieses Dokument enthält normative Festlegungen zur Telematikinfrastruktur des deutschen Gesundheitswesens. Der Gültigkeitszeitraum der vorliegenden Version und deren Anwendung in Zulassungs- oder Abnahmeverfahren wird durch die gematik GmbH in gesonderten Dokumenten (z.B. Dokumentenlandkarte, Produkttypsteckbrief, Leistungsbeschreibung) festgelegt und bekannt gegeben.
Schutzrechts-/Patentrechtshinweis
Die nachfolgende Spezifikation ist von der gematik allein unter technischen Gesichtspunkten erstellt worden. Im Einzelfall kann nicht ausgeschlossen werden, dass die Implementierung der Spezifikation in technische Schutzrechte Dritter eingreift. Es ist allein Sache des Anbieters oder Herstellers, durch geeignete Maßnahmen dafür Sorge zu tragen, dass von ihm aufgrund der Spezifikation angebotene Produkte und/oder Leistungen nicht gegen Schutzrechte Dritter verstoßen und sich ggf. die erforderlichen Erlaubnisse/Lizenzen von den betroffenen Schutzrechtsinhabern einzuholen. Die gematik GmbH übernimmt insofern keinerlei Gewährleistungen.
1.4 Abgrenzungen
Spezifiziert werden in dem Dokument die von der Komponente bereitgestellten (angebotenen) Schnittstellen. Benutzte Schnittstellen werden hingegen in der Spezifikation desjenigen Produkttypen beschrieben, der diese Schnittstelle bereitstellt. Auf die entsprechenden Dokumente wird referenziert (siehe auch Anhang A5).
Die vollständige Anforderungslage für den Produkttyp ergibt sich aus weiteren Konzept- und Spezifikationsdokumenten. Diese sind in dem Produkttypsteckbrief des Produkttyps <ePA-Aktensystem> verzeichnet.
Nicht Bestandteil des vorliegenden Dokumentes sind die Festlegungen zum Themenbereich Betrieb.
1.5 Methodik
Anforderungen als Ausdruck normativer Festlegungen werden durch eine eindeutige ID sowie die dem RFC 2119 [RFC2119] entsprechenden, in Großbuchstaben geschriebenen deutschen Schlüsselworte MUSS, DARF NICHT, SOLL, SOLL NICHT, KANN gekennzeichnet.
Da in dem Beispielsatz „Eine leere Liste DARF NICHT ein Element besitzen.“ die Phrase „DARF NICHT“ semantisch irreführend wäre (wenn nicht ein, dann vielleicht zwei?), wird in diesem Dokument stattdessen „Eine leere Liste DARF KEIN Element besitzen.“ verwendet. Die Schlüsselworte werden außerdem um Pronomen in Großbuchstaben ergänzt, wenn dies den Sprachfluss verbessert oder die Semantik verdeutlicht.
Anforderungen werden im Dokument wie folgt dargestellt:
<AFO-ID> - <Titel der Afo>
Text / Beschreibung
[<=]
Dabei umfasst die Anforderung sämtliche zwischen Afo-ID und Textmarke [<=] angeführten Inhalte.
2 Systemüberblick
Der Autorisierungsdienst ePA ist eine Komponente des Produkttyps ePA-Aktensystem. Die Systemzerlegung der Fachanwendung ePA in Komponenten und Produkttypen sowie die Verteilung der Komponenten auf Produkttypen der Telematikinfrastruktur (TI) ist in [gemSysL_ePA#2.1] und in [gemSysL_ePA#4.1] definiert.
Die Komponente Autorisierungsdienst ePA verwaltet das empfängerverschlüsselte Schlüsselmaterial der Nutzer eines Aktenkontos eines Versicherten (kryptografische Autorisierung). Mit dem Vorhandensein einer kryptografischen Berechtigung ist ein Nutzer in der Lage, auf den symmetrischen Aktenschlüssel sowie den Kontextschlüssel zuzugreifen. Um dieses Schlüsselmaterial für den Zugriff auf medizinische Daten und Dokumente eines Versicherten zu nutzen, benötigt ein Nutzer ggfs. zusätzlich Berechtigungen auf Objektebene in anderen Komponente und Produkttypen, die die Daten und Dokumente des Versicherten verwalten.
3 Systemkontext
Der folgende Abschnitt setzt die Komponente Autorisierung in den Systemkontext der Fachanwendung ePA.
3.1 Akteure und Rollen
Die Komponente Autorisierung wird als Provider technischer Schnittstellen von weiteren technischen Komponenten und Produkttypen der Fachanwendung ePA aufgerufen. Diese weiteren Komponenten und Produkttypen nutzen die Schnittstellen der Komponente Autorisierung im Zusammenhang von fachlichen Anwendungsfällen der Nutzer der Fachanwendung ePA.
Die Nutzer sind dabei gesetzlich Versicherte, Leistungserbringerinstitutionen und Kostenträger, welche durch ihre jeweilige Karte der TI repräsentiert werden. Über eine kartenbasierte Authentifizierungsbestätigung authentisieren sie sich gegenüber der Komponente Autorisierung. Ein Spezialfall des gesetzlichen Versicherten ist der berechtigte Vertreter.
Für die oben genannten Nutzer verwaltet die Komponente Autorisierung empfängerbezogen verschlüsseltes Schlüsselmaterial
- für Versicherte, plus den Spezialfall des Vertreters - verschlüsselt für die individuelle KVNR
- für Leistungserbringerinstitutionen und Kostenträger - verschlüsselt für die individuelle Telematik-ID
Die Komponente Autorisierung wird je nach Erfordernis zur Laufzeit von einem Administrator administriert. Gemäß der Festlegungen des Rollenmodells "Personenkreise der Telematikinfrastruktur" in [gemKPT_Arch_TIP] haben Anbieter, Betreiber und Administratoren keinen Zugriff auf medizinische Daten der Anwendungen des §291a SGB V [SGB V]. Die Komponente Autorisierung speichert personenbezogene Informationen, jedoch keine medizinischen Daten im Sinne des § 291a SGB V [SGB V].
Das folgende Bild gibt eine Übersicht der durch die Schnittstellen realisierten Anwendungsfälle zur Schlüsselverwaltung der Komponente Autorisierung. Zur Vereinfachung sind die Anwendungsfälle der Protokollierung und Geräteverwaltung nicht dargestellt.
Die Berechtigung für Anwendungsfälle der Schlüsselverwaltung durch einen Nutzer unterscheidet sich nach Umgebung. Dem Versicherten stehen in der Umgebung der Leistungserbringer keine Anwendungsfälle zum Löschen bestehender Berechtigungen zur Verfügung, da ihm dort kein geeignetes Benutzerinterface zur Verfügung steht. Ein Ersetzen des Schlüsselmaterials erfolgt bei Vergabe einer Änderungsberechtigung für eine Leistungserbringerinstitution, wenn bspw. die Gültigkeitsdauer der Berechtigung angepasst wird.
Eine Leistungserbringerinstitution kann auf das für sie hinterlegte Schlüsselmaterial lesend zugreifen. Analog kann ein Kostenträger nur auf das für ihn hinterlegte Schlüsselmaterial lesend zugreifen.
In der Umgebung des Versicherten hat ein Versicherter vollen Zugriff auf das hinterlegte Schlüsselmaterial mit folgender Ausnahme - ein Versicherter darf das eigene Schlüsselmaterial für die eGK des Versicherten nicht löschen. Ebenso darf der Vertreter nicht das Schlüsselmaterial des Versicherten löschen und auch nicht Schlüsselmaterial für andere eGK-Inhaber hinzufügen (kein Einrichten weiterer Vertretungen durch einen Vertreter).
Ergänzende Informationen zu Bezeichnern und Datentypen finden sich im Informationsmodell in Abschnitt 7.
Assoziation |
Actor |
Regel zur Identifikation des Nutzers* |
---|---|---|
A |
Versicherter |
subject-id == OwnerKVNR == ActorID |
B |
||
C |
||
D |
Leistungserbringer-institution |
subject-id == ActorID != OwnerKVNR (für HBA – erst in Folgestufe) organization-id == ActorID != OwnerKVNR (für SMC-B) |
E |
Versicherter |
subject-id == OwnerKVNR |
F |
Vertreter |
subject-id == ActorID != OwnerKVNR (beim Verwalten des Vertretungsschlüssels) subject-id != ActorID != OwnerKVNR (beim Verwalten aller übrigen Schlüssel) |
G |
Kostenträger |
organization-id == ActorID != OwnerKVNR (für SMC-B KTR) |
H | DiGA (Digitale Gesundheitsanwendung) |
organization-id == ActorID != OwnerKVNR (für SMC-B DiGA) |
* subject-id/organization-id ist Teil der Authentication- bzw. AuthorizationAssertion (als Behauptung gemäß [gemSpec_TBAuth#TAB_TBAuth_02_1/2]), OwnerKVNR ist ein Attribut der KeyChain (vgl. Kap. 7 Informationsmodell), der mehrere AuthorizationKeys untergeordnet werden, ActorID meint hier den Teil des AuthorizationKeys der dessen Besitzer identifiziert, (einige Schnittstellenoperationen verfügen über einen Parameter ActorID, dieser ist hier jedoch nicht Gegenstand der Betrachtung)
Der Versicherte wird beim Einsatz der eGK in der Umgebung der Leistungserbringer (Anwendungsfälle A und B) und in Anwendungsfällen aus der Umgebung des Versicherten (Anwendungsfälle zu E) anhand der KVNR als subject-id eines AuthenticationTokens erkannt. Diese stimmt gleichzeitig mit der OwnerKVNR des Eigentümers der Akte überein. Im Regelfall existiert für den Versicherten ein AuthorizationKey mit der KVNR des Versicherten als ActorID. Im Zustand der Kontoeröffnung und bei Anbieterwechsel wird das Schlüsselmaterial für den Versicherten extern erzeugt. Ein Nicht-Vorhandensein eines AuthorizationKeys für den Versicherten wird nicht als Fehler behandelt, sondern als Autorisierung im Zusammenhang mit Anwendungsfällen der Kontoverwaltung.
Eine Leistungserbringerinstitution wird bei Einsatz einer SMC-B (Anwendungsfälle C und D) anhand ihrer Telematik-ID aus der organization-id eines AuthenticationTokens erkannt. Für diese Telematik-ID muss ein AuthorizationKey mit gleichlautender ActorID vorhanden sein, andernfalls ist diese Leistungserbringerinstitution nicht autorisiert. Das gleiche gilt für die Kostenträger (Anwendungsfall G) und DiGA (Anwendungsfall H).
Der Vertreter wird zunächst als Versicherter mit eigener eGK anhand der KVNR als subject-id eines AuthenticationTokens erkannt. In der Wahrnehmung einer Vertretung (Anwendungsfälle F) ist seine KVNR ungleich der OwnerKVNR des Eigentümers der Akte. Für seine KVNR muss ein AuthorizationKey mit gleichlautender ActorID vorhanden sein, andernfalls ist der Vertreter für den Zugriff nicht autorisiert.
3.2 Nachbarsysteme
Der folgende Abschnitt beschreibt die Positionierung der Komponente Autorisierung im Kontext der Fachanwendung ePA.
Die folgende Abbildung zeigt die Beziehung zu benachbarten Produkttypen innerhalb der Fachanwendung mit den von der Komponente Autorisierung bereitgestellten Schnittstellen.
Die Komponente Autorisierung stellt die Schnittstellen I_Authorization und I_Authorization_Management zur Nutzung aus der Umgebung der Leistungserbringer und Kostenträger bereit. Von dort werden sie aus der Secure Consumer Zone aufgerufen.
Die Schnittstellen I_Authorization_Insurant und I_Authorization_Management_Insurant werden aus der Personal Zone in der Umgebung des Versicherten aufgerufen. In dieser Umgebung nutzt der Versicherte das ePA-Frontend des Versicherten auf einem Gerät des Versicherten.
Die Komponente Autorisierung wird als Teil des Produkttyps ePA-Aktensystem in der Provider Zone der Telematikinfrastruktur betrieben. Sie verfügt über einen logischen, internen Speicher, an den in diesem Dokument keine Umsetzungsanforderungen gestellt werden. Er dient der Persistierung der im Informationsmodell (siehe ) strukturierten Inhalte.
A_13956 - Komponente Autorisierung -Separierung der Schnittstellen für verschiedene Umgebungen
Die Komponente Autorisierung MUSS die Bereitstellungspunkte der Schnittstellen für die Nutzung durch benachbarte Komponenten und Produkttypen aus verschiedenen Einsatzumgebungen voneinander separieren. [<=]
Diese Separierung kann beispielsweise umgesetzt werden durch die Erreichbarkeit der Schnittstellen über verschiedene Netzwerkadressen.
3.3 Tokenbasierte Autorisierung
Die Komponente Autorisierung bietet eine Single-Sign-On (SSO)-Lösung an, um einem zuvor authentifizierten Nutzer den Zugriff auf weitere Ressourcen zu ermöglichen. Hierbei wird nach einer erfolgreichen Autorisierung eine Autorisierungsbestätigung (AuthorizationAssertion gemäß SAML 2.0 Assertions [SAML2.0]) ausgestellt.
Für die Initialisierung sowie für den Zugriff auf den Aktenkontext eines Versicherten erwartet die Komponente Dokumentenverwaltung eine gültige Assertion von der Komponente Autorisierung. Die Assertion wird ungültig, wenn der Aktenkontext eines Versicherten geschlossen wird oder der Gültigkeitszeitraum der Assertion abgelaufen ist.
4 Zerlegung der Komponente Autorisierung
Eine detaillierte Zerlegung der Komponente Autorisierung wird nicht vorgegeben. Gleichwohl muss die Komponente Autorisierung privates Schlüsselmaterial in einem HSM speichern, das den Anforderungen einer bestimmten Prüftiefe entspricht. Auf eine grafische Darstellung wird an dieser Stelle verzichtet.
5 Übergreifende Festlegungen
5.1 Datenschutz und Datensicherheit
Im folgenden Abschnitt werden die für die Komponente Autorisierung notwendigen Anforderungen für den Schutz personenbezogener Daten bzw. Anforderungen für den Schutz von Daten beschrieben, um beispielsweise vor Datenmanipulation oder Datenverlust zu schützen.
A_14417 - Komponente Autorisierung - Akzeptieren von Identitätsbestätigungen
Die Komponente Autorisierung MUSS Identitätsbestätigungen (AuthenticationAssertion) als ungültig mit dem Fehler ASSERTION_INVALID ablehnen, wenn die Identität des Ausstellers (Issuer) nicht als vertrauenswürdiger Dienst für die Durchführung einer Authentifizierung konfiguriert ist oder dessen X.509-Signatur-Zertifkat nicht zu der Signatur der Identitätsbestätigung passt.
[<=]
A_13990 - Komponente Autorisierung - Vorgaben für Identitätsbestätigung
Die Komponente Autorisierung MUSS eine übergebene Identitätsbestätigung (AuthenticationAssertion) als ungültig mit dem Fehler ASSERTION_INVALID ablehnen, wenn diese nicht konform zu den Vorgaben der Tabelle [gemSpec_TBAuth#TAB_TBAuth_03 Identitätsbestätigung] ist. [<=]
A_14688-01 - Komponente Autorisierung - Prüfung einer Identitätsbestätigung
Die Komponente Autorisierung MUSS eine übergebene Identitätsbestätigung (AuthenticationAssertion) als ungültig mit dem Fehler ASSERTION_INVALID ablehnen, die nach einer Prüfung gemäß [gemSpec_TBAuth#A_15557] (vgl. auch gemSpec_TBAuth#3.2 Prüfen von Identitätsbestätigungen) als nicht gültig betrachtet wird. Insbesondere MUSS die Komponente Autorisierung das Signaturzertifikat der Ausstelleridentität eines Vertrauensraums außerhalb des Vertrauensraums der Komponente Autorisierung mittels [gemSpec_PKI#TUC_PKI_018] mit den folgenden Parametern prüfen:
Parameter | Belegung für SAML 2.0 Assertions des Fachmoduls ePA |
---|---|
Zertifikat |
Signaturzertifikat (eingebettet in Identitätsbestätigung) C.HCI.OSIG |
PolicyList |
oid_smc_b_osig |
intendedKeyUsage |
nonRepudiation |
intendedExtendedKeyUsage |
(leer) |
OCSP-Graceperiod |
60 Minuten |
Offline-Modus |
nein |
Prüfmodus |
OCSP |
Das Signaturzertifikat muss anhand der Zertifikatsprüfung für [mathematisch gültig UND zeitlich gültig UND online gültig ] befunden werden. Die Telematik-ID im Signaturzertifikat muss identisch mit der Telematik-ID in der Identitätsbestätigung sein. [<=]
A_18989 - Komponente Autorisierung – Beschränkung gültiger Identitätsbestätigungen
Die Komponente Autorisierung DARF in Aufrufen aus Richtung der Komponente Zugangsgateway KEINE Identitätsbestätigung akzeptieren, die nicht durch die Komponente Authentisierung (Versicherter) erstellt wurde. [<=]
A_17839-04 - Komponente Autorisierung - Prüfung der Empfänger-Rolle
Die Komponente Autorisierung MUSS beim Aufruf einer der Operation
- I_Authorization::getAuthorizationKey
/saml2:Assertion/ds:Signature/ds:KeyInfo/ds:X509Data/ds:X509Certificate
in der Liste der zulässigen Autorisierungsempfänger-Rollen gemäß [gemSpec_OID#Tab_PKI_403]
- oid_praxis_arzt
- oid_zahnarztpraxis
- oid_praxis_psychotherapeut
- oid_krankenhaus
- oid_oeffentliche_apotheke
- oid_epa_ktr
- oid_institution-pflege
- oid_institution-geburtshilfe
- oid_praxis-physiotherapeut
- oid_institution-oegd
- oid_institution-arbeitsmedizin
- oid_institution-vorsorge-reha
- oid_sanitaetsdienst-bundeswehr
- oid_diga
Ist die AuthenticationAssertion vom Aktensystem selbst erstellt worden (/saml2:Assertion/ds:Signature/ds:KeyInfo/ds:X509Data/ds:X509Certificate enthält das Signaturzertifikat C.FD.SIG des Aktensystems), entfällt die Rollenprüfung, da die Rolle des Versicherten bereits durch Komponente Authentisierung Versicherter geprüft wurde.
A_17840 - Komponente Autorisierung Vers. - Prüfung Identitätswechsel des Versicherten
Die Komponente Autorisierung MUSS eine übergebene AuthenticationAssertion für einen Versicherten (das SAML:Assertion/SAML:AttributeStatement/SAML:Attribute urn:gematik:subject:subject-id enthält eine KVNR) dahingehend prüfen, ob die in der Behauptung urn:gematik:subject:authreference mit der serialNumber des zur Authentifizierung verwendeten AUT- bzw. AUT_ALT-Zertifikats in der Liste der bekannten AUT-Referenzen an der KeyChain des im RecordIdentifier benannten Aktenkontos ist und falls nicht, MUSS die Komponente Autorisierung den Versicherten sowie im Vertretungsfall zusätzlich den Vertreter über die Nutzung eines neuen Authentisierungsmittels in einer E-Mail-Nachricht an die hinterlegte E-Mail-Adresse NotificationInfo des Versicherten bzw. des Vertreters informieren. Anschließend MUSS die benannte serialNumber in die Liste der erlaubten AUT-Referenzen an der KeyChain des im RecordIdentifier benannten Aktenkontos übernommen werden. [<=]
Nutzt der Versicherte ein im Aktensystem bisher unbekanntes Authentisierungsmittel (z.B. eine Folge-eGK) erhält er eine E-Mailbenachrichtigung, der Anwendungsfall wird nicht unterbrochen. Es obliegt dem Versicherten die Legitimität des Zugriffs bzw. des Authentisierungsmittels zu prüfen und sich gegebenenfalls mit dem ePA-Aktenanbieter und seinem Kostenträger in Verbindung zu setzen.
Nutzt der Vertreter des Versicherten ein bisher unbekanntes Authentisierungsmittel, erhalten sowohl der Versicherte als auch der Vertreter eine Benachrichtigung.
A_17655 - Komponente Autorisierung – Prüfung von Identitätsbestätigungen des Aktensystems
Die Komponente Autorisierung MUSS sicherstellen, dass Identitätsbestätigungen für Versicherte nur akzeptiert werden, wenn das zugehörige Signaturzertifikat zeitlich gültig ist, nicht gesperrt wurde und nach dem Zertifikatsprofil C.FD.SIG auf die Identität der Komponente Authentisierung Versicherter ausgestellt wurde.
[<=]
Dies kann durch eine aktuell gehaltene Konfiguration vertrauenswürdiger Zertifikate umgesetzt werden und ersetzt eine detaillierte Prüfung des Signaturzertifikats gemäß [gemSpec_TBAuth#A_15557], um die Prüfung solcher vom ePA-Aktensystem selbst ausgestellten Identitätsbestätigungen zu vereinfachen.
Eine Prüfung von Identitätsbestätigungen gemäß den Festlegungen für TBAuth bezieht sich auf Identitätsbestätigungen für Leistungserbringerinstitutionen und Kostenträger.
A_14270 - Komponente Autorisierung - Zugriff aus der Umgebung des Versicherten
Die Komponente Autorisierung MUSS Zugriffe auf Daten eines Versicherten aus der Personal Zone heraus verhindern, wenn das verwendete Gerät des Versicherten nicht in der Liste der bekannten/freigeschalteten Geräte vorhanden ist. [<=]
Bei Zugriffen aus der Umgebung des Versicherten wird ein Identitätsmerkmal des verwendeten Geräts abgefragt (DeviceID). Bei Zugriffen aus der Umgebung der Leistungserbringer erfolgt dies nicht, da hier als zugreifende Geräte ausschließlich zugelassene Konnektoren mit geprüfter Fachlogik zum Einsatz kommen. Ebenso wird keine Geräteidentität für den Zugang der Kostenträger über ihr jeweiliges Rechenzentrum geprüft, da auch hier ausschließlich zugelassene Produkttypen in einer kontrollierten Betriebsumgebung zum Einsatz kommen.
A_14402 - Komponente Autorisierung - Integritätsschutz für Autorisierungsbestätigungen
Die Komponente Autorisierung MUSS jede ausgestellte Autorisierungsbestätigung mit dem privaten Schlüssel der Ausstelleridentität C.FD.SIG in seiner fachlichen Rolle oid_epa_authz gemäß [gemSpec_OID] signieren. [<=]
A_14740 - Komponente Autorisierung - TLS-Identität innerhalb der TI
Die Komponente Autorisierung MUSS sich beim TLS-Verbindungsaufbau an den Schnittstellen innerhalb der TI mit der technischen Rolle oid_epa_authz der TLS-Identität C.FD.TLS-S authentisieren. [<=]
Hinweis zu A_14740: Die Komponente Autorisierung soll für seine serverseitigen TLS-Endpunkte in der TI die Server TLS-Identität C.FD.TLS-S verwenden.
A_14529 - Komponente Autorisierung - Absicherung gegenüber dem Internet
Die Komponente Autorisierung MUSS alle Operationsaufrufe der Schnittstellen I_Authorization_Insurant und I_Authorization_Management_Insurant auf Wohlgeformtheit und Zulässigkeit gemäß Protokoll SOAP 1.2 prüfen und bei Schema-, Semantik- oder Protokollverletzungen eine aufgerufene Operation mit dem HTTP-Statuscode 400 gemäß [RFC-7231] abbrechen. [<=]
Die Prüfung der eingehenden Nachrichten auf Syntax-, Semantik- und Protokollverletzungen soll insbesondere den Angriffstypen XML Injection, XPath Query Tampering und XML External Entity Injection entgegenwirken.
Im Fall der Sperrung der Signaturidentität der Komponente Autorisierung, darf diese nicht für die Ausstellung einer Autorisierungsbestätigung genutzt werden. Da diese Identität aus dem gleichen Vertrauensraum stammt wie die Signaturidentität der Identitätsbestätigung eines Authentisierungsdienstes im gleichen Aktensystem, dürfen in diesem Fall auch keine Identitätsbestätigungen des gleichen Vertrauensraums mehr akzeptiert werden.
A_16260 - Komponente Autorisierung - Periodische Prüfung Signaturidentität
Die Komponente Autorisierung MUSS den Sperrstatus der eigenen Signaturidentität C.FD.SIG mittels [gemSpec_PKI#TUC_PKI_018] periodisch (einmal täglich) prüfen:
Parameter | Belegung |
---|---|
Zertifikat | Signaturzertifikat C.FD.SIG der Komponente Autorisierung |
PolicyList | oid_fd_sig |
intendedKeyUsage | digitalSignature |
intendedExtendedKeyUsage | (leer) |
OCSP-Graceperiod | 60 Minuten |
Offline-Modus | nein |
Prüfmodus | OCSP |
Das Signaturzertifikat muss anhand der Zertifikatsprüfung für [mathematisch gültig UND zeitlich gültig UND online gültig] befunden werden. [<=]
A_16261 - Komponente Autorisierung - Keine Autorisierung bei gesperrter Signaturidentität
Die Komponente Autorisierung MUSS das Ausstellen einer Autorisierungsbestätigung mit dem Fehler INTERNAL_ERROR abbrechen, wenn das Signaturzertifikat der Komponente Autorisierung gemäß einer Statusprüfung nach [A_16260] nicht gültig ist. [<=]
A_16262 - Komponente Autorisierung - Keine Identitätsbestätigung bei gesperrter Signaturidentität
Die Komponente Autorisierung MUSS alle Identitätsbestätigungen aller Issuer des gleichen Vertrauensraums der Signaturidentität C.FD.SIG der Komponente Autorisierung mit dem Fehler INTERNAL_ERROR als ungültig ablehnen, wenn das Signaturzertifikat der Komponente Autorisierung gemäß einer Statusprüfung nach [A_16260] nicht gültig ist.
[<=]
A_22570 - Komponente Autorisierung – Kein Zugriff auf gesperrte Akten
Die Komponente Autorisierung MUSS eine aufgerufene Operation mit dem Standardfehler ACCESS_DENIED abbrechen, wenn die Akte gemäß [gemSpec_Aktensystem#A_22569] gesperrt wurde. [<=]
5.2 Verwendete Standards
Für die Sicherstellung der Interoperabilität wird auf verwendete Standards zurückgegriffen.
Durch die Verwendung des IHE-Frameworks (Integrating the Healthcare Enterprise) zum einheitlichen Datenaustausch im Gesundheitssystem ist die Verwendung von SAML zum Austausch von Authentisierungsinformationen notwendig.
Für die Übertragung von Nachrichten zwischen dem Fachmodul und den Teilkomponenten von ePA wird das vom W3C standardisierte Protokoll SOAP 1.2 in Verbindung mit HTTP verwendet.
A_13801 - Komponente Autorisierung - Verwendung von SAML 2.0
Die Komponente Autorisierung MUSS Authentisierungsbestätigung im Format SAML 2.0 Assertions [SAML2.0] unterstützen.
[<=]
A_13802 - Komponente Autorisierung - Ausstellung im Format SAML 2.0
Die Komponente Autorisierung MUSS Autorisierungsbestätigungen im Format SAML 2.0 Assertions [SAML2.0] ausstellen. [<=]
A_14969 - Komponente Autorisierung - Kodierung in UTF-8
Die Komponente Autorisierung MUSS bei der Erstellung von XML-Fragmenten das Encoding UTF-8 verwenden.
[<=]
A_17760 - Komponente Autorisierung - AuthenticationAssertion im SOAP-Header
Die Komponente Autorisierung MUSS die Identitätsbestätigungen eines Nutzers (AuthenticationAssertion) im Header eines eingehenden SOAP-Requests akzeptieren.
[<=]
A_17761 - Komponente Autorisierung - Verwendung des SAML Token Profile 1.1 für Web Services Security bei SAML 2.0 Assertions
Die Komponente Autorisierung MUSS die Anforderungen aus [WSS-SAML] umsetzen, wenn eine SAML 2.0 Assertion Teil einer SOAP 1.2-Eingangsnachricht ist.
[<=]
A_17762 - Komponente Autorisierung - Verwendung von SOAP Message Security 1.1
Die Komponente Autorisierung MUSS die Sicherheitsanforderungen aus SOAP Message Security 1.1 [WSS] für die Verarbeitung von SOAP 1.2-Nachrichten umsetzen.
[<=]
A_17763 - Komponente Autorisierung - Unterstützung von Profilen der Web Services Interoperability Organization (WS-I)
Die Komponente Autorisierung MUSS das WS-I Basic Profile V2.0 [WSIBP], das WS-I Basic Security Profile Version V1.1 [WSIBSP] sowie das WS-I Attachment Profile V1.0 [WSIAP] für die Kommunikation über Web Services berücksichtigen.
[<=]
5.3 Protokollierung
Die Anforderungen an die Protokollierung für die Komponente Autorisierung leiten sich aus dem Konzept der Protokollierung aus [gemSysL_ePA#2.5.5] ab.
A_14403-02 - Komponente Autorisierung - Verwaltungsprotokollierung Autorisierung
Die Komponente Autorisierung MUSS beim Aufruf einer der folgenden Operationen:
- I_Authorization_Insurant::getAuthorizationKey
- I_Authorization::getAuthorizationKey
- I_Authorization_Management::putAuthorizationKey
- I_Authorization_Management
- I_Authorization_Management_Insurant::putAuthorizationKey
- I_Authorization_Management_Insurant::deleteAuthorizationKey
- I_Authorization_Management_Insurant::replaceAuthorizationKey
- I_Authorization_Management_Insurant::getAuditEvents
- I_Authorization_Management_Insurant::getSignedAuditEvents
- I_Authorization_Management_Insurant::putNotificationInfo
- I_Authorization_Management_Insurant::getNotificationInfo
- I_Authorization_Management_Insurant::getAuthorizationList
- I_Authorization_Management_Insurant::startKeyChange
- I_Authorization_Management_Insurant::finishKeyChange
[<=]
A_20514 - Komponente Autorisierung - Verwaltungsprotokollierung Rollback Umschlüsselung
Die Komponente Autorisierung MUSS beim Rollback, der bei einer abgebrochenen Umschlüsselung erfolgt, einen Eintrag im Verwaltungsprotokoll für den Versicherten mit PHR-850 vornehmen. [<=]
A_15753-01 - Komponente Autorisierung - Verwaltungsprotokollierung E-Mail-Adresse ändern
Die Komponente Autorisierung MUSS das manuelle Ändern der Benachrichtigungsadresse (z.B. durch den Anbieter im Supportfall) im Verwaltungsprotokoll des Versicherten mit PHR-451 protokollieren. [<=]
A_14427-01 - Komponente Autorisierung - Verwaltungsprotokollierung Gerät hinzufügen
Die Komponente Autorisierung MUSS beim Hinzufügen eines Geräts in die Liste der registrierten Geräte einen Eintrag im Verwaltungsprotokoll für den Versicherten mit PHR-470 vornehmen. [<=]
A_14188-06 - Komponente Autorisierung - Umfang Verwaltungsprotokoll
Die Komponente Autorisierung MUSS dem Versicherten oder berechtigten Vertreter die Einträge des Verwaltungsprotokolls gemäß der Festlegung in [gemSpec_DM_ePA#A_14471-*] übergeben:
Protokoll-parameter |
Parameterwerte gemäß aufgerufener Operation |
|
---|---|---|
UserID |
Wert des AttributeStatements der übergebenen übergebenen AuthenticationAssertion in SAML:Assertion/SAML:AttributeStatement Variante a: Akteur des Aufrufs ist Versicherter bzw. Vertreter (unveränderbare Anteil der KVNR des aufrufenden Versicherten bzw. Vertreters) XPath-Ausdruck zur "Subject-ID" der im Operationsaufruf übergebenen Authentication Assertion: //*[local-name()='Assertion' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion']//*[local-name()='Attribute' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion'][@Name= 'urn:gematik:subject:subject-id']/*[local-name()='AttributeValue']/*[local-name()='InstanceIdentifier']/data(@extension) Hinweis: Bei Aufrufen der Fälle PHR-451 sowie PHR-470 (via Webseite) kann der Wert für die UserID nicht aus der AuthenticationAssertion bezogen werden, sondern es MUSS die actorID aus dem AuthorizationKey des Betroffenen (Versicherter oder Vertreter) entnommen werden. Variante b: Akteur des Aufrufs ist LEI, DiGA oder Kostenträger (Telematik-ID der aufrufenden LEI, DiGA oder Kostenträgers) XPath-Ausdruck zur "Organization-ID" der im Operationsaufruf übergebenen Authentication Assertion: //*[local-name()='Assertion' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion']//*[local-name()='Attribute' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion'][@Name= 'urn:gematik : subject:organization-id']/*[local-name()='AttributeValue']/*[local-name()='InstanceIdentifier']/data(@extension) |
|
UserName |
XPath-Ausdruck zur Behauptung "name" (beinhaltet commonName aus dem X.509-Zertifikat), der im Operationsaufruf übergebenen Authentication Assertion: //*[local-name()='Assertion' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion']//*[local-name()='Attribute' and namespace-uri() = 'urn:oasis:names:tc:SAML:2.0:assertion'][@Name='http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name']/*[local-name()='AttributeValue'] Hinweis: Bei Aufrufen der Fälle PHR-451 sowie PHR-470 (via Webseite) kann der Wert für den UserName nicht aus der AuthenticationAssertion bezogen werden sondern es MUSS der DisplayName aus dem AuthorizationKey des Betroffenen (Versicherter oder Vertreter) entnommen werden. |
|
DeviceID |
DeviceID-Parameter DeviceIdType::Displayname des Operationsaufrufs Hinweis: Bei Aufruf der Operationen der Schnittstelle I_Authorization_Management gibt es den Parameter nicht, DeviceID wird im Protokolleintrag demzufolge nicht belegt. |
|
ObjectDetail | Falls die Operation mit einem Fehler ASSERTION_INVALID aufgrund einer ungültigen übergebenen Authentication Assertion abbricht, MUSS ParticipantObjectDetail mit folgenden Wertepaaren (type/value) belegt werden: |
|
type | value | |
ErrorInformation | "fehlgeschlagene Authentifizierung des Zugreifenden" |
[<=]
A_14189 - Komponente Autorisierung - Protokollierung Schutz vor Manipulation
Die Komponente Autorisierung MUSS sicherstellen, dass die Verwaltungsprotokolldaten gegen Veränderung und unberechtigtes Löschen geschützt sind.
[<=]
5.4 Fehlerbehandlung in Schnittstellenoperationen
Bei Fehlern in der internen Verarbeitung oder fachlichen Fehlern in der Nutzung der von der Komponente Autorisierung bereitgestellten Schnittstellen werden Operationsaufrufe mit gematik-Fehlermeldungen gemäß der Definition in [gemSpec_OM] beantwortet. Die Fehlermeldungen werden als SOAP-Fault gemäß [TelematikError.xsd] strukturiert. Abweichend von den Festlegungen in [gemSpec_OM] sind zu meldende Fehler wie folgt mit Informationen zu füllen.
A_15068 - Komponente Autorisierung - Fehlername
Die Komponente Autorisierung MUSS in einer GERROR-Fehlermeldung gemäß [TelematikError.xsd] den in der Operationsdefinition festgelegten Fehlernamen Name im Feld tel:Error/tel:Trace/tel:EventID verwenden. [<=]
Die folgende Abbildung illustriert das Schema der GERROR-Struktur in TelematikError.xsd:
A_15069 - Komponente Autorisierung - Fehlertext
Die Komponente Autorisierung MUSS in einer GERROR-Fehlermeldung gemäß [TelematikError.xsd] den in der Operationsdefinition festgelegten Fehlerdetailtext Fehlertext im Feld tel:Error/tel:Trace/tel:ErrorText verwenden. [<=]
A_15101-06 - Komponente Autorisierung - Fehlernummer
Die Komponente Autorisierung MUSS in einer GERROR-Fehlermeldung gemäß [TelematikError.xsd] die folgenden Fehlercodes im Feld tel:Error/tel:Trace/tel:Code verwenden:
Name |
Fehlercode |
---|---|
TECHNICAL_ERROR |
7900 |
KEY_ERROR |
7910 |
SYNTAX_ERROR |
7930 |
ASSERTION_INVALID |
7940 |
DEVICE_UNKNOWN |
7950 |
ACCESS_DENIED |
7960 |
AUTHORIZATION_ERROR |
7970 |
REPRESENTATIVE_ PENDING |
7980 |
INTERNAL_ERROR | 7990 |
KEY_LOCKED | 8000 |
KEY_CORRUPT | 8010 |
ACTOR_UNKNOWN | 8020 |
DEVICE_LOCKED | 8030 |
[<=]
Die Operationsdefinitionen der Schnittstellen der Komponente Autorisierung beschränken die Liste möglicher Fehler auf fachliche Fehler. Daneben sind weitere, technische Gründe für Fehler anderer Art denkbar. Für diese kann der Hersteller der Komponente einen generischen Fehler für den Transport geeigneter Fehlerinformationen (z.B. für Supportzwecke) verwenden.
A_15102 - Komponente Autorisierung - Herstellerspezifische Fehlermeldungen
Die Komponente Autorisierung MUSS komponenteninterne und herstellerspezifische Fehlermeldungen in einer GERROR-Fehlermeldung gemäß [TelematikError.xsd] mit folgender Festlegung transportieren:
GERROR-Element |
Herstellerspezifisch zu belegen |
---|---|
tel:Error/tel:Trace/tel:Code |
Fester Wert: "7900" |
tel:Error/tel:Trace/tel:EventID |
Fester Wert: "TECHNICAL_ERROR" |
tel:Error/tel:Trace/tel:ErrorText |
Je Fehlerfall zufällig gewählte Fehlernummer |
[<=]
A_15249 - Komponente Autorisierung - Herstellerspezifische Fehlermeldungen Detailtext
Die Komponente Autorisierung MUSS Details zu herstellerspezifischen Fehlermeldungen ausschließlich in einem internen Fehlerprotokoll und zusammen mit der zum Zeitpunkt des Fehlers gewählten zufälligen Fehlernummer speichern. [<=]
Die herstellerspezifische und je Fehlerfall zufällig gewählte Fehlernummer dient der Kapselung von Implementierungs- und Fehlerbehebungsdetails und zum Auffinden der Fehlermeldungsdetails in einem internen Fehlerprotokoll im Supportfall.
A_23127 - http-Statuscode bei SOAP-Fehler ACCESS_DENIED
Falls in der Antwortnachricht an einen Client der SOAP-Fehler ACCESS_DENIED enthalten ist, MUSS die Komponente Autorisierung den http-Statuscode 400 senden.
[<=]
5.5 Nicht-Funktionale Anforderungen
5.5.1 Skalierbarkeit
Die für die Komponente Autorisierung relevanten Informationen zur Skalierbarkeit sind in [gemSpec_Perf] zu entnehmen.
5.5.2 Performance
Die durch die Komponente Autorisierung zu erfüllende Performance-Anforderung befinden sich in [gemSpec_Perf].
5.5.3 Mengengerüst
Das für die Komponente Autorisierung relevante Mengengerüst befindet sich in [gemSpec_Perf].
6 Funktionsmerkmale
Die Komponente Autorisierung realisiert die Funktionsmerkmale der kryptografischen Autorisierung und eine Geräteverwaltung. Das Funktionsmerkmal der Autorisierung wird über die Implementierung der Schnittstellen I_Authorization, I_Authorization_Management, I_Authorization_Insurant und I_Authorization_Management_Insurant realisiert.
Die Nutzung des Funktionsmerkmals der Geräteverwaltung durch den Versicherten erfolgt über einen separaten Verwaltungszugang abseits der I_Authorization*-Schnittstellen. Dieser Zugang ist für den Versicherten über das Internet erreichbar.
6.1 Übergreifende Festlegungen
Im Folgenden werden übergreifende Festlegungen formuliert, die in allen Operationen umgesetzt werden.
Wenn im Folgenden die KVNR als ActorID, OwnerKVNR oder subject-id referenziert wird ist immer der unveränderliche Anteil als 10-stellige Kennung gemeint.
A_14469 - Komponente Autorisierung - Identifizierung des Versicherten anhand einer AuthenticationAssertion
Die Komponente Autorisierung MUSS jeden Versicherten anhand des unveränderlichen Teils der KVNR als urn:gematik:subject:subject-id in SAML:Assertion/SAML:AttributeStatement/SAML:Attribute/@Name einer übergebenen, gültigen AuthenticationAssertion eindeutig identifizieren, wenn die subject-id mit der OwnerKVNR zu einem im Operationsaufruf angegebenen RecordIdentifier übereinstimmt.
[<=]
A_14499 - Komponente Autorisierung - Identifizierung einer Institution anhand einer AuthenticationAssertion
Die Komponente Autorisierung MUSS jede Leistungserbringerinstitution und jeden Kostenträger anhand der Telematik-ID als urn:gematik:subject:organization-id in SAML:Assertion/SAML:AttributeStatement/SAML:Attribute/@Name einer übergebenen, gültigen AuthenticationAssertion eindeutig identifizieren, wenn für diese ein AuthorizationKey zu einem im Operationsaufruf angegebenen RecordIdentifier existiert.
[<=]
A_14500 - Komponente Autorisierung - Identifizierung eines Vertreters anhand einer AuthenticationAssertion
Die Komponente Autorisierung MUSS einen berechtigten Vertreter anhand seiner KVNR als urn:gematik:subject:subject-id in SAML:Assertion/SAML:AttributeStatement/SAML:Attribute/@Name einer übergebenen, gültigen AuthenticationAssertion eindeutig identifizieren, wenn die subject-id ungleich der OwnerKVNR zu einem im Operationsaufruf angegebenen RecordIdentifier ist und für die KVNR der AuthenticationAssertion ein AuthorizationKey zu der im Operationsaufruf angegebenen RecordIdentifier existiert.
[<=]
A_14434 - Komponente Autorisierung - Prüfung der Schnittstellenparameter
Die Komponente Autorisierung MUSS in jeder Operation alle übergebenen Eingangsparameter auf Konformität zum Schema AuthorizationService.xsd prüfen und bei Nichtkonformität die jeweilige Operation mit dem Fehler TECHNICAL_ERROR gemäß den Festlegungen zur abbrechen.
[<=]
A_14369-02 - Komponente Autorisierung - Prüfung des Geräts des Versicherten
Die Komponente Autorisierung MUSS in allen Operationen der Schnittstellen I_Authorization_Insurant und I_Authorization_Management_Insurant anhand des Wertes DeviceID::Device prüfen, ob das vom Nutzer verwendete Gerät in der Geräteliste des AuthorizationKeys des Nutzers bekannt/freigeschaltet ist und andernfalls die Operation mit dem Fehler DEVICE_UNKNOWN abbrechen, in dessen SOAP-Error in tel:Error/tel:Trace/tel:ErrorText eine gemäß generierte phr:DeviceID::Device einfügen und den Freischaltprozess neuer Geräte auslösen. Wenn das Gerät bekannt und gesperrt ist, MUSS die Operation mit dem Fehler DEVICE_LOCKED abgebrochen werden. Eine neue Geräte-ID DARF in diesem Fall NICHT generiert und an das FdV übergeben werden. [<=]
Greift ein Nutzer mit einem Gerät erstmalig auf die in A_14369-* genannten Schnittstellen zu, sind die Elemente phr:DeviceID@ und phr:DeviceID::Device in den aufgerufenen Operationen ggfs. leer bzw. enthalten eine Zeichenkette der Länge 0 ("").
A_14634 - Komponente Autorisierung - Prüfung auf vorhandenen AuthorizationKey
Die Komponente Autorisierung MUSS eine aufgerufene Operationen mit dem Standardfehler KEY_ERROR abbrechen, wenn es zu fachlichen Fehlern in Lese- oder Schreiboperationen eines AuthorizationKey kommt oder dieser für einen in der ActorID benannten Nutzer in der KeyChain eines benannten RecordIdentifier nicht vorhanden ist. [<=]
A_14768 - Komponente Autorisierung - Prüfung auf Berechtigung
Die Komponente Autorisierung MUSS eine aufgerufene Operation mit dem Standardfehler ACCESS_DENIED abbrechen, wenn ein über die subject-id bzw. organization-id einer AuthenticationAssertion identifizierter Nutzer eine Operation auf einem im RecordIdentifier benannten Datensatz aufruft, für den kein AuthorizationKey hinterlegt und er nicht der Eigentümer ist, d.h. OwnerKVNR != subject-id bzw. organization-id und es existiert kein AuthorizationKey mit ActorID == subject-id bzw. organization-id. [<=]
Der Fehler ACCESS_DENIED wird ebenso erwartet, wenn im jeweiligen Aufrufparameter ein RecordIdentifier mit einer falschen HomeCommunityID übergeben wird. Eine leere HomeCommunityID führt hingegen nicht zu einem Fehler.
A_16487 - Komponente Autorisierung - Prüfung auf Tokenherkunft
Die Komponente Autorisierung MUSS jeden Aufruf an den Schnittstellen I_Authorization_Insurant und I_Authorization_Management_Insurant mit dem Fehler ACCESS_DENIED ablehnen, der mittels einer AuthenticationAssertion erfolgt, die nicht aus dem Vertrauensraum der Komponente Autorisierung erfolgt. [<=]
A_17102 - Komponente Autorisierung - Maximale Berechtigungsstufe für Konto-Eigentümer
Die Komponente Autorisierung MUSS sicherstellen, dass der AuthorizationType am hinterlegten AuthorizationKey des Versicherten immer "DOCUMENT_AUTHORIZATION" lautet.
[<=]
6.2 Schnittstellen der Komponente Autorisierung
Das Funktionsmerkmal 'Autorisierung' der Komponente Autorisierung wird durch die in der folgenden Tabelle beschriebenen Schnittstellen mit den jeweiligen Operationen umgesetzt.
Schnittstellen der Komponente Autorisierung |
|
---|---|
I_Authorization |
|
getAuthorizationKey |
Mit der Operation getAuthorizationKey wird das für einen Berechtigten verschlüsselte Schlüsselmaterial für ein konkretes Aktenkonto eines Versicherten in der Leistungserbringer-Umgebung und durch den Kostenträger heruntergeladen. |
I_Authorization_Management |
|
putAuthorizationKey |
Mit der Operation putAuthorizationKey wird das für einen Berechtigten verschlüsselte Schlüsselmaterial für ein konkretes Aktenkonto eines Versicherten im Aktensystem ePA gespeichert. |
checkRecordExists |
Mit der Operation checkRecordExists kann ein anderer Anbieter bei einem Anbieter einer Aktenlösung den Status und die Existenz eines Aktenkontos über die KVNR eines Versicherten abfragen. |
getAuthorizationList |
Die Operation getAuthorizationList liefert die Liste aller OwnerKVNRs des Aktensystems, in denen für die anfragende Institution ein AuthorizationKey hinterlegt ist. (horizontale Abfrage) |
getAuthorizationState | Die Operation getAuthorizationState liefert für das Aktenkonto der im Aufruf übergebenen KVNR, ob Berechtigungen für die anfragende Identität vorliegen und gibt bei existierender Berechtigung das Tupel Fachanwendung und das Endedatum der Berechtigung zurück. |
I_Authorization_Insurant |
|
getAuthorizationKey |
Mit der Operation getAuthorizationKey wird das für einen Berechtigten verschlüsselte Schlüsselmaterial (kryptografische Berechtigung) für ein konkretes Aktenkonto eines Versicherten in der Personal-Zone heruntergeladen. |
I_Authorization_Management_Insurant |
|
putAuthorizationKey |
Mit der Operation putAuthorizationKey wird das für einen Berechtigten verschlüsselte Schlüsselmaterial AuthorizationKey für ein konkretes Aktenkonto eines Versicherten im ePA-Aktensystem gespeichert. |
deleteAuthorizationKey |
Mit der Operation deleteAuthorizationKey kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter die kryptografische Berechtigung für einen Nutzer innerhalb seines Aktenkontos löschen. |
replaceAuthorizationKey |
Mit der Operation replaceAuthorizationKey kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter das im Aktenkonto für einen benannten Nutzer hinterlegte kryptografische Schlüsselmaterial ersetzen. Die Operation kann insbesondere dazu benutzt werden, den Berechtigungszeitraum für einen AuthorizationKey anzupassen. |
getAuditEvents |
Mit der Operation getAuditEvents kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter das Verwaltungsprotokoll der Komponente Autorisierung auslesen. |
getSignedAuditEvents | Die Operation getSignedAuditEvents liefert für einen authentifizierten Versicherten bzw. einen berechtigten Vertreter eine signierte Liste (SignedAuditEventList) der Verwaltungsprotokolle des Versicherten der Komponente Autorisierung. |
putNotificationInfo |
Mit der Operation putNotificationInfo kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter die eigene, im Benachrichtigungskanal hinterlegten Daten aktualisieren. |
getNotificationInfo | Mit der Operation getNotificationInfo kann ein authentifizierter Versicherter Email-Adressen abfragen, die für zugriffsberechtige Versicherten bzw. ihre Vertreter im Benachrichtigungskanal seines Aktenkontos hinterlegt sind. |
getKtrTelematikID | Die Operation liefert die TelematikID des Kostenträgers, der das Kontos im Aktensystems anbietet. |
getRecordProviderList | Die Operation liefert eine Liste der Internet-FQDN aller ePA-Aktensysteme. |
getAuthorizationList |
Die Operation getAuthorizationList liefert die Liste aller AuthorizationKeys zu einer angefragten Akte eines Versicherten. (vertikale Abfrage) |
startKeyChange | Mit dieser Operation kann der Versicherte den Prozess der Umschlüsselung an der Komponente Autorisierung initiieren und die Autorisierungskomponente bis zur Beendigung der Verarbeitung für andere Aktivitäten sperren. |
putForReplacement | Mit dieser Operation übergibt der Versicherte die für die Umschlüsselung an der Komponente Autorisierung erforderlichen verschlüsselten AuthorizationKeys, damit diese die bisher verwendeten AuthorizationKeys ersetzen können. |
finishKeyChange | Mit dieser Operation beendet der Versicherte die Umschlüsselung an der Komponente Autorisierung und hebt die Sperre der Autorisierungskomponente für anderweitige Autorisierungsaktivitäten auf. |
A_23776 - Komponente Autorisierung - Keine Freischaltprozesse bei DeviceID "AUTHORIZE_REPRESENTATIVE"
Die Komponente Autorisierung MUSS sicherstellen, dass die Freischaltprozesse zur Geräteregistrierung sowie zur Vertretereinrichtung und -Löschung nicht durch die Autorisierung gestartet werden, falls beim Aufruf der Operationen I_Authorization_Insurant::getAuthorizationKey, I_Authorization_Management_Insurant::putAuthorizationKey oder I_Authorization_Management_Insurant::deleteAuthorizationKey für den Parameter DeviceID der Wert AUTHORIZE_REPRESENTATIVE verwendet wird. [<=]
A_23783 - Komponente Autorisierung - DeviceID "AUTHORIZE_REPRESENTATIVE" ausschließlich mit eGK (nicht al.vi)
Die Komponente Autorisierung MUSS sicherstellen, dass ein Aufruf der Operationen I_Authorization_Insurant::getAuthorizationKey, I_Authorization_Management_Insurant::putAuthorizationKey oder I_Authorization_Management_Insurant::deleteAuthorizationKey mit dem Parameter DeviceID=AUTHORIZE_REPRESENTATIVE ausschließlich mit einer AuthenticationAssertion möglich ist, die mittels eGK erzeugt wurde und die Operation andernfalls mit dem Fehler ACCESS_DENIED abbrechen. [<=]
6.2.1 Schnittstelle I_Authorization
Diese Schnittstelle setzt die in [gemSysL_ePA#4.2.2.2] definierte Schnittstelle I_Authorization technisch um.
Die Schnittstelle stellt dem Fachmodul eine Operation zum Bezug eines Autorisierungs-Tokens für bereits authentifizierte Leistungserbringer und Kostenträger bereit, um die ePA-Komponente Dokumentenverwaltung verwenden zu können.
6.2.1.1 Operationsdefinition I_Authorization::getAuthorizationKey
A_14045-01 - Komponente Autorisierung - I_Authorization::getAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization::getAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization::getAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation wird für einen authentifizierten Nutzer eine Autorisierung des Zugriffs auf Daten eines Versicherten geprüft. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der kryptografischen Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthorizationAssertion |
Die AuthorizationAssertion ist eine signierte Autorisierungsbestätigung für einen Nutzer und enthält Informationen über die Art und den Umfang der in der Komponente Autorisierung hinterlegten Autorisierung. |
SAML Assertion base64-codiert |
- |
AuthorizationKey |
Die kryptografische Autorisierung eines Nutzers. |
AuthorizationKeyType |
ja |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
|
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Kein Datensatz für diesen Nutzer für den benannten RecordIdentifier vorhanden. |
|
REPRESENTATIVE_PENDING |
Vertretungsberechtigung erfordert Freischaltung |
Die Vertretung kann erst wahrgenommen werden, wenn diese über den Freischaltprozess autorisiert wurde. |
|
AUTHORIZATION_ERROR |
Autorisierung nicht zulässig |
Die zu hinterlegte Berechtigtenrolle ist nicht zulässig. |
Sollte bei der Autorisierung für einen Versicherten kein zugehöriger Datensatz gefunden werden, darf dies nicht mit einer technischen Fehlermeldung behandelt werden. Hierfür MUSS eine sprechende Information (fachliches Ereignis) geliefert werden.
[<=]
6.2.1.2 Umsetzung I_Authorization::getAuthorizationKey
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization::getAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_17790 - Komponente Autorisierung LE - Vertretung wahrnehmen Freischaltprüfung
Die Komponente Autorisierung MUSS bei Wahrnehmung einer Vertretung für einen Versicherten mittels I_Authorization::getAuthorizationKey (subject-id der AuthenticationAssertion != OwnerKVNR) vor der Herausgabe prüfen, ob ein wartender Vertreter-Freischaltprozess für [OwnerKVNR des benannten RecordIdentifiers, subject-id als ActorID] aktiv ist und falls ja, die Operation mit dem Fehler REPRESENTATIVE_PENDING abbrechen. [<=]
A_13917 - Komponente Autorisierung LE - Ausstellen einer Autorisierungsbestätigung
Die Komponente Autorisierung MUSS in der Operation I_Authorization::getAuthorizationKey bei Vorhandensein eines AuthorizationKey in der KeyChain des benannten RecordIdentifier für den mittels AuthenticationAssertion authentifizierten Nutzer (subject-ID bzw. organization-id == ActorID) eine AuthorizationAssertion gemäß der Festlegung in [A_14491-*] ausstellen und diese in der Ausgangsnachricht der Operation zurückgeben.
Der Wert für [AuthorizationType] in der AuthorizationAssertion MUSS dem Wert des hinterlegten AuthorizationKey genau dieses authentifizierten Nutzers entsprechen. [<=]
A_17662 - Komponente Autorisierung LE - Codierung der Autorisierungsbestätigung
Die Komponente Autorisierung MUSS die erstellte und signierte Autorisierungsbestätigung in der Response der Operation I_Authorization::getAuthorizationKey Base64-codiert zurückgeben.
[<=]
A_13692 - Komponente Autorisierung LE - Herausgabe kryptografischer Berechtigung des Nutzers
Die Komponente Autorisierung MUSS in der Operation I_Authorization::getAuthorizationKey bei Vorhandensein eines AuthorizationKey in der KeyChain des benannten RecordIdentifier für den mittels AuthenticationAssertion authentifizierten Nutzer (subject-ID bzw. organization-id == ActorID) den AuthorizationKey in der Ausgangsnachricht der Operation zurückgeben. [<=]
A_14643 - Komponente Autorisierung LE - Aktivierung bei Kontoeröffnung in der Umgebung der Leistungserbringer
Die Komponente Autorisierung MUSS dem authentifizierten Versicherten als Eigentümer der Akte (subject-ID == OwnerKVNR für den benannten RecordIdentifier) eine Autorisierungsbestätigung mit AuthorizationType = ACCOUNT_AUTHORIZATION gemäß [A_14491-*] ausstellen, wenn für seine OwnerKVNR kein Schlüsseldatensatz AuthorizationKey in der KeyChain vorhanden ist.
[<=]
A_15618-01 - Komponente Autorisierung LE - keine Autorisierung bei suspendiertem Konto
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization::getAuthorizationKey mit der Fehlermeldung ACCESS_DENIED abbrechen, wenn der RecordState der KeyChain des benannten RecordIdentifier den Zustand SUSPENDED oder START_MIGRATION aufweist.
[<=]
A_21741 - Komponente Autorisierung LE - keine Autorisierung vor Beendigung der Datenübernahme
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization::getAuthorizationKey mit der Fehlermeldung ACCESS_DENIED abbrechen, wenn der RecordState der KeyChain des benannten RecordIdentifier den Zustand REGISTERED_FOR_MIGRATION, DL_IN_PROGRESS oder READY_FOR_IMPORT aufweist. [<=]
6.2.2 Schnittstelle I_Authorization_Insurant
Diese Schnittstelle setzt die in [gemSysL_ePA] definierte Schnittstelle I_Authorization_Insurant technisch um.
Die Schnittstelle I_Authorization_Insurant stellt Operationen zur Autorisierungsprüfung auf das Vorhandensein von kryptografischem Schlüsselmaterial für einen Nutzer des Aktenkontos eines Versicherten bereit. Sie stellt dem Frontend des Versicherten eine Schnittstelle zum Abruf eines Autorisierungs-Tokens für bereits authentifizierte Versicherte bereit.
6.2.2.1 Operationsdefinition I_Authorization_Insurant::getAuthorizationKey
A_14042-01 - Komponente Autorisierung - I_Authorization_Insurant::getAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization_Insurant::getAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Insurant::getAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation wird für einen authentifizierten Nutzer eine Autorisierung des Zugriffs auf Daten eines Versicherten geprüft. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Geräts. |
DeviceIdType |
- |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthorizationAssertion |
Die AuthorizationAssertion ist eine signierte Autorisierungsbestätigung für einen Nutzer und enthält Informationen über die Art und den Umfang der in der Komponente Autorisierung hinterlegten Autorisierung. |
SAML Assertion mit AuthorizationDecision Statement base 64-codiert |
- |
AuthorizationKey |
Die kryptografische Autorisierung eines Nutzers. |
AuthorizationKeyType |
ja |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
|
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Kein Datensatz für diesen Nutzer für den benannten RecordIdentifier vorhanden. |
|
DEVICE_UNKOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
REPRESENTATIVE_PENDING |
Vertretungsberechtigung erfordert Freischaltung |
Die Vertretung kann erst wahrgenommen werden, wenn diese über den Freischaltprozess autorisiert wurde. |
Sollte bei der Autorisierung für einen Versicherten kein zugehöriger Datensatz gefunden werden, darf dies nicht mit einer technischen Fehlermeldung behandelt werden. Hierfür MUSS eine sprechende Information (fachliches Ereignis) geliefert werden.
[<=]
Der Wert DeviceID = AUTHORIZE_REPRESENTATIVE zeigt an, dass beim Anwendungsfall Einrichten einer Vertreterberechtigung am FdV des Vertreters der zu Vertretende ohne registriertes Gerät und ohne EMail-Freischaltung des Vertreters durchgeführt wird.
6.2.2.2 Umsetzung I_Authorization_Insurant::getAuthorizationKey
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Insurant::getAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_22232 - Komponente Autorisierung Vers. - Fehler REPRESENTATIVE_PENDING
Die Komponente Autorisierung MUSS, solange der Vertreter noch nicht freigeschaltet ist, die Operation mit dem Fehler REPRESENTATIVE_PENDING abbrechen. (Siehe auch A_17674, A_17789) [<=]
A_17789 - Komponente Autorisierung Vers. - Vertretung wahrnehmen Freischaltprüfung
Die Komponente Autorisierung MUSS bei Wahrnehmung einer Vertretung für einen Versicherten mittels I_Authorization_Insurant::getAuthorizationKey (subject-id der AuthenticationAssertion != OwnerKVNR) vor der Herausgabe prüfen, ob ein wartender Vertreter-Freischaltprozess für [OwnerKVNR des benannten RecordIdentifiers, subject-id als ActorID] aktiv ist und falls ja, die Operation mit dem Fehler REPRESENTATIVE_PENDING abbrechen.
[<=]
A_14436 - Komponente Autorisierung Vers. - Ausstellen einer Autorisierungsbestätigung
Die Komponente Autorisierung MUSS in der Operation I_Authorization_Insurant::getAuthorizationKey bei Vorhandensein eines AuthorizationKey in der KeyChain des benannten RecordIdentifier für den mittels AuthenticationAssertion authentifizierten Nutzer [subject-id der AuthenticationAssertion == ActorID des vorhandenen AuthorizationKey] eine AuthorizationAssertion gemäß der Festlegung in [A_14491-*] ausstellen und diese in der Ausgangsnachricht der Operation zurückgeben.
Der Wert für [AuthorizationType] in der AuthorizationAssertion MUSS dem Wert des hinterlegten AuthorizationKey genau dieses authentifizierten Nutzers entsprechen. [<=]
A_17663 - Komponente Autorisierung Vers. - Codierung der Autorisierungsbestätigung
Die Komponente Autorisierung MUSS die erstellte und signierte Autorisierungsbestätigung in der Response der Operation I_Authorization_Insurant::getAuthorizationKey Base64-codiert zurückgeben.
[<=]
A_14439 - Komponente Autorisierung Vers. - Herausgabe kryptografischer Berechtigung des Nutzers
Die Komponente Autorisierung MUSS in der Operation I_Authorization_Insurant::getAuthorizationKey bei Vorhandensein eines AuthorizationKey in der KeyChain des benannten RecordIdentifier für den mittels AuthenticationAssertion authentifizierten Versicherten oder Vertreter (subject-id == ActorID) den AuthorizationKey des authentifizierten Nutzers in der Ausgangsnachricht der Operation zurückgeben.
[<=]
A_14644 - Komponente Autorisierung Vers. - Aktivierung bei Kontoeröffnung in der Umgebung des Versicherten
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Insurant::getAuthorizationKey dem authentifizierten Versicherten als Eigentümer der Akte (subject-ID == OwnerKVNR für den benannten RecordIdentifier) eine Autorisierungsbestätigung mit AuthorizationType = ACCOUNT_AUTHORIZATION gemäß [A_14491-*] ausstellen, wenn für seine OwnerKVNR kein Schlüsseldatensatz AuthorizationKey in der KeyChain vorhanden ist.
[<=]
A_21742-02 - Komponente Autorisierung Vers. - ACCOUNT_AUTHORIZATION bei Datenübernahme
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Insurant::getAuthorizationKey in der KeyChain des benannten RecordIdentifier für den mittels AuthenticationAssertion authentifizierten Nutzer (subject-id = OwnerKVNR) eine Autorisierungsbestätigung mit AuthorizationType = ACCOUNT_AUTHORIZATION gemäß [A_14491-*] ausstellen, wenn der RecordState der KeyChain des benannten RecordIdentifier den Zustand SUSPENDED, START_MIGRATION, REGISTERED_FOR_MIGRATION, DL_IN_PROGRESS oder READY_FOR_IMPORT aufweist. Sofern der benannte Nutzer nicht der Versicherte selbst ist (subject-id != OwnerKVNR) , MUSS die Komponente Autorisierung den Aufruf mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
A_21810-01 - Komponente Autorisierung Vers. - Zulässige Operationen bei START_MIGRATION und SUSPENDED
Die Komponente Autorisierung MUSS bei einer AuthenticationAssertion des authentifizierten Nutzers mit subject-id = OwnerKVNR und wenn der RecordState der KeyChain des benannten RecordIdentifier den Zustand SUSPENDED oder START_MIGRATION aufweist nur den Aufruf der Operationen I_Authorization_Insurant::getAuthorizationKey, I_Authorization_Management_Insurant::getNotificationInfo und I_Authorization_Management_Insurant::getAuthorizationList zulassen. Ist der Nutzer nicht der Versicherte (subject-id != OwnerKVNR) oder werden andere Operationen als die aufgeführten aufgerufen, MUSS der entsprechende Aufruf mit der Fehlermeldung ACCESS_DENIED beendet werden. [<=]
A_23784 - Komponente Autorisierung - Erstellen Autorisierungsbestätigung mit Type AUTHORIZE_REPRESENTATIVE
Die Komponente Autorisierung MUSS sicherstellen, dass bei einem Aufruf der Operation I_Authorization_Insurant::getAuthorizationKey mit dem Parameter DeviceID=AUTHORIZE_REPRESENTATIVE ausschließlich eine AuthorizationAssertion mit dem AuthorizationType AUTHORIZE_REPRESENTATIVE zurückgegeben wird. [<=]
6.2.3 Schnittstelle I_Authorization_Management
Diese Schnittstelle setzt die in [gemSysL_ePA] definierte Schnittstelle I_Authorization_Management technisch um.
Die Schnittstelle I_Authorization_Management dient dazu, kryptografische Berechtigungen im Autorisierungsdienst eines Aktensystems zu verwalten.
6.2.3.1 Operationsdefinition I_Authorization_Management::putAuthorizationKey
A_14180-01 - Komponente Autorisierung - I_Authorization_Management::putAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management::putAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management::putAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit der Operation wird das für einen Berechtigten verschlüsselte Schlüsselmaterial für ein konkretes Aktenkonto eines Versicherten im ePA-Aktensystem gespeichert. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
AuthorizationKey |
Die kryptografische Autorisierung eines Nutzers, bestehend aus Listen von verschlüsselten Schlüsseln. Details zur Struktur finden sich im Kapitel 7 zum Informationsmodell. |
AuthorizationKeyType |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
[<=]
6.2.3.2 Umsetzung I_Authorization_Management::putAuthorizationKey
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management::putAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14212 - Komponente Autorisierung LE - Speicherung kryptografische Berechtigung des Nutzers
Die Komponente Autorisierung MUSS in der Operation I_Authorization_Management::putAuthorizationKey den im Eingangsparameter übergebenen AuthorizationKey als AuthorizationKey der KeyChain des im Eingangsparameter benannten RecordIdentifier speichern bzw. ersetzen, falls für die im AuthorizationKey benannte ActorID bereits ein AuthorizationKey in der KeyChain des benannten RecordIdentifier existiert. [<=]
A_14441 - Komponente Autorisierung LE - Berechtigungsprüfung Schlüsselhinterlegung
Die Komponente Autorisierung MUSS beim Aufruf der Operation I_Authorization_Management::putAuthorizationKey anhand der KVNR der AuthenticationAssertion und des RecordIdentifier prüfen, ob für den aufrufenden Nutzer ein AuthorizationKey mit ActorID == subject-ID hinterlegt ist, und falls nicht, die Operation mit dem Fehler ACCESS_DENIED abbrechen. [<=]
Mit dieser Prüfung wird sichergestellt, dass nur Versicherte bzw. Vertreter einen Schlüssel für einen Berechtigten hinterlegen können. Eine Berechtigung wird nicht von einer Leistungserbringerinstitution oder von einem Kostenträger hinterlegt.
A_14587 - Komponente Autorisierung LE - Initiale Schlüsselhinterlegung Kontoeröffnung
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management::putAuthorizationKey mit dem Fehler ACCESS_DENIED abbrechen, sofern für den Eigentümer der Akte noch kein AuthorizationKey vorhanden ist und der zu speichernde AuthorizationKey des Aufrufparameters für einen anderen Nutzer als den Eigentümer des RecordIdentifier (ActorID != OwnerKVNR) gespeichert werden soll. [<=]
Mit dieser Anforderung soll verhindert werden, dass die Akte genutzt wird, bevor das Schlüsselmaterial für den Versicherten erzeugt und hinterlegt wurde. Die benannte Konstellation liegt im Rahmen der Kontoeröffnung und bei einem Aktenumzug vor. Das Schlüsselmaterial für den Versicherten wird im Schritt der Kontoaktivierung erzeugt, welcher auf den Schritt der Kontoinitialisierung folgt.
A_14737-01 - Komponente Autorisierung LE - Initiale Schlüsselhinterlegung für den Versicherten
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::putAuthorizationKey durch den Versicherten (subject-id (KVNR) der AuthenticationAssertion == OwnerKVNR) im Rahmen der initialen Schlüsselhinterlegung während der Kontoaktivierung das validTo-Datum des übergebenen AuthorizationKey vor der Speicherung mit einem technischen Datum gleichbedeutend mit "unendlich" (31.12.9999) ersetzen. [<=]
A_21880 - Komponente Autorisierung LE - Keine Berechtigung von Vertretern bei I_Authorization_Management::putAuthorizationKey
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::putAuthorizationKey prüfen, ob die im AuthorizationKey benannte ActorID == OwnerKVNR oder eine TelematikID ist und falls nicht, die Operation mit dem Fehler ACCESS_DENIED abbrechen. [<=]
A_14999 - Komponente Autorisierung LE - Zustandswechsel bei Schlüsselhinterlegung für den Versicherten
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::putAuthorizationKey durch den Versicherten (subject-id (KVNR) der AuthenticationAssertion == OwnerKVNR) bei erfolgreichem Abschluss der initialen Schlüsselhinterlegung für den Versicherten während der Kontoaktivierung den Zustand RecordState der KeyChain des Versicherten von REGISTERED auf den Wert ACTIVATED setzen.
[<=]
A_21869 - Komponente Autorisierung LE - Keine Ausführung von I_Authorization_Management::putAuthorizationKey bei SUSPENDED oder START_MIGRATION
Im Zustand RecordState der KeyChain des Versicherten von SUSPENDED oder START_MIGRATION MUSS die Operation I_Authorization_Management::putAuthorizationKey mit der Fehlermeldung ACCESS_DENIED abgebrochen werden. [<=]
6.2.3.3 Operationsdefinition I_Authorization_Management::checkRecordExists
A_14965-01 - Komponente Autorisierung - I_Authorization_Management::checkRecordExists
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management::checkRecordExists gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management::checkRecordExists |
||
---|---|---|---|
Beschreibung |
Die Operation liefert den Status eines Aktenkontos eines via KVNR benannten Versicherten. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
KVNR |
Der unveränderliche Teil der Krankenversicherungsnummer eines gesetzlich Versicherten |
String |
- |
AllMandators |
|
boolean | ja |
Ausgangsparameter |
|||
Name | Beschreibung | Typ | opt |
RecordState |
Statuswert zur Existenz eines Aktenkontos in der Komponente Autorisierung zu einer angefragten KVNR |
RecordStateType |
- |
HomeCommunityId | HomeCommunityId des Aktensystem-Mandanten, in dem eine Akte zur KVNR vorliegt, die sich im Zustand REGISTERED, ACTIVATED oder DISMISSED befindet. Wird bei keinem Aktensystem-Mandanten eine solche Akte gefunden, wird keine HomeCommunityId zurück gegeben. | HomeCommunityIdType | ja |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
[<=]
6.2.3.4 Umsetzung I_Authorization_Management::checkRecordExists
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management::checkRecordExists. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14966-01 - Komponente Autorisierung LE - Abfrage Aktenexistenz bei AllMandators=false oder leer
Falls der Parameter AllMandators=false gesetzt ist oder fehlt, MUSS die Komponente Autorisierung bei Aufruf der Operation I_Authorization_Management::checkRecordExists den Wert RecordState des Datensatzes KeyChain eines Konto zurückliefern, wenn zu einer angefragten KVNR ein Datensatz KeyChain mit OwnerKVNR == KVNR existiert und andernfalls den Statuswert UNKNOWN zurückgeben. Bei fehlendem Parameter AllMandators oder bei RecordState mit dem Wert UNKNOWN entfällt der Rückgabeparameter HomeCommunityId. [<=]
A_22465 - Komponente Autorisierung – Abfrage Aktenexistenz bei AllMandators=true
Falls der Parameter AllMandators=true gesetzt ist MUSS die Operation I_Authorization_Management:: checkRecordExists über alle Aktensystem-Mandanten zur angefragten KVNR alle Aktenkonten ermitteln (Datensatz KeyChain mit OwnerKVNR == KVNR existiert). Zur Konsolidierung des Auswertungsergebnisses MUSS für alle ermittelten Aktenkonten der Status REGISTERED, ACTIVATED, DISMISSED gesucht werden. Sobald der erste dieser Status gefunden wird, MUSS der gefundene Status des Aktenkontos und die HomeCommunityId des betreffenden Aktensystem-Mandanten als Response in den Ausgangsparametern RecordState und HomeCommunityId zurückgegeben werden. Andernfalls wird der RecordState mit dem Wert UNKNOWN zurückgegeben und der Rückgabeparameter HomeCommunityId entfällt. [<=]
Für die Abarbeitung der Operation checkRecordExists mit Parameter AllMandators=true kann das Aktensystem für die eigenen Aktensystem-Mandanten checkRecordExists mit Parameter AllMandators=false nutzen.
6.2.3.5 Operationsdefinition I_Authorization_Management::getAuthorizationList
A_17110-01 - Komponente Autorisierung - I_Authorization_Management::getAuthorizationList
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management::getAuthorizationList gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management::getAuthorizationList |
||
---|---|---|---|
Beschreibung |
Die Operation liefert eine Liste der OwnerKVNRs von Konten im Aktensystem, in denen die anfragende Identität berechtigt ist. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthorizationInfoList |
Liste der OwnerKVNRs von Konten im Aktensystem, in denen für die Telematik-ID der anfragenden Leistungserbringerinstitution bzw. der Kostenträger ein AuthorizationKey aktuell vorhanden ist. |
AuthorizationInfo[0..*] |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig. |
z.B. abgelaufen oder Misstrauen in Signatur des Tokens |
|
TECHNICAL_ERROR |
Zufallszahl |
[<=]
6.2.3.6 Umsetzung I_Authorization_Management::getAuthorizationList
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management::getAuthorizationList. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_17111 - Komponente Autorisierung LE - Abfrage Berechtigungsliste
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::getAuthorizationList die Liste aller OwnerKVNRs ermitteln, in deren KeyChain für die organization-id der gültigen AuthenticationAssertion ein AuthorizationKey vorhanden ist (organization-id == ActorID) und diese Liste als AuthorizationInformation [OwnerKVNR + validTo am jeweiligen AuthorizationKey der ActorID je KeyChain] zurückgeben.
[<=]
A_19007 - Komponente Autorisierung - Einschränkung der Häufigkeit der Abfrage getAuthorizationList
Das Aktensystem KANN getAuthorizationList-Anfragen mit dem Fehler TOO_MANY_REQUESTS zurückweisen, wenn sie von derselben LEI (bei Gleichheit der organization-id) innerhalb eines Zeitraumes von 10 Minuten wiederholt gestellt werden.
[<=]
A_22382 - Komponente Autorisierung LE - Erstellung der Berechtigungsliste nur bei ACTIVATED und DISMISSED
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::getAuthorizationList ausschließlich Aktenkonten berücksichtigen, die sich im Zustand ACTIVATED oder DISMISSED befinden. [<=]
6.2.3.7 Operationsdefinition I_Authorization_Management::getAuthorizationState
A_22447-01 - Komponente Autorisierung - I_Authorization_Management::getAuthorizationState
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management::getAuthorizationState gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management::getAuthorizationState |
||
---|---|---|---|
Beschreibung |
Die Operation prüft für das Aktenkonto der im Aufruf übergebenen KVNR, ob eine Berechtigung für die anfragende Identität vorliegt und gibt bei existierender Berechtigung das Endedatum der Berechtigung zurück. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
UserAgents | Liste der UserAgent Clients. UserAgent dient bei der Performance-Rohdatenerfassung der Erkennung der UserAgents. Bildungsvorschrift für UserAgent siehe A_22470. |
UserAgentsType (LIste von Strings; Gesamtlänge von 17 bis maximal 65 Zeichen) |
- |
InsurantId | InsurantId referenziert ein konkretes Aktenkonto eines Versicherten. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. | InsurantIdType | - |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthorizationStatusList |
Liste aller Berechtigungen für das durch InsurantId adressierte Aktenkonto im Aktensystem, in denen für die Telematik-ID der anfragenden Leistungserbringerinstitution bzw. der Kostenträger ein AuthorizationKey aktuell vorhanden ist. Falls eine Berechtigung für die Anwendung vorliegt wird ein Eintrag in der Liste für die berechtigte Anwendung und das Endedatum der Berechtigung übergeben. Liegt keine einzige Berechtigung vor so entfällt AuthorizationStatusList. |
AuthorizedApplication[0..*] |
ja |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig. |
z.B. abgelaufen oder Misstrauen in Signatur des Tokens |
|
TECHNICAL_ERROR |
Zufallszahl | ||
TOO_MANY_REQUESTS (HTTP-Fehler) |
Http 429 Too many Requests |
6.2.3.8 Umsetzung I_Authorization_Management::getAuthorizationState
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management::getAuthorizationState. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_22448 - Komponente Autorisierung LE - Abfrage Berechtigungsliste
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::getAuthorizationState für das durch die InsurantId adressierte Aktenkonto die Berechtigung für die Fachanwendungen ermitteln, in deren KeyChain für die organization-id der gültigen AuthenticationAssertion ein AuthorizationKey vorhanden ist (organization-id == ActorID) und bei vorhandener Berechtigung einen Eintrag in AuthorizationStatusList mit ApplicationName und dem Endedatum validTo der ermittelten Berechtigung zurückgeben. [<=]
A_22449-01 - Komponente Autorisierung - Einschränkung der Häufigkeit der Abfrage getAuthorizationState
Das Aktensystem KANN getAuthorizationState-Anfragen mit dem Fehler TOO_MANY_REQUESTS zurückweisen, wenn sie von derselben LEI (bei Gleichheit der organization-id) und derselben InsurantId innerhalb eines Zeitraumes von 30 Minuten mehr als drei Mal gestellt werden.
[<=]
A_22568 - Komponente Autorisierung LE - Erstellung der Berechtigungsliste in getAuthorizationState nur bei ACTIVATED und DISMISSED
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management::getAuthorizationState ausschließlich Aktenkonten berücksichtigen, die sich im Zustand ACTIVATED oder DISMISSED befinden. [<=]
6.2.4 Schnittstelle I_Authorization_Management_Insurant
Diese Schnittstelle setzt die in [gemSysL_ePA] definierte Schnittstelle I_Authorization_Management_Insurant technisch um.
Die Schnittstelle I_Authorization_Management_Insurant stellt Operationen zur Verwaltung von kryptografischen Berechtigungen im Autorisierungsdienst eines Aktensystems bereit.
6.2.4.1 Operationsdefinition I_Authorization_Management_Insurant::putAuthorizationKey
A_14672-01 - Komponente Autorisierung - I_Authorization_Management_Insurant::putAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::putAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::putAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation wird für einen Berechtigten verschlüsseltes Schlüsselmaterial für ein konkretes Aktenkonto eines Versicherten im Aktensystem gespeichert. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
AuthorizationKey |
Die kryptografische Autorisierung eines Nutzers, bestehend aus Listen von verschlüsselten Schlüsseln. Details zur Struktur finden sich im Kapitel 7 zum Informationsmodell. |
AuthorizationKeyType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
NotificationInfoRepresentative |
Mit diesem Parameterhinterlegt der Versicherte eine Benachrichtigungsadresse der Geräteverwaltung des mittels AuthorizationKey berechtigten Vertreters. |
String |
ja |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Es ist bereits ein Datensatz vorhanden. |
|
SYNTAX_ERROR |
Fehlerhafte Aufrufparameter |
Es wurde ein fehlerhafter Aufrufparameter übergeben. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
6.2.4.2 Umsetzung I_Authorization_Management_Insurant::putAuthorizationKey
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::putAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14446 - Komponente Autorisierung Vers. - Speicherung kryptografische Berechtigung des Nutzers
Die Komponente Autorisierung MUSS in der Operation I_Authorization_Management_Insurant::putAuthorizationKey den im Eingangsparameter übergebenen AuthorizationKey als AuthorizationKey der KeyChain des im Eingangsparameter benannten RecordIdentifier speichern, sofern kein AuthorizationKey für die ActorID zu diesem RecordIdentifier bereits vorhanden ist, und andernfalls die Operation mit der Fehlermeldung KEY_ERROR abbrechen.
[<=]
A_14447 - Komponente Autorisierung Vers. - Berechtigungsprüfung Schlüsselhinterlegung
Die Komponente Autorisierung MUSS beim Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey anhand der subject-id (KVNR) der AuthenticationAssertion und des RecordIdentifier prüfen, ob für den aufrufenden Nutzer ein AuthorizationKey mit ActorID = KVNR hinterlegt ist und falls nicht, die Operation mit dem Fehler ACCESS_DENIED abbrechen. [<=]
Mit dieser Prüfung wird sichergestellt, dass nur Versicherte sowie berechtigte Vertreter Schlüsselmaterial für Versicherte, Leistungserbringerinstitutionen und Kostenträger hinterlegen können, die selbst bereits über einen AuthorizationKey verfügen.
A_21541 - Komponente Autorisierung Vers. – Einrichten Vertretungsberechtigung nicht durch einen Vertreter
Die Komponente Autorisierung MUSS das Einrichten einer Vertretungsberechtigung durch den Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey mit (subject-id der AuthenticationAssertion != ActorID des Übergabeparameters AuthorizationKey und ActorID des Übergabeparameters AuthorizationKey != OwnerKVNR) ablehnen, wenn die subject-id der AuthenticationAssertion nicht der OwnerKVNR des benannten RecordIdentifiers entspricht und die Operation mit dem Fehler ACCESS_DENIED beenden. Mit dieser Prüfung wird verhindert, dass ein Vertreter weitere Vertreter einrichten kann. [<=]
A_18184-01 - Komponente Autorisierung Vers. - Prüfung auf Vertretungsberechtigung für Validierungsidentität
Die Komponente Autorisierung MUSS bei einer Vertretungsberechtigung sicherstellen, dass der Vertreter für ein Aktenkonto genau dann eine Validierungsidentität gemäß [gemSpec_PK_eGK#Card-G2-A_3820] besitzt, wenn es sich um ein Validierungsaktenkonto handelt. Ansonsten ist mit dem Fehler TECHNICAL_ERROR abzubrechen.
[<=]
Hinweis: Das stellt sicher, dass auf „echte“ Konten ausschließlich „echte“ Vertreter berechtigt werden und auf Validierungskonten ausschließlich „Validierungs-Vertreter“. Die Erkennung auf eine Validierungsidentität kann über die Auswertung der ActorID des zu berechtigenden Vertreters erfolgen, wobei diese als Prüf-KVNR anhand der Bildungsregel "4 oder mehr gleiche aufeinander folgende Ziffern" eindeutig zu erkennen ist.
A_17670 - Komponente Autorisierung Vers. - Freischaltprozess Vertreterberechtigung
Die Komponente Autorisierung MUSS bei Hinterlegung einer Vertretungsberechtigung durch Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey mit (subject-id der AuthenticationAssertion != ActorID des Übergabeparameters AuthorizationKey und ActorID des Übergabeparameters AuthorizationKey != OwnerKVNR) die Operation abschließen, sofern kein technischer oder fachlicher Fehler dies verhindert und anschließend den Freischaltprozess für Vertretereinrichtung starten ( ), sofern für die im Übergabeparameter AuthorizationKey benannte ActorID noch kein AuthorizationKey in der Komponente Autorisierung für die im RecordIdentifier benannte OwnerKVNR vorhanden ist.
[<=]
A_18750 - Komponente Autorisierung Vers. - Begrenzung zu registrierender Vertreter
Die Komponente Autorisierung MUSS bei Hinterlegung einer Vertretungsberechtigung durch Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey (vgl. A_17670) prüfen, ob die maximale Anzahl von fünf Vertretern erreicht wurde. Trifft dies zu, MUSS der Anwendungsfall mit dem Fehler TECHNICAL_ERROR abgebrochen werden. Eine Prüfung MUSS berücksichtigen, ob zum Zeitpunkt der Vertretungsregistrierung Freischaltprozesse gestartet wurden bzw. im Gange sind. Diese Prozesse sind in der maximalen Anzahl an Vertretern zu berücksichtigen.
[<=]
A_15752 - Komponente Autorisierung Vers. - Benachrichtigungskanal für Geräteverwaltung E-Mail-Format
Die Komponente Autorisierung MUSS die OperationI_Authorization_Management_Insurant::putAuthorizationKey mit dem Fehler SYNTAX_ERROR abbrechen, wenn der Parameter NotificationInfoRepresentative nicht leer und nicht gemäß [RFC-5322] formatiert ist. [<=]
A_14318-01 - Komponente Autorisierung Vers. - Benachrichtigungskanal für Geräteverwaltung
Die Komponente Autorisierung MUSS einen in der Operation I_Authorization_Management_Insurant::putAuthorizationKey übergebenen optionalen Parameter NotificationInfoRepresentative als Benachrichtigungsadresse der Geräteverwaltung für den im Parameter AuthorizationKey durch ActorID benannten Nutzer übernehmen, sofern ActorID eine KVNR enthält, die nicht der OwnerKVNR entspricht, anderenfalls ist der Parameter zu ignorieren. Für die Berechtigung eines Vertreters MUSS dieser Parameter immer gesetzt sein und falls nicht, ist die Operation mit dem Fehler SYNTAX_ERROR zu beenden. [<=]
A_14615 - Komponente Autorisierung Vers. - Initiale Schlüsselhinterlegung Kontoeröffnung
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::putAuthorizationKey mit dem Fehler ACCESS_DENIED abbrechen, sofern für den Eigentümer der Akte noch kein AuthorizationKey vorhanden ist, und der zu speichernde AuthorizationKey des Aufrufparameters für einen anderen Nutzer als den Eigentümer des RecordIdentifier (ActorID != OwnerKVNR) gespeichert werden soll. [<=]
Mit dieser Anforderung soll verhindert werden, dass die Akte genutzt wird, bevor das Schlüsselmaterial für den Versicherten erzeugt und hinterlegt wurde. Die benannte Konstellation liegt im Rahmen der Kontoeröffnung und bei einem Aktenumzug vor. Das Schlüsselmaterial für den Versicherten wird im Schritt der Kontoaktivierung erzeugt, welcher auf den Schritt der Kontoinitialisierung folgt.
A_14736 - Komponente Autorisierung Vers. - Initiale Schlüsselhinterlegung für den Versicherten
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey durch den Versicherten (subject-id (KVNR) der AuthenticationAssertion == OwnerKVNR) im Rahmen der initialen Schlüsselhinterlegung während der Kontoaktivierung das validTo-Datum des übergebenen AuthorizationKey vor der Speicherung mit einem technischen Datum gleichbedeutend mit "unendlich" (z.B. 31.12.9999) ersetzen. [<=]
A_15000-03 - Komponente Autorisierung Vers. - Zustandswechsel bei Schlüsselhinterlegung für den Versicherten
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::putAuthorizationKey durch den Versicherten (subject-id (KVNR) der AuthenticationAssertion == OwnerKVNR) bei erfolgreichem Abschluss der initialen Schlüsselhinterlegung für den Versicherten während der Kontoaktivierung den Zustand RecordState der KeyChain des Versicherten von REGISTERED auf den Wert ACTIVATED setzen. [<=]
6.2.4.3 Operationsdefinition I_Authorization_Management_Insurant::deleteAuthorizationKey
A_14674-01 - Komponente Autorisierung - I_Authorization_Management_Insurant::deleteAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::deleteAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::deleteAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Nutzer bzw. ein berechtigter Vertreter das im Aktenkonto hinterlegte kryptografische Schlüsselmaterial für einen benannten Nutzer löschen. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
ActorID |
Identifikator des Nutzers, für den der hinterlegte Datensatz AuthorizationKey gelöscht werden soll. |
String |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Kein Datensatz vorhanden |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
6.2.4.4 Umsetzung I_Authorization_Management_Insurant::deleteAuthorizationKey
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::deleteAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14451 - Komponente Autorisierung Vers. - Prüfen Löschberechtigung
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::deleteAuthorizationKey prüfen, ob der in der AuthenticationAssertion benannte Nutzer über einen AuthorizationKey mit AuthorizationType = DOCUMENT_AUTHORIZATION für den benannten RecordIdentifier verfügt, und andernfalls die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
A_21542 - Komponente Autorisierung Vers. – Löschen Vertretungsberechtigung nicht durch einen Vertreter
Die Komponente Autorisierung MUSS das Löschen einer Vertretungsberechtigung durch den Aufruf der Operation I_Authorization_Management_Insurant::deleteAuthorizationKey mit (subject-id der AuthenticationAssertion != Übergabeparameter ActorID und Übergabeparameter ActorID != OwnerKVNR) ablehnen, wenn die subject-id der AuthenticationAssertion nicht der OwnerKVNR des benannten RecordIdentifiers entspricht und die Operation mit dem Fehler ACCESS_DENIED beenden. Mit dieser Prüfung wird verhindert, dass ein Vertreter Berechtigungen anderer Vertreter löschen kann. [<=]
A_14452 - Komponente Autorisierung Vers. - Löschen des AuthorizationKeys
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::deleteAuthorizationKey
den Datensatz AuthorizationKey des Nutzers löschen, der im Aufrufparameter als ActorID (Telematik-ID oder KVNR für Vertreter) benannt wurde. [<=]
A_21704-02 - Komponente Autorisierung Vers. - Benachrichtigung des Versicherten bei Löschen Vertreterschlüssel
Löscht ein Vertreter seine eigene Vertreterberechtigung MUSS der Versicherte darüber, mittels seiner hinterlegten E-Mail-Adresse, informiert werden, es sei denn, deviceID ist mit AUTHORIZE_REPRESENTATIVE belegt, sofern diese vorhanden ist. [<=]
A_14453 - Komponente Autorisierung Vers. - Löschverbot für Versichertenschlüssel
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::deleteAuthorizationKey
das Löschen verhindern, wenn der im Aufrufparameter als ActorID benannte Datensatz gleich der OwnerKVNR des Versicherten als Eigentümer der Akte ist, und die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
A_14552-02 - Komponente Autorisierung Vers. - Löschen veralteter Schlüssel
Die Komponente Autorisierung MUSS alle AuthorizationKey unverzüglich (ohne schuldhaftes Verzögern) löschen, deren validTo-Datum älter als die aktuelle Systemzeit der Komponente Autorisierung sind und das Löschen mit den folgenden Parametern als PHR-421 protokollieren:
- UserID = interner, systemseitig wählbarer Identifikator
- UserName = Automatische Löschung nach Ablauf der Berechtigungsdauer
- ObjectID = RecordIdentifier des betroffenen Kontos
- ObjectName = ActorID des gelöschten AuthorizationKey.
6.2.4.5 Operationsdefinition I_Authorization_Management_Insurant::replaceAuthorizationKey (abgekündigt)
Die Operation replaceAuthorizationKey wird übergangsweise weiter angeboten. Sowie alle FdVs zur Änderung der Berechtigungsdauer die neue Operation updateAuthorizationPeriod verwenden, wird replaceAuthorizationKey aus der Spezifikation entfernt.
A_14325-02 - Komponente Autorisierung - I_Authorization_Management_Insurant::replaceAuthorizationKey
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::replaceAuthorizationKey gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::replaceAuthorizationKey |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Nutzer bzw. ein berechtigter Vertreter das im Aktenkonto für einen benannten Nutzer hinterlegte kryptografische Schlüsselmaterial ersetzen. Die Operation kann insbesondere dazu benutzt werden, den Berechtigungszeitraum für einen AuthorizationKey anzupassen. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
NewAuthorizationKey |
Die kryptografische Autorisierung eines Nutzers, bestehend aus Listen von verschlüsselten Schlüsseln. Details zur Struktur finden sich im Kapitel 7 zum Informationsmodell. |
AuthorizationKeyType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Kein Datensatz vorhanden. |
|
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
[<=]
6.2.4.6 Umsetzung I_Authorization_Management_Insurant::replaceAuthorizationKey (abgekündigt)
Die Operation replaceAuthorizationKey wird übergangsweise weiter angeboten. Sowie alle FdVs zur Änderung der Berechtigungsdauer die neue Operation updateAuthorizationPeriod verwenden, wird replaceAuthorizationKey aus der Spezifikation entfernt.
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::replaceAuthorizationKey. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14454 - Komponente Autorisierung Vers. - Prüfung Datensatz für bestehenden AuthorizationKey
Die Komponente Autorisierung MUSS für die Operation I_Authorization_Management_Insurant::replaceAuthorizationKey prüfen, ob ein AuthorizationKey für den benannten RecordIdentifier und den in der AuthenticationAssertion benannten Nutzer (subject-id == ActorID des vorhandenen AuthorizationKey) hinterlegt ist, und andernfalls die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
A_21543 - Komponente Autorisierung Vers. – Ändern Vertretungsberechtigung nicht durch einen Vertreter
Die Komponente Autorisierung MUSS das Ändern einer Vertretungsberechtigung durch den Aufruf der Operation I_Authorization_Management_Insurant::replaceAuthorizationKey mit (subject-id der AuthenticationAssertion != ActorID des Übergabeparameters NewAuthorizationKey und ActorID des Übergabeparameters NewAuthorizationKey != OwnerKVNR) ablehnen, wenn die subject-id der AuthenticationAssertion nicht der OwnerKVNR des benannten RecordIdentifiers entspricht und die Operation mit dem Fehler ACCESS_DENIED beenden. Mit dieser Prüfung wird verhindert, dass ein Vertreter Berechtigungen anderer Vertreter ändern kann. [<=]
A_21544 - Komponente Autorisierung Vers. - Änderung des Schlüsselmaterials des Versicherten nur durch den Versicherten selbst
Die Komponente Autorisierung MUSS das Ändern des Schlüsselmaterial des Versicherten durch den Aufruf der Operation I_Authorization_Management_Insurant::replaceAuthorizationKey ablehnen und die Operation mit dem Fehler ACCESS_DENIED beenden, wenn (subject-id der AuthenticationAssertion != OwnerKVNR und ActorID des Übergabeparameters NewAuthorizationKey == OwnerKVNR) gilt. [<=]
A_14455 - Komponente Autorisierung Vers. - Ersetzen des AuthorizationKeys
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::replaceAuthorizationKey
den Datensatz AuthorizationKey desjenigen Nutzers durch den übergebenen NewAuthorizationKey ersetzen, der im Aufrufparameter als ActorID (Telematik-ID oder KVNR) benannt wurde und für den ein AuthorizationKey vorhanden ist. [<=]
6.2.4.7 Operationsdefinition I_Authorization_Management_Insurant::updateAuthorizationPeriod
A_23726 - Komponente Autorisierung - I_Authorization_Management_Insurant::updateAuthorizationPeriod
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::updateAuthorizationPeriod gemäß der folgenden Signatur implementieren:
Tabelle : I_Authorization_Management_Insurant::updateAuthorizationPeriod - Definition
Operation |
I_Authorization_Management_Insurant::updateAuthorizationPeriod |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Nutzer bzw. ein berechtigter Vertreter den im Aktenkonto für einen benannten Nutzer hinterlegten Berechtigungszeitraum für einen AuthorizationKey ersetzen. | ||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
ActorID | Die ActorID ist der Identifikator (TelematikID) des Nutzers (LEI), für den im hinterlegten Datensatz AuthorizationKey der Berechtigungszeitraum angepasst werden soll. | string | - |
ValidTo |
ValidTo ist der Zeitpunkt bis zu dem die Berechtigung erteilt wird. Für eine Berechtigung ohne zeitliche Begrenzung ist ein technisches Datum (31.12.9999) zu verwenden. |
date |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
KEY_ERROR |
Fehler im Schlüsseldatensatz |
Kein Datensatz vorhanden. |
|
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
6.2.4.8 Umsetzung I_Authorization_Management_Insurant::updateAuthorizationPeriod
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::updateAuthorizationPeriod. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_23727 - Komponente Autorisierung Vers. - Prüfung Änderungsberechtigung
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::updateAuthorizationPeriod prüfen, ob der in der AuthenticationAssertion benannte Nutzer über einen AuthorizationKey mit AuthorizationType = DOCUMENT_AUTHORIZATION für den benannten RecordIdentifier verfügt, und andernfalls die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
6.2.4.9 Operationsdefinition I_Authorization_Management_Insurant::getAuditEvents
A_14676-08 - Komponente Autorisierung - I_Authorization_Management_Insurant::getAuditEvents
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::getAuditEvents gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::getAuditEvents |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter das Verwaltungsprotokoll der Autorisierungskomponente auslesen. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes sowie zusätzlich Einträge, die nicht an einem Konto hängen. |
DeviceIdType |
- |
PageSize | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
PageNumber | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
LastDay | Umsetzung gemäß [gemSpecAktensystem#] | YYYY-MM-DD oder YYYY-MM-DDThh:mm:ssZ |
y |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuditMessage |
Liste der Verwaltungsprotokolleinträge des im RecordIdentifier referenzierten Aktenkontos sowie zusätzlich Einträge, die nicht am Konto hängen, sondern an der UserID des Vertreters in der AuthenticationAssertion. |
AuditMessage [0..*] |
- |
PageSize | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
PageNumber | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
TotalPages | Umsetzung gemäß [gemSpecAktensystem#] | Integer (>= 0) | y |
TotalEntries | Umsetzung gemäß [gemSpecAktensystem#] | Integer (>= 0) | y |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
SYNTAX_ERROR | Fehlerhafte Aufrufparameter. | Es wurde ein fehlerhafter Aufrufparameter übergeben. |
6.2.4.10 Umsetzung I_Authorization_Management_Insurant::getAuditEvents
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::getAuditEvents. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14394-02 - Komponente Autorisierung Vers. - Auslesen Verwaltungsprotokoll
Die Komponente Autorisierung MUSS beim Aufruf der Operation I_Authorization_Management_Insurant::getAuditEvents dem anhand einer AuthenticationAssertion authentifizierten Nutzer die Liste aller zum angefragten RecordIdentifier verfügbaren Verwaltungsprotokolleinträge gemäß [gemSpec_DM_ePA#A_14471-*] zurückliefern, wenn der Wert von DeviceID::Device des Aufrufparameters gleich dem Wert "urn:gematik:fa:phr:1.0:device:device-id" einer für diesen Nutzer ausgestellten Autorisierungsbestätigung ist. Die Liste muss zusätzlich die Einträge enthalten, die nicht an einem Konto hängen. [<=]
Damit wird sichergestellt, dass das Auslesen des Verwaltungsprotokolls nur gestattet wird, wenn zuvor eine Autorisierungsbestätigung für diesen Nutzer ausgestellt wurde.
6.2.4.11 Operationsdefinition I_Authorization_Management_Insurant::getSignedAuditEvents
A_21165-05 - Komponente Autorisierung - I_Authorization_Management_Insurant::getSignedAuditEvents
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::getSignedAuditEvents gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::getSignedAuditEvents |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter eine signierte Liste der Verwaltungsprotokolle des Versicherten aus der Autorisierungskomponente auslesen. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
PageSize | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
PageNumber | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
LastDay | Umsetzung gemäß [gemSpecAktensystem#] | YYYY-MM-DD oder YYYY-MM-DDThh:mm:ssZ |
y |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
SignedAuditEventList |
Signierte Liste (Teilliste bei Verwendung der Paging-Parameter) der Verwaltungsprotokolleinträge des im RecordIdentifier referenzierten Aktenkontos |
Signiertes Dokument |
- |
PageSize | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
PageNumber | Umsetzung gemäß [gemSpecAktensystem#] | Integer (> 0) | y |
TotalPages | Umsetzung gemäß [gemSpecAktensystem#] | Integer (>= 0) | y |
TotalEntries | Umsetzung gemäß [gemSpecAktensystem#] | Integer (>= 0) | y |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
ASSERTION_INVALID |
Authentifizierungsbestätigung ungültig |
Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
SYNTAX_ERROR | Fehlerhafte Aufrufparameter. | Es wurde ein fehlerhafter Aufrufparameter übergeben. |
[<=]
6.2.4.12 Umsetzung I_Authorization_Management_Insurant::getSignedAuditEvents
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::getSignedAuditEvents. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_21166-01 - Komponente Autorisierung - signiertes Verwaltungsprotokoll erstellen
Die Komponente Autorisierung MUSS beim Aufruf der Operation I_Authorization_Management_Insurant::getSignedAuditEvents dem anhand einer AuthenticationAssertion authentifizierten Nutzer ein signiertes Dokument zurückliefern,
- welche alle zum angefragten RecordIdentifier verfügbaren Verwaltungsprotokolleinträge gemäß [gemSpec_DM_ePA#A_14471] enthält und
- für die Signatur wird der private Schlüssel der Ausstelleridentität ID.FD.SIG genutzt, dessen zugehöriges Zertifikat C.FD.SIG die Rolle "oid_epa_logging" enthält,
Damit wird sichergestellt, dass das Auslesen des Verwaltungsprotokolls nur gestattet wird, wenn zuvor eine Autorisierungsbestätigung für diesen Nutzer ausgestellt wurde.
Es wird das gesamte Dokument bzw. Dokumente signiert. Das Format soll dem von Audit Events entsprechen.
6.2.4.13 Operationsdefinition I_Authorization_Management_Insurant::putNotificationInfo
A_14344-01 - Komponente Autorisierung - I_Authorization_Management_Insurant::putNotificationInfo
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::putNotificationInfo gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::putNotificationInfo |
||
---|---|---|---|
Beschreibung |
Mit dieser Operation kann ein authentifizierter Versicherter bzw. ein berechtigter Vertreter seine im Benachrichtigungskanal hinterlegte Adresse aktualisieren. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
NewNotificationInfo |
NewNotificationInfo beinhaltet die neue Benachrichtigungsadresse, die für den authentifizierten Nutzer gespeichert werden soll. |
String |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
SYNTAX_ERROR |
Fehlerhafte Aufrufparameter |
Es wurde ein fehlerhafter Aufrufparameter übergeben. |
|
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
[<=]
6.2.4.14 Umsetzung I_Authorization_Management_Insurant::putNotificationInfo
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::putNotificationInfo. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_14715-02 - Komponente Autorisierung Vers. - Aktualisierung Benachrichtigungsadresse
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::putNotificationInfo den Wert des Parameters NewNotificationInfo als Benachrichtigungsadresse des in der AuthenticationAssertion benannten Nutzers für den hinterlegten AuthorizationKey des Nutzers (subject-id der AuthenticationAssertion == ActorID des AuthorizationKey) speichern. [<=]
A_14716 - Komponente Autorisierung Vers. - E-Mail-Format
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::putNotificationInfo mit dem Fehler SYNTAX_ERROR abbrechen, wenn der Parameter NewNotificationInfo nicht gemäß [RFC-5322] formatiert ist.
[<=]
Mit dieser Funktion kann ein Versicherter oder ein berechtigter Vertreter seine persönliche Benachrichtigungsadresse zur Gerätefreischaltung ändern. Sowohl für Versicherte als auch deren berechtigte Vertreter sind vor deren jeweiligem Zugriff Benachrichtigungsadressen vorhanden, da diese Operation ohne Gerätefreischaltung über ihre Adresse nicht aufrufbar ist.
Für Versicherte wird die Benachrichtigungsadresse initial im Rahmen der Kontoeröffnung hinterlegt. Für Vertreter erfolgt die initiale Hinterlegung der Benachrichtigungsadresse durch den Versicherten mittels I_Authorization_Management_Insurant::putAuthorizationKey während der Vergabe der Zugriffsberechtigung.
6.2.4.15 Operationsdefinition I_Authorization_Management_Insurant::getNotificationInfo
Mit dieser Operation kann ein Versicherter die Email-Adressen einsehen, die Nutzern zugeordnet sind, die über eine Zugriffsberechtigung für das Konto des Versicherten (Akteninhabers) verfügen, also die eigene Email-Adresse und die seiner Vertreter.
A_21250-01 - Komponente Autorisierung - I_Authorization_Management_Insurant::getNotificationInfo
Die Komponente Autorisierung MUSS die Operation
I_Authorization_Management_Insurant::getNotificationInfo gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::getNotificationInfo |
||
Beschreibung |
Mit dieser Operation kann ein authentifizierter Versicherter die an seinem Konto hinterlegten Benachrichtigungskanal - Adressen abfragen. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer (Akteninhaber). |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier | Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. | RecordIdentifierType | - |
DeviceID | Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. | DeviceIdType | - |
ActorID |
Identifikator des Nutzers (Vertreter oder Akteninhaber), dessen Benachrichtigungsadresse ausgegeben werden soll. Soll die Liste aller Benachrichtigungskanäle zurückgegeben werden, wird ActorID leer gelassen. |
String |
ja |
Ausgangsparameter |
|||
NotificationInfoList |
NotificationInfoList beinhaltet die Benachrichtigungskanäle (ActorID und Benachrichtigungsadresse), die entweder zur angefragten ActorID oder aber im Aktenkonto insgesamt hinterlegt sind. |
NotificationInfoListType |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
SYNTAX_ERROR |
Fehlerhafte Aufrufparameter |
Es wurde ein fehlerhafter Aufrufparameter übergeben. |
|
ACTOR_UNKNOWN |
unbekannte ActorID |
Die ActorID ist im angegebenen Aktenkonto nicht bekannt. |
|
DEVICE_UNKNOWN | generierte phr:DeviceID::Device | Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. | |
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
[<=]
6.2.4.16 Umsetzung I_Authorization_Management_Insurant::getNotificationInfo
Bei der Umsetzung der Operation I_Authorization_Management_Insurant::getNotificationInfo gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_21722 - Komponente Autorisierung Vers. - Berechtigung für getNotificationInfo
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::getNotificationInfo prüfen, ob für den in der AuthenticationAssertion benannten User ein AuthorizationKey in der Keychain der mittels RecordIdentifier benannten Akte vorhanden ist und andernfalls die Operation mit ACCESS_DENIED abbrechen. [<=]
A_21252-01 - Komponente Autorisierung – Abfrage Benachrichtigungsadresse
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::getNotificationInfo für das über RecordIdentifier referenzierte Aktenkonto entweder alle Benachrichtigungskanäle oder aber den im Parameter ActorID angefragten Benachrichtigungskanal zurück geben. Ist der in der AuthenticationAssertion benannte Nutzer nicht Eigentümer der Akte, also ein Vertreter, MUSS immer ausschließlich der Benachrichtigungskanal dieses Nutzers zurück gegeben werden.
[<=]
6.2.4.17 Operationsdefinition I_Authorization_Management_Insurant::getKtrTelematikID
A_21559 - Komponente Autorisierung - I_Authorization_Management_Insurant::getKtrTelematikID
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::getKtrTelematikID
gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::getKtrTelematikID |
||
---|---|---|---|
Beschreibung |
Die Operation liefert die TelematikID des Kostenträgers, der das Kontos im Aktensystems anbietet. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
KtrTelematikID |
Telematik-ID des Kostenträgers, der das Aktenkonto anbietet. |
String |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
6.2.4.18 Umsetzung I_Authorization_Management_Insurant::getKtrTelematikID
A_21560 - Komponente Autorisierung Vers. - Berechtigung für getKtrTelematikID
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::getKtrTelematikID prüfen, ob für den in der AuthenticationAssertion benannten User ein AuthorizationKey in der Keychain der mittels RecordIdentifier benannten Akte vorhanden ist (subject-id == ActorID) und andernfalls die Operation mit ACCESS_DENIED abbrechen. [<=]
6.2.4.19 Operationsdefinition I_Authorization_Management_Insurant::getAuthorizationList
A_17113-01 - Komponente Autorisierung - I_Authorization_Management_Insurant::getAuthorizationList
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::getAuthorizationList gemäß der folgenden Signatur implementieren:
Operation |
I_Authorization_Management_Insurant::getAuthorizationList |
||
---|---|---|---|
Beschreibung |
Die Operation liefert eine Liste aller AuthorizationKeys eines Kontos im Aktensystems, als Liste aller Berechtigten in einem Aktenkonto. |
||
Formatvorgaben |
Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||
Eingangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthenticationAssertion |
Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. |
SAML Assertion im SOAP-Header des Requests |
- |
RecordIdentifier |
Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. |
RecordIdentifierType |
- |
DeviceID |
Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. |
DeviceIdType |
- |
Ausgangsparameter |
|||
Name |
Beschreibung |
Typ |
opt. |
AuthorizationKeyList |
Liste der AuthorizationKeys des per RecordIdentifier identifizierten Kontos. |
AuthorizationKeyType[0..*] |
- |
Fehlermeldungen |
|||
Name |
Fehlertext |
Details |
|
TECHNICAL_ERROR |
Zufallszahl |
||
DEVICE_UNKNOWN |
generierte phr:DeviceID::Device |
Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. |
|
ACCESS_DENIED |
Zugriff verweigert |
Die Operation ist mit den angegebenen Parametern nicht zulässig. |
6.2.4.20 Umsetzung I_Authorization_Management_Insurant::getAuthorizationList
A_17115 - Komponente Autorisierung Vers. - Berechtigung für Berechtigungsliste
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::getAuthorizationList prüfen, ob für den in der AuthenticationAssertion benannten User ein AuthorizationKey in der Keychain der mittels RecordIdentifier benannten Akte vorhanden ist (subject-id == ActorID) und andernfalls die Operation mit ACCESS_DENIED abbrechen.
[<=]
A_17114-01 - Komponente Autorisierung Vers. - Abfrage Berechtigungsliste
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::getAuthorizationList die Liste aller AuthorizationKey in der KeyChain der im RecordIdentifier benannten Akte mit Ausnahme des AuthorizationKey des Eigentümers der Akte (für alle zurückgegebenen AuthorizationKey MUSS gelten: ActorID != OwnerKVNR) in der folgenden Struktur zurückgeben
Die Elemente Ciphertext und AssociatedData innerhalb des Elements EncryptedKeyContainer MÜSSEN mit einem Leer-String belegt werden.
[<=]
6.2.4.21 Operationsdefinition I_Authorization_Management_Insurant::startKeyChange
A_20480-03 - Komponente Autorisierung - I_Authorization_Management_Insurant::startKeyChange
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::startKeyChange gemäß der folgenden Signatur implementieren:
Operation | I_Authorization_Management_Insurant::startKeyChange | ||||
---|---|---|---|---|---|
Beschreibung | Mit dieser Operation kann der Versicherte den Prozess der Umschlüsselung an der Komponente Autorisierung initiieren und die Autorisierungskomponente bis zur Beendigung der Verarbeitung sperren. |
||||
Formatvorgaben | Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||||
Eingangsparameter | |||||
Name | Beschreibung | Typ |
opt. | ||
AuthenticationAssertion | Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. | SAML Assertion im SOAP-Header des Requests | - | ||
RecordIdentifier | Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. | RecordIdentifierType | - | ||
Technische Fehlermeldungen | |||||
Name | Fehlertext | Details |
|||
TECHNICAL_ERROR |
Zufallszahl | Interner Fehler in der Verarbeitungslogik | |||
ASSERTION_INVALID | Authentifizierungsbestätigung ungültig. | Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. | |||
ACCESS_DENIED | Der Zugriff für diese Operation konnte nicht gewährt werden. | Die Operation ist mit den angegebenen Parametern nicht zulässig. |
6.2.4.22 Umsetzung I_Authorization_Management_Insurant::startKeyChange
A_21670-01 - Komponente Autorisierung - Aufruf startKeyChange nur durch die Dokumentenverwaltung
Die Operation I_Authorization_Management_Insurant::startKeyChange DARF NICHT durch das FdV aufgerufen werden. Der Aufruf der Operation darf nur innerhalb des Aktensystems durch die Komponente Dokumentenverwaltung erfolgen.
Anmerkung:
Die Beschreibung der Operation ist als “logische” Definition zu verstehen. Die technische Umsetzung innerhalb des Aktensystems kann vom Hersteller frei gewählt (so das z.b. auch REST möglich ist). Die Operation verbleibt in der WSDL, falls ein Hersteller diese nutzen möchte. Es besteht keine Pflicht die SOAP Schnittstellen zu implementieren. [<=]
Die folgenden Anforderungen beschreiben die Umsetzung der Operation I_Authorization_Management_Insurant::startKeyChange. Dabei gelten die übergreifenden Festlegungen zur Prüfung der Eingangsparameter.
A_20481-01 - Komponente Autorisierung - Prüfen Umschlüsselungsberechtigung startKeyChange
Die Komponente Autorisierung MUSS bei Aufruf der Operation I_Authorization_Management_Insurant::startKeyChange durch den Versicherten als Eigentümer der Akte (subject-id == ActorID des übergebenen AuthorizationKey == OwnerKVNR für den benannten RecordIdentifier) mit der Fehlermeldung ACCESS_DENIED abbrechen, wenn der unveränderliche Teil der KVNR des Versicherten in der übergebenen AuthenticationAssertion nicht übereinstimmt mit dem unveränderlichen Teil der KVNR des Versicherten im bereits gespeicherten AuthorizationKey.
[<=]
A_20482-03 - Komponente Autorisierung - Sperren für Autorisierungsoperationen
Die Komponente Autorisierung MUSS für den ersten berechtigten Aufruf von startKeyChange in einem Umschlüsselungsvorgang den RecordState der KeyChain auf den Zustand KEY_CHANGE setzen und Operationsaufrufe (ausgenommen checkRecordExists, putNotificationInfo, I_Authorization_Management::getAuthorizationList, getAuthorizationState, PutForReplacement, FinishKeyChange, getAuditEvents, getSignedAuditEvents, getKtrTelematikID, die Logische Operation getRecordProviderList und die Geräteverwaltungsschnittstellen) solange mit dem Fehler KEY_LOCKED beantworten, bis die KeyChain nicht mehr auf dem Wert KEY_CHANGE steht. Ein Operationsaufruf von getAuthorizationKey darf nur durch den Versicherten selbst möglich sein und MUSS andernfalls mit dem Fehler ACCESS_DENIED beantwortet werden.
Name |
Fehlertext | Details |
---|---|---|
KEY_LOCKED | Die Akte ist während des Schlüsselwechsels gesperrt | Die Akte ist während des Schlüsselwechsels gesperrt |
6.2.4.23 Operationsdefinition I_Authorization_Management_Insurant::putForReplacement
A_20484-03 - Komponente Autorisierung - I_Authorization_Management_Insurant::putForReplacement
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::putForReplacement gemäß der folgenden Signatur implementieren:
Operation | I_Authorization_Management_Insurant::putForReplacement | ||||
---|---|---|---|---|---|
Beschreibung | Mit dieser Operation übergibt der Versicherte die für die Umschlüsselung an der Komponente Autorisierung erforderlichen verschlüsselten AuthorizationKeys, damit diese die bisher verwendeten AuthorizationKeys ersetzen können. |
||||
Formatvorgaben | Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||||
Eingangsparameter | |||||
Name | Beschreibung | Typ |
opt. | ||
AuthenticationAssertion | Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. | SAML Assertion im SOAP-Header des Requests | - | ||
RecordIdentifier | Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. | RecordIdentifierType | - | ||
DeviceID | Die DeviceID enthält die Gerätekennung eines vom Nutzer verwendeten Gerätes. | DeviceIdType | - | ||
AllEncryptedKeys | Die Liste der neuen Autorisierungsschlüssel soll die bisherigen Schlüssel komplett ersetzen. | AuthorizationKeyType[0..*] | - | ||
Technische Fehlermeldungen | |||||
Name | Fehlertext | Details |
|||
TECHNICAL_ERROR |
Zufallszahl | Interner Fehler in der Verarbeitungslogik | |||
ASSERTION_INVALID | Authentifizierungsbestätigung ungültig | Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. | |||
DEVICE_UNKNOWN | generierte phr:DeviceID::Device | Das vom Nutzer verwendete Gerät des Versicherten ist nicht bekannt und muss freigeschaltet werden. | |||
ACCESS_DENIED | Der Zugriff für diese Operation konnte nicht gewährt werden. | Die Operation ist mit den angegebenen Parametern nicht zulässig. | |||
KEY_CORRUPT | Schlüssel in AllEncryptedKeys sind korrupt | Ein oder mehrere der übergebenen AuthorizationKeys lassen sich nicht verarbeiten. |
6.2.4.24 Umsetzung I_Authorization_Management_Insurant::putForReplacement
A_20493-01 - Komponente Autorisierung - Prüfen Umschlüsselungsberechtigung putForReplacement
Die Komponente Autorisierung MUSS für die Operation I_Authorization_Management_Insurant::putForReplacement durch den Versicherten als Eigentümer der Akte (subject-id == ActorID des übergebenen AuthorizationKey == OwnerKVNR für den benannten RecordIdentifier) mit der Fehlermeldung ACCESS_DENIED abbrechen, wenn der unveränderliche Teil der KVNR des Versicherten in der übergebenen AuthenticationAssertion nicht übereinstimmt mit dem unveränderlichen Teil der KVNR des Versicherten im bereits gespeicherten AuthorizationKey. Wenn die KEY_CHAIN sich nicht auf dem Wert KEY_CHANGE befindet, MUSS die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen.
[<=]
A_20485 - Komponente Autorisierung - Markieren der bisherigen AuthorizationKeys als veraltet
Bei Aufruf der Operation putForReplacement MUSS die Komponente Autorisierung sämtliche bestehenden AuthorizationKeys des betroffenen Aktenkontos als veraltet markieren und in einem Zwischenspeicher von der Verwendung als produktives Schlüsselmaterial ausschließen. Die Zwischenspeicherung muss im Falle eines Rollbacks geeignet sein, das Schlüsselmaterial wieder vollständig als produktives Schlüsselmaterial herzustellen. [<=]
A_20486 - Komponente Autorisierung - Einbringen des neuen Schlüsselmaterials als produktive Schlüssel
Die Komponente Autorisierung MUSS die in der Operation putForReplacement übergebene Liste AllEncryptedKeys (nach der Markierung der bisherigen AuthorizationKeys als veraltet) als produktive AuthorizationKeys in das betroffene Aktenkonto einbringen und benutzen.
[<=]
A_20488 - Komponente Autorisierung - Rollback bei Scheitern der Schlüsselersetzung
Die Komponente Autorisierung MUSS bei Scheitern des Einbringens neuen Schlüsselmaterials als produktive Schlüssel
- den Fehler KEY_CORRUPT zurückgeben,
- einen Rollback des alten Schlüsselmaterials aus dem Zwischenspeicher als produktives Schlüsselmaterial durchführen, und
- anschließend am RecordState der KeyChain den Zustand KEY_CHANGE verlassen und stattdessen den Zustand ACTIVATED setzen.
6.2.4.25 Operationsdefinition I_Authorization_Management_Insurant::finishKeyChange
A_20487-05 - Komponente Autorisierung - I_Authorization_Management_Insurant::finishKeyChange
Die Komponente Autorisierung MUSS die Operation I_Authorization_Management_Insurant::finishKeyChange gemäß der folgenden Signatur implementieren:
Operation | I_Authorization_Management_Insurant::finishKeyChange | ||||
---|---|---|---|---|---|
Beschreibung | Mit dieser Operation beendet der Versicherte die Umschlüsselung an der Komponente Autorisierung und hebt die Sperre der Autorisierungskomponente für anderweitige Autorisierungsaktivitäten auf. |
||||
Formatvorgaben | Die Definition der Ein- und Ausgabeparameter erfolgt in [AuthorizationService.xsd]. Diejenigen Parameter, die im XSD-Schema optional gekennzeichnet, aber hier nicht aufgeführt sind, werden in der Operation an dieser Schnittstelle nicht verwendet. |
||||
Eingangsparameter | |||||
Name | Beschreibung | Typ |
opt. | ||
AuthenticationAssertion | Die AuthenticationAssertion ist eine von einem Identitiy Provider ausgestellte Authentifizierungsbestätigung für einen Nutzer. | SAML Assertion im SOAP-Header des Requests | - | ||
RecordIdentifier | Der RecordIdentifier referenziert ein konkretes Aktenkonto eines Versicherten bei einem Anbieter. Mit diesem wird der Datensatz der Autorisierung in der Komponente Autorisierung für den anfragenden Nutzer lokalisiert. | RecordIdentifierType | - | ||
Success | Der Erfolgszustand zeigt an, ob die Umschlüsselung erfolgreich abgeschlossen werden kann, oder ob ein Rollback des alten Schlüsselmaterials erforderlich ist. | Boolean | - | ||
Technische Fehlermeldungen | |||||
Name | Fehlertext | Details |
|||
TECHNICAL_ERROR |
Zufallszahl | Interner Fehler in der Verarbeitungslogik | |||
ASSERTION_INVALID | Authentifizierungsbestätigung ungültig | Die Authentifizierungsbestätigung des aufrufenden Nutzers wird nicht akzeptiert. | |||
ACCESS_DENIED | Der Zugriff für diese Operation konnte nicht gewährt werden. | Die Operation ist mit den angegebenen Parametern nicht zulässig. |
6.2.4.26 Umsetzung I_Authorization_Management_Insurant::finishKeyChange
A_21668-01 - Komponente Autorisierung - Aufruf finishKeyChange nur durch die Dokumentenverwaltung
Die Operation I_Authorization_Management_Insurant::finishKeyChange DARF NICHT durch das FdV aufgerufen werden. Der Aufruf der Operation darf nur innerhalb des Aktensystems durch die Komponente Dokumentenverwaltung erfolgen.
Anmerkung:
Die Beschreibung der Operation ist als “logische” Definition zu verstehen. Die technische Umsetzung innerhalb des Aktensystems kann vom Hersteller frei gewählt (so das z.b. auch REST möglich ist). Die Operation verbleibt in der WSDL, falls ein Hersteller diese nutzen möchte. Es besteht keine Pflicht die SOAP Schnittstellen zu implementieren. [<=]
A_20494-01 - Komponente Autorisierung - Prüfen Umschlüsselungsberechtigung finishKeyChange
Die Komponente Autorisierung MUSS für die Operation I_Authorization_Management_Insurant::finishKeyChange durch den Versicherten als Eigentümer der Akte (subject-id == ActorID des übergebenen AuthorizationKey == OwnerKVNR für den benannten RecordIdentifier) mit der Fehlermeldung ACCESS_DENIED abbrechen, wenn der unveränderliche Teil der KVNR des Versicherten in der übergebenen AuthenticationAssertion nicht übereinstimmt mit dem unveränderlichen Teil der KVNR des Versicherten im bereits gespeicherten AuthorizationKey. Wenn die KEY_CHAIN sich nicht auf dem Wert KEY_CHANGE befindet, MUSS die Operation mit der Fehlermeldung ACCESS_DENIED abbrechen. [<=]
A_20489 - Komponente Autorisierung - Erfolgreicher Abschluss der Umschlüsselung
Die Komponente Autorisierung MUSS bei Übergabe des Wertes true im Parameter Success am RecordState der KeyChain den Zustand KEY_CHANGE verlassen und stattdessen den Zustand ACTIVATED setzen. [<=]
A_20490 - Komponente Autorisierung - Rollback bei fehlgeschlagener Umschlüsselung
Die Komponente Autorisierung MUSS bei Übergabe des Wertes false im Parameter Success einen Rollback der als veraltet markierten AuthorizationKeys durchführen und am RecordState der KeyChain den Zustand KEY_CHANGE verlassen und stattdessen den Zustand ACTIVATED setzen. [<=]
A_21150 - Komponente Autorisierung - Protokollierungszusatz für Verwaltungsprotokolleintrag für Aufruf der Operation FinishKeyChange
Die Komponente Autorisierung MUSS im Falle des Aufrufs von FinishKeyChange bei der Protokollierung gemäß [gemSpec_DM_ePA#A_14505-*] einen Protokolleintrag (Event.code=PHR-482) hinzufügen und dabei den folgenden Parameter hinzufügen:
Protokoll-parameter | Parameterwerte gemäß aufgerufener Operation |
|
---|---|---|
ObjectDetail |
Das Element ParticipantObjectDetail muss zusätzlich mit folgendem Wertepaar (type/value) belegt werden: | |
type | value | |
Details | Der Wert ist abhängig vom Aufrufparameter Success der Operation FinishKeyChange. Success = 1: "Umschlüsselung erfolgreich beenden" Success = 0: "Umschlüsselung abbrechen" |
6.2.4.27 Fehlerbehandlung I_Authorization_Management_Insurant
A_22401 - Komponente Autorisierung Vers. - Freischaltprüfung Vertreter an der Schnittstelle I_Authorization_Management_Insurant
Die Komponente Autorisierung MUSS bei Wahrnehmung einer Vertretung für einen Versicherten bei Aufrufen von Operationen an der Schnittstelle I_Authorization_Management_Insurant prüfen, ob ein wartender Vertreter-Freischaltprozess für [OwnerKVNR des benannten RecordIdentifiers, subject-id als ActorID] aktiv ist und falls ja, die Operation mit dem Fehler REPRESENTATIVE_PENDING abbrechen. [<=]
6.3 Berechtigungstypen der Autorisierung
Der Berechtigungstyp (AuthorizationType) steuert den Zugriff auf weitere Ressourcen für einen authentisierten Nutzer. Der Berechtigungstyp wird beim Hinzufügen des Schlüsselmaterials für einen Nutzer in der Autorisierungskomponente hinterlegt.
Es wird zwischen drei Typen unterschieden, die in der folgenden Tabelle beschrieben sind:
AuthorizationType |
Beschreibung |
---|---|
DOCUMENT_AUTHORIZATION (Dokumentenautorisierung) |
Es wird für einen authentisierten Nutzer eine Autorisierungsbestätigung ausgestellt, die für den Zugang zur Dokumentenverwaltung notwendig ist. |
ACCOUNT_AUTHORIZATION (Betreiberwechselautorisierung) |
Es wird dem authentisierten Nutzer eine Autorisierungsbestätigung ausgestellt, mit dem in der Komponente Dokumentenverwaltung nur ein eingeschränkter Zugriff auf Daten des Versicherten möglich ist. |
AUTHORIZE_REPRESENTATIVE (Vertretereinrichtungsautorisierung) |
Es wird dem authentisierten Nutzer eine Autorisierungsbestätigung ausgestellt, mit dem in der Komponente Dokumentenverwaltung einzig ein Vertreter eingerichtet werden kann. |
6.4 Hardware-Merkmal der Komponente Autorisierung
Es müssen die privaten Schlüssel der Ausstelleridentität für Autorisierungsbestätigungen sowie der TLS-Server-Identität sicher gespeichert werden.
A_14366 - Komponente Autorisierung - Verwendung eines HSM
Die Komponente Autorisierung MUSS das private Schlüsselmaterial der Ausstelleridentität C.FD.SIG und der TLS-Server-Identität C.FD.TLS-S in einem HSM speichern. [<=]
6.5 Geräteverwaltung
Die Komponente Autorisierung setzt zusätzlich zur kryptografischen Autorisierung eine Geräteautorisierung um. Dazu wird bei Zugriffen aus der Umgebung des Versicherten (über das Internet) geprüft, ob ein Versicherter bzw. berechtigter Vertreter ein bekanntes Gerät für den Zugriff nutzt. Ist das Gerät unbekannt, wird ein Freischaltprozess über einen separaten Benachrichtigungskanal gestartet. Die Erkennung erfolgt auf Basis einer im Gerät des Versicherten gebildeten DeviceID, welche in den Operationsaufrufen mitgeschickt werden muss. Die DeviceId als DeviceIdType gemäß [PHR_Common.xsd] enthält neben der eigentlichen Gerätekennung Device, welche für den Abgleich bekannter Geräte verwendet wird, einen DisplayName, der dem Nutzer die Verwaltung seiner genutzten Geräte erleichtert.
Die Umsetzung erfolgt in der Komponente Autorisierung, da eine vorgelagerte zustandslose Komponente der Authentifizierung von Nutzern, ggfs. nicht über einen Speicher zur Verwaltung von Gerätekennungen je Benutzerkonto verfügt bzw. dieser für diesen Zweck erst geschaffen werden müsste.
Die Prüfung auf ein autorisiertes Gerät erfolgt vor der Herausgabe des in der Komponente Autorisierung gespeicherten Schlüsselmaterials.
Für die Benachrichtigung mit anschließender Freischaltung werden E-Mails mit generierten URLs auf generierte HTML-Webseiten verwendet, da E-Mail aus Usability-Sicht am komfortabelsten erscheint und diese Methoden in verschiedensten Diensten im Internet etabliert und den Versicherten sehr wahrscheinlich bekannt sind.
6.5.1 Freischaltprozess neuer Geräte
Der Freischaltprozess dient dazu, ein Endgerät des Versicherten in der Komponente Autorisierung zu registrieren. Der folgende Ablauf zeigt informativ einen möglichen Ablauf des Freischaltprozesses.
Die Komponente Autorisierung startet den Freischaltprozess für jedes über DeviceID::Device identifizierte Gerät, das für einen über KVNR einer AuthenticationAssertion identifizierten Nutzer als unbekannt gilt. Dabei ist es unerheblich, ob der Nutzer in der Rolle Versicherter oder Vertreter agiert.
Die Komponente Autorisierung generiert zu einem Freischaltprozess einen eindeutigen Link auf Basis von Zufallszahlen und verschickt ihn an die vom Nutzer hinterlegte Benachrichtigungs-E-Mail-Adresse. Durch Klicken auf diesen Link erhält der Versicherte bzw. Vertreter eine Webseite, mit der Bitte um Bestätigung der Freischaltung des genutzten Geräts. Nach Erhalt der Freischaltbestätigung fügt die Komponente Autorisierung das per DeviceID identifizierte Gerät zum AuthorizationKey des Versicherten bzw. Vertreters hinzu.
A_17866-01 - Komponente Autorisierung - Generierung Device-Kennung für unbekanntes Gerät des Versicherten
Die Komponente Autorisierung MUSS bei Aufruf einer Operation der Schnittstellen I_Authorization_Insurant und I_Authorization_Management_Insurant mit einem für den aufrufenden Nutzer (ActorID) unbekanntem Parameter phr:DeviceID::Device eine 256 Bit Zufallszahl (base64-kodiert) mit einer Mindestentropie von 120 Bit und Erzeugung gemäß [gemSpec_Krypt#GS-A_4367] erzeugen, diese als phr:DeviceID::Device für den aufrufenden Nutzer konfigurieren und den Freischaltprozess gemäß starten. [<=]
A_17947-02 - Komponente Autorisierung - Gültigkeitszeitraum und Löschung der Devicekennung
Die Komponente Autorisierung MUSS jede generierte und zu einem Nutzer (ActorID) gespeicherte Device-Kennung phr:DeviceID::Device nach 2 Jahren löschen und darf Nutzeranfragen mit dieser Device-Kennung nach diesem Zeitpunkt nicht mehr akzeptieren.
[<=]
Daraus folgt, dass nach zwei Jahren eine Neuregistrierung des verwendeten Geräts erforderlich ist. Ein möglicher Zeitraum der Inaktivität des Geräts ist dabei irrelevant.
A_14515-01 - Komponente Autorisierung - Freischaltprozess Freischalt-URL
Die Komponente Autorisierung MUSS im Freischaltprozess eine Freischalt-URL erzeugen, die einzig aus dem FQDN der Komponente Autorisierung und einer Zufallszahl (base64-kodiert) mit mindestens 120 Bit Entropie und Erzeugung gemäß [gemSpec_Krypt#GS-A_4367] besteht und diese Freischalt-URL an die E-Mail-Adresse am AuthorizationKey des via KVNR einer AuthenticationAssertion referenzierten Nutzers zum angefragten Aktenanbieter verschicken. [<=]
A_14518 - Komponente Autorisierung - Freischaltprozess Freischalt-URL Transportsicherheit
Die Komponente Autorisierung MUSS in der generierten Freischalt-URL das https-Protokoll verwenden.
[<=]
A_14520 - Komponente Autorisierung - Freischaltprozess Webseite zu Freischalt-URL
Die Komponente Autorisierung MUSS bei Aufruf einer generierten Freischalt-URL durch einen Versicherten bzw. Vertreter mit einer HTML-Seite mit folgendem Inhalt über den transportverschlüsselten Kanal der https-Freischalt-URL antworten:
- DeviceID::DisplayName des freizuschaltenden Geräts
- Zeitpunkt des Starts des Freischaltprozesses
- RecordIdentifier
- Bestätigungslink (submit) zur endgültigen Freischaltung des Geräts
A_14521-02 - Komponente Autorisierung - Freischaltprozess DeviceID hinzufügen
Die Komponente Autorisierung MUSS bei Abruf des Bestätigungslinks eines aktiven Freischaltprozesses die generierte phr:DeviceID::Device in die Liste der Geräte des über KVNR einer AuthenticationAssertion identifizierten Nutzers (Versicherten bzw. Vertreters) hinzufügen und den Freischaltprozess für den Vorgang zu DeviceID und Nutzer beenden.
[<=]
A_14522-01 - Komponente Autorisierung - Freischaltprozess beenden
Die Komponente Autorisierung MUSS den Vorgang eines Freischaltprozesses zu DeviceID und Nutzer nach 6 Stunden Wartezeit beenden. [<=]
A_14523 - Komponente Autorisierung - Freischaltprozess Löschen nach Beendigung
Die Komponente Autorisierung MUSS beim Beenden des Vorgangs eines Freischaltprozesses die generierte Freischalt-URL und alle dazugehörigen temporären Daten löschen. [<=]
6.5.2 Geräteadministration
Mit der Geräteadministration wird dem Nutzer die Möglichkeit gegeben, seine Endgeräte zu verwalten.
A_14364 - Komponente Autorisierung - Geräteverwaltung
Die Komponente Autorisierung MUSS dem authentifizierten Versicherten über eine Web-Schnittstelle folgende Funktionen zur Verfügung stellen:
- Sperren von registrierten Geräten, so dass ein Zugriff über diese Geräte bis zur Entsperrung nicht möglich ist,
- Entsperren von gesperrten Geräten, so dass ein Zugriff über diese Geräte möglich ist,
- Deregistrieren von Geräten, so dass ein Zugriff über diese Geräte erst nach erneuter erfolgreicher Freischaltung möglich ist sowie
- das Vergeben einer alternativen Bezeichnung für ein registriertes Gerät.
A_15438 - Komponente Autorisierung - Keine negative Beeinflussung des Aktensystems durch die Geräteverwaltung
Die Komponente Autorisierung MUSS sicherstellen, dass das Web-Frontend zur Geräteverwaltung der Komponente Autorisierung so geschützt wird, dass keine negative Beeinflussung des Aktensystems über diese Schnittstelle möglich ist. [<=]
A_21709 - Komponente Autorisierung - Definition Schnittstelle Geräteverwaltung
Die Schnittstelle zur Geräteverwaltung ist als REST-Service definiert und als [DeviceManagement] veröffentlicht. Sie MUSS wie dort definiert umgesetzt werden. [<=]
A_21711 - Komponente Autorisierung - Verwaltung eigener Geräte in der Geräteverwaltung
Die Komponente Autorisierung MUSS sicherstellen, dass der jeweilige Nutzer (Versicherter, Vertreter) über die Schnittstelle zur Geräteverwaltung ausschließlich seine eigenen Geräte verwalten kann. [<=]
A_14595 - Komponente Autorisierung - Pflegeprozess Geräteverwaltung
Die Komponente Autorisierung MUSS die interne Liste aller bekannten Geräte derart pflegen, dass ein Gerät nach spätestens einem Jahr nach der letzten Nutzung des Gerätes automatisch aus der Liste der registrierten Geräte gelöscht wird, und bei anschließender Verwendung durch einen Versicherten als unbekanntes Gerät über den Freischaltprozess neu freizuschalten ist. [<=]
A_15755-03 - Komponente Autorisierung - Protokollierung Geräteverwaltung
Die Komponente Autorisierung MUSS alle Vorgänge der Geräteverwaltung im Verwaltungsprotokoll des Versicherten mit PHR-470 für den Nutzer protokollieren. [<=]
6.6 Freischaltprozess Vertretereinrichtung
Die Komponente Autorisierung führt eine zusätzliche Autorisierung durch den Versicherten bei Einrichtung einer Vertretung für einen Vertreter durch. Der Versicherte wird aufgefordert, auf einen Link in einer E-Mail zu klicken, um die Speicherung eines AuthorizationKey für einen Vertreter zu autorisieren, den er über I_Authorization_Management_Insurant::putAuthorizationKey für diesen Vertreter hinterlegt. Die E-Mail mit dem Link zur Freischaltung wird an die E-Mail-Adresse des Versicherten geschickt, die auch für die Gerätefreischaltung des Versicherten verwendet wurde. Der folgende Ablauf zeigt informativ einen möglichen Ablauf des Freischaltprozesses.
Die Komponente Autorisierung startet den Freischaltprozess wenn der Versicherte mittels I_Authorization_Management_Insurant::putAuthorizationKey für einen konkreten mittels KVNR identifizierten Vertreter (als ActorID am AuthorizationKey) erstmalig eine Berechtigung hinterlegen möchte. Die Operation wird zunächst erfolgreich abgeschlossen, sofern kein fachlicher oder technischer Fehler dies verhindert. Dem Vertreter wird der Zugriff auf diesen Schlüssel jedoch solange verwehrt, wie der Versicherte noch nicht auf einen Freischaltlink in einer generierten Freischalt-E-Mail klickt. Die Komponente Autorisierung generiert zum Freischaltprozess der Vertretung einen eindeutigen Link auf Basis von Zufallszahlen und verschickt ihn an die vom Versicherten hinterlegte Benachrichtigungs-E-Mail-Adresse.
Durch Klicken auf diesen Link signalisiert der Versicherte der Komponente Autorisierung, dass die Hinterlegung eines AuthorizationKey für die KVNR d.h. ActorID des Vertreters rechtmäßig ist. Die Komponente Autorisierung speichert diesen Freischaltzustand für die ActorID des Vertreters und teilt dem Versicherten über die mittels Freischaltlink abgerufene Webseite mit, dass der UseCase des Schlüsselabrufs mittels I_Authorization_Insurant::getAuthorizationKey durch den Vertreter nun autorisiert ist. Der Vertreter kann nun den hinterlegten Schlüssel abrufen und eine Vertretung wahrnehmen.
Der Freischaltprozess der Vertretereinrichtung kann ohne eine Freischalt-URL ablaufen, wenn der Vertreter für einen Versicherten ohne FdV am FdV des Vertreters freigeschaltet wird.
A_17672 - Komponente Autorisierung - Freischaltprozess Vertretung Freischalt-URL
Die Komponente Autorisierung MUSS im Freischaltprozess Vertretereinrichtung eine Freischalt-URL erzeugen, die einzig aus dem FQDN der Komponente Autorisierung und einer Zufallszahl (base64-kodiert) mit mindestens 120 Bit Entropie und Erzeugung gemäß [gemSpec_Krypt#GS-A_4367] besteht und diese Freischalt-URL an die E-Mail-Adresse des via OwnerKVNR referenzierten Versicherten verschicken.
[<=]A_17673 - Komponente Autorisierung - Freischaltprozess Vertretung Freischalt-URL Transportsicherheit
Die Komponente Autorisierung MUSS in der generierten Freischalt-URL das https-Protokoll verwenden.
[<=]A_17674 - Komponente Autorisierung - Freischaltprozess Vertretung getAuthorizationKey erlauben
Die Komponente Autorisierung MUSS bei Abruf des Bestätigungslinks eines aktiven Freischaltprozesses zur OwnerKVNR und ActorId des zukünftigen Vertreters die Operation I_Authorization_Insurant::getAuthorizationKey für das Abrufen eines AuthorizationKey durch den Vertreter (ActorId = KVNR des zukünftigen Vertreters) erlauben und den Freischaltprozess für den Vorgang zu OwnerKVNR und ActorID beenden.
[<=]
Damit wird die Operation I_Authorization_Insurant::getAuthorizationKey bei zukünftigen Aufrufen durch den Vertreter für die freigeschaltete ActorID nicht mehr mit Fehler REPRESENTATIVE_PENDING abgebrochen.
A_17677 - Komponente Autorisierung - Freischaltprozess Vertretung Information
Die Komponente Autorisierung KANN in der HTTP-Response zum URL-Aufruf der Vertreterfreischaltung eine Meldung über die erfolgreiche Freischaltung an den aufrufenden Versicherten zurückgeben.
[<=]
A_17675 - Komponente Autorisierung - Freischaltprozess Vertretung beenden
Die Komponente Autorisierung MUSS den Vorgang eines Freischaltprozesses Vertretung zur OwnerKVNR und ActorID nach 6 Stunden Wartezeit beenden.
[<=]A_17676 - Komponente Autorisierung - Freischaltprozess Vertretung Löschen nach Beendigung
Die Komponente Autorisierung MUSS beim Beenden des Vorgangs eines Freischaltprozesses die generierte Freischalt-URL und alle dazugehörigen temporären Daten löschen.
[<=]6.7 Authentisierung der Forschungsdatenfreigabe
Die Komponente Autorisierung erstellt für ePA-FdV zwei unterschiedliche Transporttoken (JSON Web Token- JWT) zur Verwendung als Herkunftsnachweis. Eines zur Verwendung bei der Übermittelung von Daten an das Forschungsdatenzentrum und eines für die Vertrauensstelle. Die Ausstellung der Transporttoken erfolgt ausschließlich für autorisierte Nutzer.
Diese Transporttoken werden gleichzeitig durch einen Operationsaufruf der Schnittstelle der Komponente
Autorisierung als signierte JWT erstellt. Beide Token beinhalten die gleichen und wertidentischen Angaben, das Token
für die Vertrauensstelle zusätzlich das Lieferpseudonym LP.
Das Lieferpseudonym ist gemäß den Vorgaben der Vertrauensstelle zu bilden. Das notwendige Zertifikat der
Vertrauensstelle bezieht die Komponente Autorisierung eigenständig über den Downloadpunkt der Vertrauensstelle.
A_22700 - Komponente Autorisierung: Sicherer Download des Verschlüsselungszertifikats der Vertrauensstelle
Die Komponente Autorisierung MUSS täglich das Verschlüsselungszertifikat der Vertrauensstelle über eine vertrauliche und integritätsgeschützte Verbindung herunterladen und dabei den Server der Vertrauensstelle authentifizieren. [<=]
A_22701-01 - Komponente Autorisierung: Prüfung des Verschlüsselungszertifikats der Vertrauensstelle
Die Komponente Autorisierung MUSS die Gültigkeit des Verschlüsselungszertifikat der Vertrauensstelle gemäß [gemSpec_PKI#TUC_PKI_018] (OCSP-Graceperiod=4h, PolicyList enthält oid_epa_vst) prüfen.
[<=]
A_21832 - Komponente Autorisierung: Realisierung der Schnittstelle zur Erstellung der Transporttoken
Die Komponente Autorisierung MUSS die REST-Schnittstelle zur Erstellung der Transporttoken für ein ePA-FdV gemäß [I_Authorization_Token_Service] anbieten. [<=]
A_22696 - Komponente Autorisierung: Erstellung des Lieferpseudonyms
Die Komponente Autorisierung MUSS das Lieferpseudonym des Versicherten gemäß [I_VST] unter Verwendung der KVNR des Versicherten erstellen und im Transporttoken der Vertrauensstelle verwenden. [<=]
A_22697 - Komponente Autorisierung: Erstellung der Arbeitsnummer
Die Komponente Autorisierung MUSS für die Arbeitsnummer einen Zufallswert mit einer Mindestentropie von 120 Bit erzeugen und die Kodierung aus [I_VST] verwenden. [<=]
A_21799 - Komponente Autorisierung: Verwendungsdauer der Arbeitsnummer
Die Komponente Autorisierung MUSS bei jedem Aufruf der Operation getTransportToken der Schnittstelle [I_Authorization_Token_Service] eine neue Arbeitsnummer erzeugen und in den zurückgelieferten Transporttoken verwenden. [<=]
A_21892 - Komponente Autorisierung: Ausstellungszeitpunkt der Transporttoken
Die Komponente Autorisierung MUSS den Ausstellungszeitpunkt (Issued at "iat") in den Transporttoken setzen. Dieser Ausstellungszeitpunkt MUSS in allen bei einem Operationsaufruf erzeugten Transporttoken gleich sein. [<=]
A_21893 - Komponente Autorisierung: Gültigkeitsdauer der Transporttoken
Die Komponente Autorisierung MUSS den Zeitpunkt des Ablaufs der Gültigkeit (Expiration Time "exp") in den Transporttoken setzen. Dieser Wert MUSS auf den Wert "Ausstellungszeitpunkt " plus 24 Stunden gesetzt werden. Der Zeitpunkt des Ablaufs der Gültigkeit MUSS in allen bei einem Operationsaufruf erzeugten Transporttoken gleich sein. [<=]
A_22575 - Komponente Autorisierung: Signatur der Transporttoken
Die Komponente Autorisierung MUSS die Transporttoken jeweils mit der Identität ID.FD.SIG der Autorisierung signieren. Das Zertifikat zu ID.FD.SIG muss in beiden Token enthalten sein ("x5c"). [<=]
A_21821-01 - Komponente Autorisierung: Erstellung der Transporttoken
Die Komponente Autorisierung MUSS die Transporttoken als JSON-Web-Token gemäß [rfc7519] und [rfc7515] wie in [I_VST] definiert mit den folgenden Eigenschaften erstellen.
Transporttoken VST | Claim Name | Claim | Hinweis |
---|---|---|---|
Protected Header | |||
"typ" | "JWT" | ||
"alg" | "ES256" | ||
"x5c" | Signaturzertifikat ID.FD.SIG | ||
Payload | |||
"iss" | "https://authorization.gematik.de" | ||
"iat" | Zeitstempel Ausgabezeitpunkt | siehe A_21892 | |
"exp" | Zeitstempel Verfallzeitpunkt | siehe A_21893 | |
"wn" | Arbeitsnummer (working number) | gemäß A_21796 | |
"dp" | Lieferpseudonym (delivery pseudonym) | gemäß A_22696 |
Transporttoken FDZ | Claim Name | Claim | Hinweis |
---|---|---|---|
Protected Header | |||
"typ" | "JWT" | ||
"alg" | "ES256" | ||
"x5c" | Signaturzertifikat ID.FD.SIG | ||
Payload | |||
"iss" | "https://authorization.gematik.de" | ||
"iat" | Zeitstempel Ausgabezeitpunkt | siehe A_21892 | |
"exp" | Zeitstempel Verfallzeitpunkt | siehe A_21893 | |
"wn" | Arbeitsnummer (working number) | gemäß A_21796 |
Das Signaturzertifikat zu "x5c" basiert auf der Kurve "brainpoolP256r1". Der Wert "ES256" des Parameters "alg" gilt im Kontext der Transporttoken auch für diese Kurve. [<=]
7 Informationsmodell
Das folgende Informationsmodell der Autorisierung gibt eine Übersicht über die verwendeten Objekte mit ihren Eigenschaften und Beziehungen zueinander.
Das blau dargestellte Element bildet den verwalteten AuthorizationKey, der vom Versicherten für jeden berechtigten Nutzer in der Komponente Autorisierung hinterlegt wird, das Element EncryptedKeyContainer enthält dabei das mit dem Empfängerschlüssel individuell verschlüsselte Schlüsselmaterial der Akte (Akten- und Kontextschlüssel). Die Summe aller AuthorizationKeys zu einem über den RecordIdentifier identifizierten Konto eines über die OwnerKVNR identifizierten Versicherten bildet das logische Element des "Schlüsselrings" KeyChain. Zu einem über ActorID identifizierten Nutzer wird eine Liste autorisierter Geräte (grün dargestellt) geführt, die bei Zugriffen aus der Umgebung des Versicherten die Zulässigkeit des genutzten Geräts prüfen lässt. Für den Fall eines unbekannten und somit nicht in der Liste zulässiger Geräte enthaltenen Geräts wird ein Freischaltprozess über einen Benachrichtigungskanal gestartet. Die Zuordnung der Benachrichtigungsadressen zum jeweiligen Nutzer ist im Bild gelb dargestellt.
Für Versicherte und deren Vertreter wird der unveränderliche Teil der KVNR (VersichertenID) der eGK als ActorID verwendet. Für den Versicherten wird genau diese ID auch als OwnerKVNR genutzt, um den jeweiligen Versicherten als Eigentümer einer Akte zu identifizieren. Für Leistungserbringerinstitutionen und Kostenträger wird die Telematik-ID als ActorID verwendet. Für Leistungserbringerinstitutionen sowie für die Kostenträger wird keine Liste autorisierter Geräte und keine Liste von Benachrichtigungskanälen geführt. Die Eigenschaft validTo bezeichnet ein Gültigkeitsende-Datum, nach welchem (darauffolgender Tag) ein AuthorizationKey systemseitig automatisch gelöscht wird. Für den Versicherten als Eigentümer der Akte wird ein technisches Ende-Datum gleichbedeutend mit "unendlich" automatisch gesetzt. Für alle anderen AuthorizationKeys wird das Datum clientseitig belegt und definiert das Ende der vom Versicherten vergebenen Berechtigung. Mit dem optionalen Displayname je AuthorizationKey kann vom Versicherten ein lesbarer Name für eine Berechtigung vergeben werden, auf LE-Seite und den Abruf durch Kostenträger wird das Feld vollständig ignoriert.
Mittels der Angabe des RecordIdentifiers und der ActorID (Telematik-ID/KVNR) kann der zugehörige AuthorizationKey eines Berechtigten gefunden werden. Der AuthorizationKey enthält eine Liste verschlüsselter Akten- und Kontextschlüssel.
Das Element AUT-Referenz speichert in einer Liste die serialNumber der zur Authentisierung durch Versicherte in einer Akte verwendeten AUT- bzw. AUT_ALT-Zertifikate. Über diese Liste wird die Verwendung einer bisher unbekannten kryptografischen Identität erkannt und der Versicherte bzw. der Vertreter über den Benachrichtigungskanal informiert.
7.1 Namensräume
Für die Schnittstellen der Komponente Autorisierung werden die in der folgenden Tabelle definierten XML-Präfixe verwendet, um den Namensraum des XML-Dokumentes zu beschreiben.
Präfix |
Namensraum |
---|---|
xmlns:phrs |
http://ws.gematik.de/fd/phrs/AuthorizationService/v1.1 |
xmlns:SAML |
urn:oasis:names:tc:SAML:2.0:assertion |
xmlns:ds |
http://www.w3.org/2000/09/xmldsig# |
xmlns:xenc |
http://www.w3.org/2001/04/xmlenc# |
7.2 SAML-Profil und Tokeninhalte
In diesem Abschnitt werden die Inhalte der auszustellenden AuthorizationAssertion festgelegt. Eine AuthorizationAssertion wird für einen mittels AuthenticationAssertion authentifizierten Nutzer ausgestellt. Aus dessen AuthenticationAssertion werden identifizierende Attribute in die AuthorizationAssertion übernommen.
A_14491-05 - Komponente Autorisierung - Inhalte AuthorizationAssertion
Die Komponente Autorisierung MUSS Autorisierungsbestätigungen als SAML2-Assertion gemäß den Festlegungen der folgenden Tabelle ausstellen:
Assertion Element |
Usage Convention |
Beschreibung |
||
---|---|---|---|---|
Issuer |
[FQDN des authz Service der TI] |
Aussteller des Tokens |
||
Signature |
[nonQES-Signatur des SAML-Tokens] |
nonQES-Signatur des SAML-Tokens gemäß [SAML 2.0], die mit dem privaten Schlüssel der Ausstelleridentität C.FD.SIG der Komponente Autorisierung gemäß [ gemSpec_Krypt#A_17206] erstellt wird. Das Element ds:Signature/ds:KeyInfo/ds:X509 Data/ds:X509Certificate muss das zugehörige C.FD.SIG Zertifikat enthalten |
||
Subject |
||||
NameID |
[SubjectDN der SMC-B] oder [SubjectDN der eGK] |
wird übernommen aus der übergebenen AuthenticationAssertion |
||
SubjectConfirmation |
||||
@Method |
urn:oasis:names:tc:SAML:2.0:cm:bearer |
Protokoll zur Authentisierung |
||
Conditions |
||||
@NotBefore |
[Systemzeit der Komponente Autorisierung] |
Zeitpunkt, ab wann die Assertion nutzbar ist. |
||
@NotOnOrAfter |
[Systemzeit der Komponente Autorisierung + 15 Minuten] |
Zeitpunkt, zu dem die Gültigkeit der Assertion endet. |
||
AudienceRestriction |
Liste der Server, für die das Token ausgestellt wird. |
|||
Audience |
[FQDN des ePA-Aktensystems gemäß gemSpec_Aktensystem Kapitel ] |
Empfänger des Tokens |
||
AuthnStatement |
||||
@AuthnInstant |
[Systemzeit der Komponente Autorisierung] |
Systemzeitpunkt bei Erstellung des Tokens Hinweis: UTC |
||
AuthnContext | ||||
@ AuthnContextClassRef | [Art der Authentifizierung] | wird übernommen aus der übergebenen AuthenticationAssertion; | ||
AuthzDecisionStatement |
||||
@Resource |
[Telematik-ID] oder [10-stelliger, unveränderlicher Teil der KVNR] |
wird übernommen aus der AuthenticationAssertion Hinweis: Informationen und Beispiele zur AuthenticationAssertion finden sich in A_14927, A_15638 und A_18985-* |
||
@Decision |
Permit |
|||
Action |
[AuthorizationType] |
String gemäß der Autorisierungsentscheidung über den authentifizierten Nutzer |
||
@Namespace |
"http://ws.gematik.de/fa/phr/v1.0" |
|||
AttributeStatement |
||||
Attribute |
||||
@Name |
Resource ID "urn:oasis:names:tc:xacml:1.0:resource:resource-id" |
|||
AttributeValue |
[RecordIdentifier] |
RecordIdentifier der Akte, für die eine Autorisierungsbestätigung für den Nutzer ausgestellt wird. |
||
Attribute |
||||
@Name |
Gerätekennung "urn:gematik:fa:phr:1.0:device:device-id" |
Nur bei mittels ActorID authentifizierten Versicherten, bei Abruf durch Leistungserbringer und Kostenträger entfällt dieses Attribut. |
||
AttributeValue |
[DeviceID::Device] |
Die DeviceID::Device ist über die ActorID des AuthorizationKey referenziert, der über die KVNR des Versicherten einer übergebenen AuthenticationAssertion gefunden wird. |
||
Attribute |
||||
@Name |
Zustand des Kontos "urn:gematik:fa:phr:1.0:status:status-id" |
|||
AttributeValue |
[RecordState] |
Wert der Eigenschaft RecordState der KeyChain des via RecordIdentifier benannten Kontos. |
||
Attribute |
||||
@Name |
VersichertenID "urn:gematik:subject:subject-id" oder Telematik-ID "urn:gematik:subject:organization-id" |
Benutzerkennung für den die AuthorizationAssertion ausgestellt wird. |
||
AttributeValue |
[Telematik-ID] oder [10-stelliger, unveränderlicher Teil der KVNR] |
wird übernommen aus der AuthenticationAssertion |
[<=]
8 Verteilungssicht
Eine Darstellung der hardwareseitigen Verteilung des Produkttyps bzw. seiner Teilsysteme und der Einbettung in die physikalische Umgebung wird nicht benötigt.
9 Anhang A – Verzeichnisse
9.1 Abkürzungen
Kürzel |
Erläuterung |
---|---|
DiGA | Digitale Gesundheitsanwendung |
SAML |
Security Assertion Markup Language |
WS |
Web Services |
PKCS |
Public-Key Cryptography Standards |
ePA-FdV |
ePA-Frontend des Versicherten, welches das das ePA-Modul FdV inkludiert |
IHE |
Integrating the Healthcare Enterprise |
WSDL |
Web Services Description Language |
KVNR |
Krankenversichertennummer |
9.2 Glossar
Begriff |
Erläuterung |
---|---|
HSM |
Hardware Security Module, Gerät zur sicheren Speicherung kryptografischen Schlüsselmaterials |
ePA-Modul FdV | Modul der dezentralen ePA-Fachlogik zur Nutzung durch den Versicherten in einem ePA-Frontend des Versicherten |
Das Glossar wird als eigenständiges Dokument (vgl. [gemGlossar]) zur Verfügung gestellt.
9.3 Abbildungsverzeichnis
- Abbildung 1: Anwendungsfälle der Schlüsselverwaltung nach Umgebung
- Abbildung 2: Komponente Autorisierung, benachbarte Komponenten und Produkttypen
- Abbildung 3: GERROR-Struktur zur Rückgabe einer Fehlermeldung
- Abbildung 4: Informativer Ablauf des Geräte-Freischaltprozesses
- Abbildung 5: Informativer Ablauf des Freischaltprozesses für Vertretung
- Abbildung 6: Informationsmodell der intern verwalteten Daten
- Abbildung 7: Informationsmodell der intern verwalteten Daten
9.4 Tabellenverzeichnis
- Tabelle 1: Anwendungsfälle der Schlüsselverwaltung nach Umgebung
- Tabelle 2: Parameter des Verwaltungsprotokolls
- Tabelle 3: Fehlercodes zu Fehlern gemäß Operationsdefinition
- Tabelle 4: Herstellerspezifische Fehlerdefinition
- Tabelle 5: Schnittstellen der Komponente Autorisierung
- Tabelle 6: I_Authorization::getAuthorizationKey Definition
- Tabelle 7: I_Authorization_Insurant::getAuthorizationKey Definition
- Tabelle 8: I_Authorization_Management::putAuthorizationKey - Definition
- Tabelle 9: I_Authorization_Management::checkRecordExists - Definition
- Tabelle 10: I_Authorization_Management::getAuthorizationList - Definition
- Tabelle 11: I_Authorization_Management::getAuthorizationState - Definition
- Tabelle 12: I_Authorization_Management_Insurant::putAuthorizationKey - Definition
- Tabelle 13: I_Authorization_Management_Insurant::deleteAuthorizationKey - Definition
- Tabelle 14: I_Authorization_Management_Insurant::replaceAuthorizationKey - Definition
- Tabelle 15: I_Authorization_Management_Insurant::getAuditEvents - Definition
- Tabelle 16: I_Authorization_Management_Insurant::getSignedAuditEvents - Definition
- Tabelle 17: I_Authorization_Management_Insurant::putNotificationInfo - Definition
- Tabelle 18: I_Authorization_Management_Insurant::getNotificationInfo - Definition
- Tabelle 19: I_Authorization_Management_Insurant::getAuthorizationList - Definition
- Tabelle 20: I_Authorization_Management_Insurant::getAuthorizationList - Definition
- Tabelle 21: Tab_Autorisierung - Operation I_Authorization_Management_Insurant::startKeyChange Definition
- Tabelle 22 Tab_Autorisierung -Technische Fehlermeldung KEY_LOCKED
- Tabelle 23: Tab_Autorisierung - Operation I_Authorization_Management_Insurant::putForReplacement Definition
- Tabelle 24: Tab_Autorisierung - Operation I_Authorization_Management_Insurant::finishKeyChange Definition
- Tabelle 25: Tab_Autorisierung_43 - Zusätzliche Parameter des § 291a-Protokolls für ein Rollback im Rahmen der Umschlüsselung
- Tabelle 26: Berechtigungstypen für AuthorizationType
- Tabelle 27: Namensräume
- Tabelle 28: Inhalte Autorisierungsbestätigung
- Tabelle 29: Referenzierte Dokumente der gematik
- Tabelle 30: Referenzierte externe Dokumente
9.5 Referenzierte Dokumente
9.5.1 Dokumente der gematik
Die nachfolgende Tabelle enthält die Bezeichnung der in dem vorliegenden Dokument referenzierten Dokumente der gematik zur Telematikinfrastruktur. Der mit der vorliegenden Version korrelierende Entwicklungsstand dieser Konzepte und Spezifikationen wird pro Release in einer Dokumentenlandkarte definiert. Version und Stand der referenzierten Dokumente sind daher in der nachfolgenden Tabelle nicht aufgeführt. Deren zu diesem Dokument jeweils gültige Versionsnummer ist in der aktuellen, von der gematik veröffentlichten Dokumentenlandkarte enthalten, in der die vorliegende Version aufgeführt wird.
[Quelle] |
Herausgeber: Titel |
---|---|
[gemGlossar] |
Glossar der Telematikinfrastruktur |
[gemSysL_ePA] |
Systemspezifisches Konzept ePA |
[AuthorizationService.wsdl] |
Schnittstellendefinition Komponente Autorisierung (src/schema/fd/phr/AuthorizationService.wsdl), https://github.com/gematik/api-ePA |
[AuthorizationService.xsd] |
Schemadefinition der Schnittstellen der Komponente Autorisierung (src/schema/fd/phr/AuthorizationService.xsd), https://github.com/gematik/api-ePA |
[TelematikError.xsd] |
Schemadefinition Fehlermeldungen TelematikError (src/schema/tel/error/TelematikError.xsd), https://github.com/gematik/api-ePA |
[PHR_Common.xsd] |
Schemadefinition für übergreifende ePA-Datentypen (src/schema/fd/phr/PHR_Common.xsd), https://github.com/gematik/api-ePA |
[gemKPT_Arch_TIP] |
Konzept Architektur der TI-Plattform |
[gemSpec_Perf] |
Spezifikation Performancevorgaben und Mengengerüst |
[gemSpec_Krypt] |
Spezifikation der in der TI zulässigen kryptografischen Verfahren |
[gemSpec_OID] |
Spezifikation Festlegung von OIDs |
[gemSpec_OM] |
Spezifikation Operation und Maintenance |
[gemSpec_PKI] |
Übergreifende Spezifikation PKI |
[gemSpec_TB_Auth] |
Übergreifende Spezifikation Tokenbasierte Authentisierung |
[gemSpec_TSL] |
Spezifikation der Schnittstelle des TSL-Dienstes |
[DeviceManagement] | Schnittstelle zur Geräteverwaltung (src/openapi/device_management.yaml), https://github.com/gematik/api-ePA |
[I_Authorization_Token_Service] | gematik: I_Authorization_Insurant.yaml REST-Schnittstelle zur Ausstellung der Transporttoken für die Freigabe von Dokumenten für Forschungszwecke, Version 1.0.0 GitHub: https://github.com/gematik/api-ePA Path: src/openapi |
9.5.2 Weitere Dokumente
[Quelle] |
Herausgeber (Erscheinungsdatum): Titel |
---|---|
[I_FDZ] | "Forschungsdatenzentrum - Schnittstellenkonzept zur Datenfreigabe ePA", Bundesamt für Arzneimittel und Medizinprodukte Version 1.0, xxx.04.2022 |
[I_VST] | "Vertrauensstelle DATRAV Pseudonymisierungskonzept zur Datenübertragung im Rahmen der Datenfreigabe aus der elektronischen Patientenakte (ePA Lieferpseudonym)" Robert Koch-Institut Version 1.5 14.04.2022 |
[SAML2.0] |
Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0 http://docs.oasis-open.org/security/saml/v2.0/ |
[SOAP] |
W3C (2007): SOAP Version 1.2 Part 1: Messaging Framework (Second Edition), https://www.w3.org/TR/soap12-part1/ |
[WSDL] |
W3C: Web Services Description Language (WSDL) 1.1 https://www.w3.org/TR/wsdl.html |
[WSDL11SOAP12] |
W3C (2006): WSDL 1.1 Binding Extension for SOAP 1.2, https://www.w3.org/Submission/wsdl11soap12/ |
[WSIBP] |
Web-Services Interoperability Consortium (2010): WS-I Basic Profile V2.0 (final material), http://ws-i.org/Profiles/BasicProfile-2.0-2010-11-09.html |
[WS-Trust1.4] |
WS-Trust 1.4 http://docs.oasis-open.org/ws-sx/ws-trust/v1.4/errata01/os/ws-trust-1.4-errata01-os-complete.pdf |
[WSS] |
OASIS (2006): Web Services Security: SOAP Message Security 1.1 (WS-Security 2004), http://www.oasis-open.org/committees/download.php/16790/wss-v1.1-spec-os-SOAPMessageSecurity.pdf |
[WSS-SAML] |
OASIS (2006): Web Services Security: SAML Token Profile 1.1, https://www.oasis-open.org/committees/download.php/16768/wss-v1.1-spec-os-SAMLTokenProfile.pdf |
[XSPA] |
OASIS: Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of Security Assertion Markup Language (SAML) for Healthcare Version 2.0 http://docs.oasis-open.org/xspa/saml-xspa/v2.0/saml-xspa-v2.0.html |
[SGB V] |
BGBl. I S.2477 (20.12.1988): Sozialgesetzbuch, Fünftes Buch Zuletzt geändert durch Art. 4 G v. 14.4.2010 I 410 Gesetzliche Krankenversicherung |
[RFC-5322] |
Internet Message Format - Format für E-Mail-Adressen https://datatracker.ietf.org/doc/html/rfc5322 |
[RFC5280] |
Internet X.509 Public Key Infrastructure Certificate, Prüfung von Zertifikaten entlang einer Zertifikatskette (inkl. Cross-Zertifikaten) bis zu einem Vertrauensanker (Root-CA) https://datatracker.ietf.org/doc/html/rfc5280 |
[rfc7515] | IETF (Mai 2015): JSON Web Signature (JWS), RFC 7515 https://datatracker.ietf.org/doc/html/rfc7515 |
[rfc7519] | IETF (Mai 2015): JSON Web Token (JWT)", RFC 7519 https://datatracker.ietf.org/doc/html/rfc7519 |