SMART on FHIR – áttekintés

A helyettesítő orvosi alkalmazások és újrafelhasználható technológiák (SMART on FHIR) egy egészségügyi szabvány, amellyel az alkalmazások egy adattáron keresztül férhetnek hozzá a klinikai információkhoz. Egy nyílt szabványokon alapuló biztonsági réteget ad hozzá, például az OAuth2-t és az OpenID Connectet az FHIR-felületekhez az EHR-rendszerekkel való integráció érdekében. A SMART on FHIR használata legalább három fontos előnnyel jár:

  • Az alkalmazások ismert módszerekkel rendelkeznek az FHIR-adattárak hitelesítésének/engedélyezésének beszerzéséhez.
  • A SMART on FHIR használatával egy FHIR-adattárhoz hozzáférő felhasználók a felhasználóhoz társított erőforrásokra korlátozódnak ahelyett, hogy az adattárban lévő összes adathoz hozzáférnek.
  • A felhasználók a SMART klinikai hatókörök használatával hozzáférést biztosíthatnak az alkalmazásoknak az adataik egy további korlátozott készletéhez.

Az alábbi oktatóanyagok ismertetik a SMART on FHIR-alkalmazások FHIR szolgáltatással való engedélyezésének lépéseit.

Előfeltételek

SMART on FHIR using AHDS Samples OSS (SMART on FHIR(Enhanced))

1. lépés: Az FHIR SMART felhasználói szerepkör beállítása

Kövesse a Felhasználók kezelése: Felhasználók hozzárendelése szerepkörhöz szakasz lépéseit. Az "FHIR SMART User" szerepkörhöz hozzáadott felhasználók hozzáférhetnek az FHIR szolgáltatáshoz, ha kéréseik megfelelnek a SMART on FHIR implementálási útmutatójának, például a hozzáférési jogkivonattal rendelkező kérésnek, amely egy fhirUser jogcímet és egy klinikai hatókörre vonatkozó jogcímet tartalmaz. Az e szerepkörben a felhasználók számára biztosított hozzáférést ezután korlátozni fogják az fhirUser-rekeszükhöz társított erőforrások és a klinikai hatókörökre vonatkozó korlátozások.

2. lépés: Az FHIR-kiszolgáló integrálása mintákkal

Kövesse az Azure Health Data Service-minták OSS-ének lépéseit. Ez lehetővé teszi az FHIR-kiszolgáló integrálását más Azure-szolgáltatásokkal (például APIM, Azure-függvények stb.).

Megjegyzés

A minták nyílt forráskódú kódok, és használat előtt tekintse át a GitHubon található információkat és licencelési feltételeket. Ezek nem részei az Azure Health Data Service-nek, és a Microsoft ügyfélszolgálata nem támogatják őket. Ezek a minták bemutatják, hogyan használható együtt az Azure Health Data Services és más nyílt forráskódú eszközök az ONC (g)(10) megfelelőség bemutatására az Azure Active Directory identitásszolgáltatói munkafolyamatként való használatával.

INTELLIGENS az FHIR-proxyn

Kattintson a kibontásához!

Megjegyzés

Ez egy másik lehetőség a SMART on FHIR(Enhanced) fent említett. A SMART on FHIR Proxy beállítás csak az EHR indítási sorrendjét engedélyezi.

A SMART FHIR-en való használatához először hitelesítenie és engedélyeznie kell az alkalmazást. Amikor először használja a SMART-t az FHIR-ben, rendszergazdai hozzájárulást is kell kapnia ahhoz, hogy az alkalmazás hozzáférjen az FHIR-erőforrásokhoz.

Ha nem rendelkezik tulajdonosi szerepkörrel az alkalmazásban, lépjen kapcsolatba az alkalmazás tulajdonosával, és kérje meg őket, hogy adjanak rendszergazdai hozzájárulást Az alkalmazásban.

Ha rendelkezik rendszergazdai jogosultságokkal, az alábbi lépéseket követve adhat rendszergazdai hozzájárulást saját magának közvetlenül. (Később rendszergazdai hozzájárulást is adhat magának, amikor a rendszer kéri az alkalmazásban.) Ugyanezekkel a lépésekkel hozzáadhat más felhasználókat tulajdonosként, így megtekinthetik és szerkeszthetik ezt az alkalmazásregisztrációt.

Ha saját magát vagy egy másik felhasználót szeretne hozzáadni egy alkalmazás tulajdonosaként:

  1. Az Azure Portalon nyissa meg az Azure Active Directory elemet.
  2. A bal oldali menüben válassza az Alkalmazásregisztráció lehetőséget.
  3. Keresse meg a létrehozott alkalmazásregisztrációt, majd válassza ki.
  4. A bal oldali menü Kezelés területén válassza a Tulajdonosok lehetőséget.
  5. Válassza a Tulajdonosok hozzáadása lehetőséget, majd adja hozzá saját magát vagy azt a felhasználót, akihez rendszergazdai hozzájárulást szeretne adni.
  6. Válassza a Mentés lehetőséget

2. lépés: A SMART engedélyezése FHIR-proxyn

A SMART on FHIR használatához Audience az FHIR szolgáltatás URI-jának megfelelő azonosító URI szükséges. Az Azure API for FHIR standard konfigurációja https://azurehealthcareapis.coma értékét használjaAudience. Beállíthat azonban egy értéket is, amely megfelel az FHIR-szolgáltatás adott URL-címének (például https://MYFHIRAPI.azurehealthcareapis.com). Erre akkor van szükség, ha a SMART on FHIR proxyval dolgozik.

Ha engedélyezni szeretné a SMART on FHIR proxyt az Azure API for FHIR-példány hitelesítési beállításaiban, jelölje be a SMART on FHIR proxy jelölőnégyzetet:

Képernyőkép a SMART on FHIR proxy engedélyezéséről.

A SMART on FHIR proxy közvetítőként működik a SMART on FHIR alkalmazás és a Azure AD között. A hitelesítési válasznak (a hitelesítési kódnak) az alkalmazás helyett a SMART on FHIR proxyra kell lépnie. A proxy ezután továbbítja a választ az alkalmazásnak.

A hitelesítési kód kétlépéses továbbítója miatt a Azure AD ügyfélalkalmazás válasz URL-címét (visszahívását) olyan URL-címre kell beállítania, amely a SMART on FHIR proxy válasz URL-címének és a SMART on FHIR alkalmazás válasz URL-címének kombinációja. Az egyesített válasz URL-cím a következő formában jelenik meg:

https://MYFHIRAPI.azurehealthcareapis.com/AadSmartOnFhirProxy/callback/aHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMS9zYW1wbGVhcHAvaW5kZXguaHRtbA

Ebben a válaszban aHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMS9zYW1wbGVhcHAvaW5kZXguaHRtbA a SMART on FHIR alkalmazás válasz URL-címének EGY BIZTONSÁGOS, base64 kódolású verziója. A SMART on FHIR alkalmazásindító esetében, amikor az alkalmazás helyileg fut, a válasz URL-címe .https://localhost:5001/sampleapp/index.html

A kombinált válasz URL-címet az alábbihoz hasonló szkripttel hozhatja létre:

$replyUrl = "https://localhost:5001/sampleapp/index.html"
$fhirServerUrl = "https://MYFHIRAPI.azurewebsites.net"
$bytes = [System.Text.Encoding]::UTF8.GetBytes($ReplyUrl)
$encodedText = [Convert]::ToBase64String($bytes)
$encodedText = $encodedText.TrimEnd('=');
$encodedText = $encodedText.Replace('/','_');
$encodedText = $encodedText.Replace('+','-');

$newReplyUrl = $FhirServerUrl.TrimEnd('/') + "/AadSmartOnFhirProxy/callback/" + $encodedText

Adja hozzá a válasz URL-címet a Azure AD korábban létrehozott nyilvános ügyfélalkalmazáshoz:

Képernyőkép arról, hogyan konfigurálható a válasz URL-cím a nyilvános ügyfélhez.

3. lépés: Teszt beteg lekérése

Az Azure API for FHIR és a SMART on FHIR proxy teszteléséhez legalább egy betegnek kell rendelkeznie az adatbázisban. Ha még nem használta az API-t, és nincsenek adatai az adatbázisban, olvassa el az FHIR szolgáltatás elérése a Postman használatával a páciens betöltéséhez című témakört. Jegyezze fel egy adott beteg azonosítóját.

4. lépés: A SMART on FHIR alkalmazásindító letöltése

Az Azure-hoz készült nyílt forráskódú FHIR-kiszolgáló egy egyszerű SMART on FHIR alkalmazásindítót és egy minta SMART on FHIR-alkalmazást tartalmaz. Ebben az oktatóanyagban használja ezt a SMART on FHIR-indítót helyileg a beállítás teszteléséhez.

Klónozhatja a GitHub-adattárat, és az alábbi parancsokkal megnyithatja az alkalmazást:

git clone https://github.com/Microsoft/fhir-server
cd fhir-server/samples/apps/SmartLauncher

Az alkalmazásnak szüksége van néhány konfigurációs beállításra, amelyeket a következőben appsettings.jsonállíthat be:

{
    "FhirServerUrl": "https://MYFHIRAPI.azurehealthcareapis.com",
    "ClientId": "APP-ID",
    "DefaultSmartAppUrl": "/sampleapp/launch.html"
}

Javasoljuk, hogy használja a dotnet user-secrets funkciót:

dotnet user-secrets set FhirServerUrl https://MYFHIRAPI.azurehealthcareapis.com
dotnet user-secrets set ClientId <APP-ID>

Az alkalmazás futtatásához használja ezt a parancsot:

dotnet run

5. lépés: A SMART tesztelése FHIR-proxyn

Miután elindította a SMART on FHIR alkalmazásindítót, a böngészőt a -ra https://localhost:5001irányíthatja, ahol a következő képernyőnek kell megjelennie:

Képernyőkép a SMART on FHIR alkalmazásindítóról.

Amikor megadja a Beteg, a Találkozás vagy a Kezelő adatait, láthatja, hogy az Indítási környezet frissül. Az Azure API for FHIR használata esetén a bevezetési környezet egyszerűen egy JSON-dokumentum, amely a pácienssel, a kezelővel és egyebekkel kapcsolatos információkat tartalmaz. Ez az indítási környezet base64 kódolású, és a lekérdezési paraméterként launch a SMART on FHIR alkalmazásnak továbbítja. A SMART on FHIR specifikációja szerint ez a változó átlátszatlan a SMART on FHIR alkalmazás számára, és átadja az identitásszolgáltatónak.

A SMART on FHIR proxy ezeket az adatokat használja a jogkivonat-válasz mezőinek kitöltéséhez. A SMART on FHIR alkalmazás ezekkel a mezőkkel szabályozhatja , hogy melyik pácienshez kér adatokat, és hogyan jelenik meg az alkalmazás a képernyőn. A SMART on FHIR proxy a következő mezőket támogatja:

  • patient
  • encounter
  • practitioner
  • need_patient_banner
  • smart_style_url

Ezek a mezők útmutatást nyújtanak az alkalmazásnak, de nem adnak át biztonsági információkat. Az FHIR-alapú INTELLIGENS alkalmazások figyelmen kívül hagyhatják őket.

Figyelje meg, hogy a SMART on FHIR alkalmazásindító frissíti a lap alján található Launch URL-információkat . Válassza a Launch (Indítás ) lehetőséget a mintaalkalmazás elindításához.

## További lépések

Most, hogy megismerkedett a SMART on FHIR funkció engedélyezésével, a keresési minták oldalán részletes információkat talál a keresési paraméterek, módosítók és egyéb FHIR keresési módszerek használatával történő keresésről.

Az FHIR® a HL7 bejegyzett védjegye, és a HL7 engedélyével használják.