EFA Policy Provider Service Functional Model

Aus Hl7wiki
Implementierungsleitfaden
Wechseln zu: Navigation, Suche
(Die Operation issueAccessToken wurde vom Ressource Manager zum Policy Provider verschoben. Die Operation redeemAccessToken wurde um den Aspekt P2P erweitert.)
(redeemAccessToken: redeemAccessToken des Ressource Manager und des Policy Providers zusammengeführt)
Zeile 111: Zeile 111:
 
{|class="wikitable" style="text-align: left; cellpadding: 10;"
 
{|class="wikitable" style="text-align: left; cellpadding: 10;"
 
!Operation
 
!Operation
! colspan="3"|requestPolicy
+
! colspan="3"|redeemAccessPolicy
 
|-
 
|-
 
|Funktionalität
 
|Funktionalität
| colspan="2"| Die Operation tauscht ein Berechtigungstoken gegen eine Subject Access Policy. Das Berechtigungstoken muss von diesem EFA-Provider ausgestellt worden sein und muss mit einer Token Redeem Policy gesichert sein, die bei diesem EFA-Provider registriert ist. Die Subject Access Policy gibt dem Aufrufer einen vertrauenswürdigen Nachweis darüber, dass das Berechtigungstoken eingelöst wurde.
+
| colspan="2"| Diese Operation tauscht ein Berechtigungstoken gegen eine Subject Access Policy. Wenn das Berechtigungstoken nicht bei diesem EFA-Provider ausgestellt wurde, dann wird der Operationsaufruf an die ausstellende EFA-Provider-Domäne weitergereicht.
 
|-
 
|-
|rowspan="2" | Eingabe  
+
|rowspan="3" | Eingabe  
 
|[[cdaefa:EFA_Security_Informationsmodell#context|context]]
 
|[[cdaefa:EFA_Security_Informationsmodell#context|context]]
 
|Nutzerkontext, der eine [[cdaefa:EFA_Security_Informationsmodell#subjectIdentity|subjectIdentity]] zur Identifizierung des Nutzers enthält, der das Berechtigungstoken einlösen will.
 
|Nutzerkontext, der eine [[cdaefa:EFA_Security_Informationsmodell#subjectIdentity|subjectIdentity]] zur Identifizierung des Nutzers enthält, der das Berechtigungstoken einlösen will.
 +
|-
 +
|[[cdaefa:EFA_Business_Informationsmodell#patientID|patientID]] (conditional)
 +
|Die ID des Patienten in der Affinity Domain des Arztes, der das Token einreicht. Das EFA-Teilnehmersystem muss diesen Parameter verwenden. Der Policy-Provider darf diesen Parameter beim Weiterleiten nicht verwenden.
 
|-
 
|-
 
|[[cdaefa:EFA_Business_Informationsmodell#accessToken|accessToken]]
 
|[[cdaefa:EFA_Business_Informationsmodell#accessToken|accessToken]]
Zeile 129: Zeile 132:
 
|Vorbedingungen
 
|Vorbedingungen
 
| colspan="2"|
 
| colspan="2"|
 +
* Die Fallakte ist im Zustand "offen".
 
|-
 
|-
 
|Ablauf
 
|Ablauf
 
| colspan="2"|
 
| colspan="2"|
 +
Wenn dieser EFA-Provider nicht der ausstellende EFA-Provider ist:
 +
# Identifiziere den EFA-Provider, der das Berechtigungstoken ausgestellt hat: den ausstellenden EFA-Provider. Dessen communityID ist im Berechtigungstoken kodiert.
 +
# Rufe die Operation [[cdaefa:EFA_Policy_Provider_SFM#redeemAccessToken|''redeemAccessToken'']] des Policy Providers des ausstellenden EFA-Providers auf.
 +
# Registriere die subjectAccessPolicy.
 +
# Erzeuge eine Partition für die Fallakte. Verknüpfe sie mit patientID und dem purpose-Code aus der Berechtigungsregel.
 +
# Wenn der ausstellende EFA-Provider nicht der eigene EFA-Provider ist:
 +
## Rufe die Operation [[cdaefa:EFA_Anwendungsdienste_(logische_Spezifikation)#listRecordLocations|''listRecordLocations'']] des Ressource Managers des ausstellenden EFA-Providers auf.
 +
## Für jede communityID in der Ergebnisliste: Rufe die Operation [[cdaefa:EFA_Anwendungsdienste_(logische_Spezifikation)#registerRecordLocation|''registerRecordLocation'']] des Ressource Manager des entsprechenden EFA-Providers auf.
 +
 +
Wenn dieser EFA-Provider der ausstellende EFA-Provider ist:
 
# Identifiziere die Redeem Policy, die zum Berechtigungstoken gehört.
 
# Identifiziere die Redeem Policy, die zum Berechtigungstoken gehört.
 
# Prüfe das Berechtigungstoken.
 
# Prüfe das Berechtigungstoken.
Zeile 143: Zeile 157:
 
Folgende Fehler müssen erkannt und rückgemeldet werden:
 
Folgende Fehler müssen erkannt und rückgemeldet werden:
 
* [[cdaefa:EFA Fehlermeldungen und Warnungen|Gemeinsame Fehlermeldungen und Warnungen]]
 
* [[cdaefa:EFA Fehlermeldungen und Warnungen|Gemeinsame Fehlermeldungen und Warnungen]]
 +
* Die Einwilligung zu der Fallakte lässt keine Ad-Hoc-Autorisierungen über Berechtigungstoken zu. (Fehler)
 +
* Die Redeem-Policy schließt den Einreicher von der Einlösung des Berechtigungstoken aus. (Fehler)
 
* Das Berechtigungstoken ist unbekannt. Es existiert keine Redeem Policy.
 
* Das Berechtigungstoken ist unbekannt. Es existiert keine Redeem Policy.
 
* Der EFA-Teilnehmer ist nicht berechtigt, das Berechtigungstoken einzulösen.
 
* Der EFA-Teilnehmer ist nicht berechtigt, das Berechtigungstoken einzulösen.

Version vom 8. April 2014, 09:20 Uhr


Anmerkung: Die Kürzel unter den einzelnen Überschriften dienen der Unterstützung des Kommentierungsverfahrens. Bitte geben Sie bei einem Kommentar oder einem Verbesserungsvorschlag zu dieser Spezifikation immer das Kürzel des Abschnitts an, auf den sich Ihr Kommentar bezieht. Alle Kommentare werden in der Lasche "Diskussion" zu der kommentierten Seite gesammelt und gegenkommentiert.
Hinweise zum Kommentierungsverfahren einschließlich aller Formulare und Kontaktadressen finden Sie auf der Seite "Kommentierung EFAv2.0".


EFA Policy Provider

Bitte markieren Sie Kommentare zu diesem Abschnitt mit dem Code {Eocye.01}

Der EFA Policy Provider ist für die Verwaltung der Berechtigungen in Form von Policies in einem Policy Repository zuständig. Berechtigungen sind an einen bestimmten Zweck gebunden und steuern den Zugriff von EFA-Teilnehmern auf eine Fallakte.

requestPolicy

Bitte markieren Sie Kommentare zu diesem Abschnitt mit dem Code {Eocye.01.01}

Zur Umsetzung des Policy Push Verfahrens muss der EFA Policy Provider eine Schnittstelle zum Abruf der für einen Nutzerkontext und eine zu verarbeitende Fallakte gültigen Policy bereitstellen.

Operation requestPolicy
Funktionalität Stellt eine für einen angegebenen Nutzer zum Zugriff auf eine benannte Fallakte gültige Policy in Form eines Berechtigungsregelwerks bereit.
Eingabe context Nutzerkontext, der eine subjectIdentity zur Identifizierung des Nutzers enthält, dessen Berechtigungen auf der angegebenen Fallakte abgerufen werden sollen.
ecrRef Eindeutige Identifizierung der Fallakte, für die Berechtigungen abgefragt werden sollen.
consentInfo (optional) Informationen zu einer vom Patienten gegebenen Einwilligung. Dieses Argument wird für Ad-Hoc-Berechtigungen und Additive Berechtigungen benötigt und näher ausspezifiziert, wenn die entsprechenden Verfahren im Detail definiert sind.
Rückgabe subjectAccessPolicy Für den aktuellen Kontext und die angegebene Fallakte gültigen Berechtigungsregeln.
Vorbedingungen
  1. Der EFA-Teilnehmer hat sich authentisiert und ein Nachweis liegt vor
  2. Policies für die angefragte Fallakte sind beim Policy Provider registriert
Ablaufsequenz
  1. Überprüfe die Authentizität des Authentisierungsnachweises
  2. Ermittle die zu verwendende Access Policy anhand der Eingabedaten
  3. Liefere Access Policy an den Aufrufer zurück
Mögliche Fehler MissingAttributes Für die Auswahl der zu verwendenden Policy erforderliche Angaben zum EFA-Teilnehmer fehlen.

issueAccessToken

Bitte markieren Sie Kommentare zu diesem Abschnitt mit dem Code {Eocye.01.02}

Operation issueAccessToken
Funktionalität Diese Operation stellt ein Berechtigungstoken für eine Fallakte aus. Zu dem Berechtigungstoken gehört eine Redeem-Policy, die beim Policy Provider registriert wird. Die EFA-Berechtigungsregel der Fallakte wird durch diese Operation nicht verändert.
Aufrufer EFA-Teilnehmersystem der gleichen EFA-Provider-Domäne
Eingabe context Gibt den Sicherheitskontext vor, in dem die Operation ausgeführt wird. Bezugsquelle: EFA Kontext Manager openContext.
ecrRef Eindeutige Identifizierung der Fallakte, für die ein Berechtigungstoken ausgestellt werden soll.
Rückgabe accessToken Ein Berechtigungstoken, das den Leistungserbringer, der es einreicht, zum Zugriff auf die Fallakte berechtigt.
Vorbedingungen
Ablauf
  1. Erzeuge eine Berechtigungstoken-Kennung. Sie enthält die communityID dieses EFA-Providers und eine randomisierte, eindeutige Kennung. Siehe EFA-1.2 Offline-Token-Spezifikation.
  2. Erzeuge eine Redeem-Policy. (Einschränkung Rolle, Fachbereich, HCP-Identität, Verfallsdatum). Verknüpfe Sie mit der Kennung des Berechtigungstokens. Registriere die Redeem-Policy beim Policy-Provider.
  3. Erzeuge eine Berechtigungsregel. Sie sagt aus, welche Rechte der Einlöser des Berechtigungstoken erhält. Verknüpfe die Berechtigungsregel mit der Fallakte (ecrRef). Registriere die Berechtigungsregel beim Policy Provider.
  4. Gib die Kennung des Berechtigungstokens dem Aufrufer.
Fehler und Warnungen

Folgende Fehler müssen erkannt und rückgemeldet werden:

redeemAccessToken

Bitte markieren Sie Kommentare zu diesem Abschnitt mit dem Code {Eocye.01.03}

Operation redeemAccessPolicy
Funktionalität Diese Operation tauscht ein Berechtigungstoken gegen eine Subject Access Policy. Wenn das Berechtigungstoken nicht bei diesem EFA-Provider ausgestellt wurde, dann wird der Operationsaufruf an die ausstellende EFA-Provider-Domäne weitergereicht.
Eingabe context Nutzerkontext, der eine subjectIdentity zur Identifizierung des Nutzers enthält, der das Berechtigungstoken einlösen will.
patientID (conditional) Die ID des Patienten in der Affinity Domain des Arztes, der das Token einreicht. Das EFA-Teilnehmersystem muss diesen Parameter verwenden. Der Policy-Provider darf diesen Parameter beim Weiterleiten nicht verwenden.
accessToken Über die Operation issueAccessToken ausgestelltes Berechtigungstoken, mit dem der Einreicher als Teilnehmer an der im Token kodierten Fallakte registriert werden soll.
Rückgabe subjectAccessPolicy Der vertrauenswürdige Nachweis dafür, dass das Berechtigungstoken eingelöst wurde.
Vorbedingungen
  • Die Fallakte ist im Zustand "offen".
Ablauf

Wenn dieser EFA-Provider nicht der ausstellende EFA-Provider ist:

  1. Identifiziere den EFA-Provider, der das Berechtigungstoken ausgestellt hat: den ausstellenden EFA-Provider. Dessen communityID ist im Berechtigungstoken kodiert.
  2. Rufe die Operation redeemAccessToken des Policy Providers des ausstellenden EFA-Providers auf.
  3. Registriere die subjectAccessPolicy.
  4. Erzeuge eine Partition für die Fallakte. Verknüpfe sie mit patientID und dem purpose-Code aus der Berechtigungsregel.
  5. Wenn der ausstellende EFA-Provider nicht der eigene EFA-Provider ist:
    1. Rufe die Operation listRecordLocations des Ressource Managers des ausstellenden EFA-Providers auf.
    2. Für jede communityID in der Ergebnisliste: Rufe die Operation registerRecordLocation des Ressource Manager des entsprechenden EFA-Providers auf.

Wenn dieser EFA-Provider der ausstellende EFA-Provider ist:

  1. Identifiziere die Redeem Policy, die zum Berechtigungstoken gehört.
  2. Prüfe das Berechtigungstoken.
  3. Lösche die Redeem Policy.
  4. Identifiziere die Token Access Policy, die für das Berechtigungstoken registriert wurde.
  5. Füge die Identität des EFA-Teilnehmers zur Token Access Policy hinzu, um eine Subject Access Policy zu erhalten.
  6. Gib die Subject Access Policy dem Aufrufer.
Fehler und Warnungen

Folgende Fehler müssen erkannt und rückgemeldet werden:

  • Gemeinsame Fehlermeldungen und Warnungen
  • Die Einwilligung zu der Fallakte lässt keine Ad-Hoc-Autorisierungen über Berechtigungstoken zu. (Fehler)
  • Die Redeem-Policy schließt den Einreicher von der Einlösung des Berechtigungstoken aus. (Fehler)
  • Das Berechtigungstoken ist unbekannt. Es existiert keine Redeem Policy.
  • Der EFA-Teilnehmer ist nicht berechtigt, das Berechtigungstoken einzulösen.
  • Das Berechtigungstoken ist ungültig.

Querverweise und Referenzen