HL7 Czech Health information exchange Implementation Guide
0.0.1 - ci-build
HL7 Czech Health information exchange Implementation Guide, published by HL7 Czech Republic. This guide is not an authorized publication; it is the continuous build for version 0.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7-cz/HIE/ and changes regularly. See the Directory of published versions
Transakce Retrieve ATNA Audit Event [ITI‑81] je definována v IHE ITI TF-2 a v dodatku IHE ITI Supplement Add RESTful Query to ATNA. V národním rozšíření platí následující pravidla:
Zpráva Retrieve ATNA Audit Event musí být provedena jako HTTP GET žádost směrem k úložišti auditních záznamů (Audit Record Repository). Tato zpráva je FHIR search dotaz (popsáno v http://hl7.org/fhir/R4/search.html) na zdroje typu AuditEvent(popsáno v http://hl7.org/fhir/R4/auditevent.html). Formát URL je následující:
<scheme>://<authority>/<path>/AuditEvent?date=ge[start-time]&date=le[stop-time]&<query>
kde:
<scheme> musí být https.
<query> musí obsahovat alespoň jeden parametr určující subjekt údajů podle Další ATNA parametry dotazu a může obsahovat další parametry ATNA. Pokud parametr určující subjekt údajů není obsažen, server odpoví HTTP kódem 400 Bad Request.
Žurnál činností vyhledává auditní záznamy pro subjekt údajů – pacienta, zdravotnického pracovníka (ZP) nebo poskytovatele zdravotních služeb (PZS). Subjekt se určuje jedním z těchto parametrů:
| Subjekt | Parametr | Porovnává se s | Příklad hodnoty |
|---|---|---|---|
| Pacient | entity.identifier |
AuditEvent.entity.what.identifier (ParticipantObjectID v DICOM) |
https://ncez.mzcr.cz/fhir/sid/rid\|2066425387 (RID, případně DRID) |
| Zdravotnický pracovník | altid |
AuditEvent.agent.altId (identifikátor ZP z KRZP) |
2000000090092 |
| Poskytovatel zdravotních služeb | agent:identifier |
AuditEvent.agent.who.identifier (IČO PZS z přístupového tokenu) |
https://ncez.mzcr.cz/fhir/sid/ico\|12345678 |
Parametry typu token MUSÍ obsahovat systém i hodnotu. Spotřebitel auditu smí používat ostatní parametry uvedené v profilu Retrieve Audit Event [ITI‑81].
Příklad dotazu na auditní záznamy pacienta:
https://example.com/ARRservice/AuditEvent?date=ge2020-03-22&date=le2025-03-22&entity.identifier=https://ncez.mzcr.cz/fhir/sid/rid|2066425387
Příklad dotazu na auditní záznamy zdravotnického pracovníka:
https://example.com/ARRservice/AuditEvent?date=ge2025-01-01&date=le2025-03-31&altid=2000000090092
Zdroje AuditEvent vrácené v Bundle musí být v souladu s profily obsahu auditních událostí popsanými ve Volume 3 – Profily obsahu auditních událostí.
Zabezpečení transakce vychází ze Standardu akreditovaných afinitních domén (AAfD). Transportní vrstva (mTLS) a aplikační vrstva (přístupový token IUA) se používají vždy současně, nejde o alternativy.
Transakce MUSÍ být zabezpečena protokolem TLS 1.3 (minimálně TLS 1.2 se silnými šifrovacími sadami) se vzájemnou autentizací uzlů (mTLS) dle transakce ATNA Authenticate Node [ITI-19]. Klient i server se prokazují certifikátem X.509 vydaným certifikační autoritou MZČR a každá strana ověřuje platnost certifikátu protistrany. mTLS se používá pro veškerou komunikaci: mezi IS PZS a AAfD, mezi AAfD navzájem i mezi AAfD a centrálními službami elektronického zdravotnictví.
Klient MUSÍ v každém požadavku předat přístupový token dle profilu IHE IUA ve formátu JSON Web Token (JWT):
Authorization: Bearer dle transakce Incorporate Access Token [ITI-72].Předává-li domovská AAfD požadavek do jiné AAfD, získá pro cílovou AAfD nový přístupový token mechanismem OAuth 2.0 Token Exchange dle RFC 8693: subject_token je přístupový token PZS, actor_token je systémový token volající AAfD. Cílová AAfD ověří v Katalogu služeb, že volající AAfD je akreditovaná, a vydá token, který obsahuje identitu PZS (sub) a identitu zprostředkující AAfD (act). Přímé předávání tokenu PZS do jiné AAfD bez validace není dovoleno.
Aktéři MUSÍ podporovat zpracování hlavičky traceparent dle W3C Trace Context.
Konzumentem auditních záznamů (Audit Consumer) je centrální komponenta elektronického zdravotnictví Žurnál činností. Prokazuje se certifikátem při mTLS a svým systémovým přístupovým tokenem. Úložiště auditních záznamů MUSÍ ověřit, že volající je oprávněn auditní záznamy číst, a vrátit pouze záznamy týkající se dotazovaného subjektu.
Úložiště auditních záznamů MUSÍ zaznamenat každý dotaz na auditní záznamy jako auditní událost dle Profilu obsahu přístupu k auditní stopě, včetně identity volajícího z mTLS a z přístupového tokenu (viz Zaznamenání zabezpečení komunikace).