Hitelesítés és engedélyezés az Azure Health Data Servicesben

Hitelesítés

Az Azure Health Data Services az OAuth 2.0-t támogató globális identitásszolgáltató, a Microsoft Entra ID használatával védett felügyelt szolgáltatások gyűjteménye.

Ahhoz, hogy az Azure Health Data Services hozzáférhessen az Azure-erőforrásokhoz, például tárfiókokhoz és eseményközpontokhoz, engedélyeznie kell a rendszer által felügyelt identitást, és megfelelő engedélyeket kell adnia a felügyelt identitáshoz. További információkért tekintse meg az Azure által felügyelt identitásokat.

Az ügyfélalkalmazások regisztrálva vannak a Microsoft Entra-azonosítóban, és az Azure Health Data Services eléréséhez használhatók. A felhasználói adathozzáférés-vezérlés az üzleti logikát megvalósító alkalmazásokban vagy szolgáltatásokban történik.

Alkalmazási szerepkörök

Az Azure Health Data Services hitelesített felhasználóit és ügyfélalkalmazásait hozzá kell rendelni a megfelelő alkalmazásszerepkörhöz.

Az Azure Health Data Services FHIR® szolgáltatása a következő szerepköröket biztosítja:

  • FHIR adatolvasó: FHIR-adatok olvasása és keresése.
  • FHIR-adatíró: FHIR-adatok olvasása, írása és helyreállítható törlése.
  • FHIR adatexportáló: Olvasási és exportálási ($export operátor) adatok.
  • FHIR adatimportáló: Adatok olvasása és importálása ($import operátor).
  • FHIR adatszolgáltató: Végezze el az összes adatsík-műveletet.
  • FHIR adatkonverter: Az adatkonvertálás végrehajtásához használja a konvertert.
  • FHIR SMART-felhasználó: Lehetővé teszi a felhasználó számára az FHIR-adatok olvasását és írását a SMART IG V1.0.0 specifikációinak megfelelően.

Az Azure Health Data Services DICOM® szolgáltatása a következő szerepköröket biztosítja:

  • DICOM-adattulajdonos: DICOM-adatok olvasása, írása és törlése.
  • DICOM-adatok olvasása: DICOM-adatok olvasása.

A MedTech szolgáltatás nem igényel alkalmazásszerepköröket, de az Azure Event Hubs Data Receiverre támaszkodik a szervezet előfizetésének eseményközpontjában tárolt adatok lekéréséhez.

Engedélyezés

A megfelelő alkalmazásszerepkörök megadása után a hitelesített felhasználók és ügyfélalkalmazások hozzáférhetnek az Azure Health Data Serviceshez a Microsoft Entra ID által kiadott érvényes hozzáférési jogkivonat beszerzésével, és az alkalmazásszerepkörök által meghatározott műveletek végrehajtásával.

  • Az FHIR szolgáltatás esetében a hozzáférési jogkivonat a szolgáltatásra vagy az erőforrásra vonatkozik.
  • A DICOM szolgáltatás esetében a hozzáférési jogkivonatot az dicom.healthcareapis.azure.com erőforrás kapja meg, nem pedig egy adott szolgáltatást.
  • A MedTech szolgáltatáshoz nincs szükség hozzáférési jogkivonatra, mert nem érhető el a felhasználók vagy az ügyfélalkalmazások számára.

Az engedélyezés lépései

A hozzáférési jogkivonatok beszerzésének két gyakori módja van, amelyeket a Microsoft Entra dokumentációja részletesen ismertet: az engedélyezési kódfolyamatot és az ügyfél hitelesítő adatait.

Az Azure Health Data Services hozzáférési jogkivonatának beszerzése az engedélyezési kódfolyamat használatával történik:

  1. Az ügyfél kérést küld a Microsoft Entra engedélyezési végpontjának. A Microsoft Entra ID átirányítja az ügyfelet egy bejelentkezési lapra, ahol a felhasználó megfelelő hitelesítő adatokkal (például felhasználónév és jelszó, vagy kéttényezős hitelesítés) hitelesít. Sikeres hitelesítés esetén a rendszer egy engedélyezési kódot ad vissza az ügyfélnek. A Microsoft Entra-only lehetővé teszi, hogy ezt az engedélyezési kódot vissza lehessen adni az ügyfélalkalmazás-regisztrációban konfigurált regisztrált válasz URL-címre.

  2. Az ügyfélalkalmazás egy hozzáférési jogkivonat engedélyezési kódját cseréli le a Microsoft Entra-jogkivonat végpontján. Amikor az ügyfélalkalmazás jogkivonatot kér, előfordulhat, hogy az alkalmazásnak meg kell adnia egy titkos ügyfélkulcsot (amelyet az alkalmazásregisztráció során adhat hozzá).

  3. Az ügyfél kérést intéz az Azure Health Data Serviceshez, például egy kérést GET az FHIR szolgáltatásban lévő összes beteg keresésére. A kérés tartalmazza a hozzáférési jogkivonatot egy HTTP kérelemfejlécben, például Authorization: Bearer xxx.

  4. Az Azure Health Data Services ellenőrzi, hogy a jogkivonat megfelelő jogcímeket tartalmaz-e (a jogkivonat tulajdonságai). Ha érvényes, végrehajtja a kérést, és adatokat ad vissza az ügyfélnek.

Az ügyfél hitelesítő adatainak folyamatában az engedélyek közvetlenül magának az alkalmazásnak lesznek megadva. Amikor az alkalmazás jogkivonatot ad egy erőforrásnak, az erőforrás kényszeríti, hogy maga az alkalmazás is rendelkezik engedéllyel egy művelet végrehajtására, mivel nincs felhasználó, aki részt vesz a hitelesítésben. Ezért az alábbi módokon különbözik az engedélyezési kód folyamatától:

  • A felhasználónak vagy az ügyfélnek nem kell interaktív módon bejelentkeznie.
  • Az engedélyezési kód nem szükséges.
  • A hozzáférési jogkivonat közvetlenül alkalmazásengedélyeken keresztül érhető el.

Hozzáférési jogkivonat

A hozzáférési jogkivonat egy aláírt, Base64-kódolt tulajdonsággyűjtemény (jogcímek), amelyek információt közvetítenek az ügyfél identitásáról, szerepköreiről és a felhasználó vagy ügyfél számára biztosított jogosultságokról.

Az Azure Health Data Services általában JSON webes jogkivonatot vár. Három részből áll:

Képernyőkép a webes jogkivonat aláírásáról

Használjon online eszközöket, például https://jwt.ms a jogkivonat tartalmának megtekintéséhez. Megtekintheti például a jogcímek részleteit.

Jogcím típusa Érték Jegyzetek
Aud https://xxx.fhir.azurehealthcareapis.com A jogkivonat kívánt címzettjének azonosítása. Ebben id_tokensa célközönség az alkalmazás alkalmazásazonosítója, amely az Azure Portalon van hozzárendelve az alkalmazáshoz. Az alkalmazásnak érvényesítenie kell ezt az értéket, és el kell utasítania a jogkivonatot, ha az érték nem egyezik.
Iss https://sts.windows.net/{tenantid}/ Azonosítja a jogkivonatot összeállító és visszaadó biztonsági jogkivonat-szolgáltatást (STS), valamint azt a Microsoft Entra-bérlőt, amelyben a felhasználó hitelesítése megtörtént. Ha a jogkivonatot a 2.0-s verziójú végpont adta ki, az URI a következő lesz /v2.0: . Az a GUID, amely azt jelzi, hogy a felhasználó egy Microsoft-fiók felhasználói felhasználója.9188040d-6c67-4c5b-b112-36a304b66dad Az alkalmazásnak a jogcím GUID-részét kell használnia az alkalmazásba bejelentkezni képes bérlők halmazának korlátozására, ha alkalmazható.
iat (időbélyeg) A "Kiállítva" azt jelzi, hogy mikor történt a jogkivonat hitelesítése.
nbf (időbélyeg) Az "nbf" (nem korábbi) jogcím azt az időpontot azonosítja, amely előtt a JWT NEM fogadható el feldolgozásra.
exp (időbélyeg) Az "exp" (lejárati idő) jogcím azt a lejárati időt azonosítja, amelyen vagy azt követően a JWT NEM fogadható el feldolgozásra. Előfordulhat, hogy egy erőforrás ezt megelőzően elutasítja a jogkivonatot, például ha módosítani kell a hitelesítést, vagy jogkivonat-visszavonást észlel.
Aio E2ZgYxxx Egy belső jogcím, amelyet a Microsoft Entra ID használ a jogkivonatok újbóli felhasználásához szükséges adatok rögzítésére. Figyelmen kívül kell hagyni.
Appid e97e1b8c-xxx A jogkivonatot használó ügyfél alkalmazásazonosítója. Az alkalmazás önállóan vagy egy felhasználó nevében is eljárhat. Az alkalmazásazonosító általában egy alkalmazásobjektumot jelöl, de a Microsoft Entra ID szolgáltatásnév objektumát is jelentheti.
appidacr 0 Az ügyfél hitelesítésének módját jelzi. Nyilvános ügyfél esetén az érték 0. Ha ügyfélazonosítót és ügyfélkulcsot használ, az érték 1. Ha a hitelesítéshez ügyféltanúsítványt használtak, az érték 2.
Idp https://sts.windows.net/{tenantid}/ A jogkivonat alanyát hitelesítő identitásszolgáltatót adja meg. Ez az érték megegyezik a Kiállítói jogcím értékével, kivéve, ha a felhasználói fiók nem ugyanabban a bérlőben van, mint a kiállító – például vendégek. Ha a jogcím nem jelenik meg, az azt jelenti, hogy az iss értéke használható helyette. A szervezeti környezetben használt személyes fiókok (például egy Microsoft Entra-bérlőhöz meghívott személyes fiók) esetében az azonosító jogcím lehet "live.com" vagy egy STS URI, amely a 9188040d-6c67-4c5b-b112-36a304b66dad Microsoft-fiók bérlőt tartalmazza.
Oid Például: tenantid A Microsoft identitásrendszer egy objektumának nem módosítható azonosítója, ebben az esetben egy felhasználói fiók. Ez az azonosító egyedileg azonosítja a felhasználót az alkalmazások között – az ugyanabban a felhasználóban bejelentkező két különböző alkalmazás ugyanazt az értéket kapja az oid jogcímben. A Microsoft Graph ezt az azonosítót adja vissza egy adott felhasználói fiók azonosítótulajdonságaként. Mivel az objektum lehetővé teszi, hogy több alkalmazás is korrelálja a felhasználókat, a profil hatóköre szükséges a jogcím fogadásához. Megjegyzés: Ha egyetlen felhasználó több bérlőben is létezik, a felhasználó minden bérlőben más-más objektumazonosítót tartalmaz – más fióknak számít, annak ellenére, hogy a felhasználó ugyanazokkal a hitelesítő adatokkal jelentkezik be mindegyik fiókba.
Rh 0.ARoxxx Az Azure által a jogkivonatok újraértékelésére használt belső jogcím. Ezt figyelmen kívül kell hagyni.
Al Például: tenantid Az a rendszernév, amelyről a jogkivonat információt állít be, például egy alkalmazás felhasználója. Ez az érték nem módosítható, és nem rendelhető újra és nem használható újra. A tárgy egy párosított azonosító , amely egyedi egy adott alkalmazásazonosítóhoz. Ezért ha egy felhasználó két különböző ügyfélazonosítóval jelentkezik be két különböző alkalmazásba, ezek az alkalmazások két különböző értéket kapnak a tárgyigényléshez. Előfordulhat, hogy az architektúra és az adatvédelmi követelmények alapján nem szeretné ezt az eredményt.
Tid Például: tenantid A felhasználó által használt Microsoft Entra-bérlőt jelképező GUID. Munkahelyi és iskolai fiókok esetén a GUID annak a szervezetnek a nem módosítható bérlőazonosítója, amelyhez a felhasználó tartozik. Személyes fiókok esetén az érték 9188040d-6c67-4c5b-b112-36a304b66dad. A jogcím fogadásához a profil hatóköre szükséges.
Uti bY5glsxxx Az Azure által a jogkivonatok újraértékelésére használt belső jogcím. Ezt figyelmen kívül kell hagyni.
Ver 0 A jogkivonat verzióját jelzi.

A hozzáférési jogkivonat alapértelmezés szerint egy óráig érvényes. A lejárat előtt beszerezhet egy új jogkivonatot, vagy megújíthatja azt a frissítési jogkivonat használatával.

Hozzáférési jogkivonat beszerzéséhez használhat olyan eszközöket, mint a Postman, a Visual Studio Code REST-ügyfélbővítménye, a PowerShell, a PARANCSSOR, a curl és a Microsoft Entra hitelesítési kódtárak.

Titkosítás

Az Azure Health Data Services új szolgáltatásának létrehozásakor az adatok alapértelmezés szerint Microsoft által felügyelt kulcsokkal lesznek titkosítva.

  • Az FHIR szolgáltatás az inaktív adatok titkosítását biztosítja, ha az adatok az adattárban vannak tárolva.
  • A DICOM szolgáltatás az inaktív adatok titkosítását biztosítja, ha a képalkotó adatok, beleértve a beágyazott metaadatokat is, megmaradnak az adattárban. Ha a metaadatok kinyerése és megőrzése az FHIR szolgáltatásban történik, az automatikusan titkosítva lesz.
  • A MedTech szolgáltatás az adatleképezés és a normalizálás után megőrzi az eszközüzeneteket az FHIR szolgáltatásban, amely automatikusan titkosítva van. Azokban az esetekben, amikor eszközüzeneteket küldenek az Azure Event Hubsnak, amelyek az Azure Storage-t használják az adatok tárolására, az adatok automatikusan titkosítva lesznek az Azure Storage Service Encryption (Azure S Standard kiadás) használatával.

Következő lépések

Az Azure Health Data Services-munkaterület üzembe helyezése az Azure Portal használatával

Az Azure Active Directory B2C használata az FHIR szolgáltatáshoz való hozzáférés biztosításához

Feljegyzés

Az FHIR® a HL7 bejegyzett védjegye, amelyet a HL7 engedélyével használnak.

A DICOM® az Országos Elektromos Gyártók Országos Szövetségének bejegyzett védjegye az orvosi információk digitális kommunikációjával kapcsolatos szabványügyi kiadványaihoz.