Delen via


Dataverse Healthcare APIs: Azure Logic App configureren met een HTTP-trigger

Dit artikel bevat een stapsgewijze handleiding voor het maken van uw eigen Azure Logic App om FHIR-gegevens op te nemen in Dataverse Healthcare APIs of Azure Health Data Services of allebei. Deze Logic App, geconfigureerd met een HTTP-trigger, fungeert als een relais tussen Azure Health Data Services en Dataverse API's voor gezondheidszorg.

U kunt ook een ARM-sjabloon (Azure Resource Manager) met de naam Pipelinesjabloon voor gezondheidsgegevens gebruiken om een groep Logic Apps te implementeren waarmee de opname van FHIR-bundels in Dataverse Healthcare APIs en Azure Health Data Services wordt ingedeeld. Zie voor meer informatie Dataverse Healthcare APIs: pipelinesjabloon voor gezondsheidsgegevens gebruiken om Azure Logic Apps te implementeren.

Notitie

Dit voorbeeld wordt verschaft als toegangspunt voor inkomende elektronische gezondheidsdossiergegevens (EPD), zodat FHIR-gegevens naar de juiste services worden gepost. Het is niet bedoeld als een definitieve oplossing in de huidige staat.

De configuratie omvat de volgende stappen:

Deze logische app-service biedt een toegangspunt voor FHIR-bundelberichten die eerst naar het Azure Health Data Services-eindpunt worden gepost. Na een succesvolle verwerking wordt het bericht doorgestuurd naar het Dataverse Healthcare API-eindpunt. Dit voorbeeld zorgt ervoor dat wanneer de FHIR-bundels naar Azure Health Data Services worden gepost, de Dataverse Healthcare APIs het bericht ook ontvangen.

Notitie

Een Azure Logic App hoeft geen FHIR-gegevens te posten naar de Dataverse Healthcare API-eindpunten. U kunt uw eigen oplossing bouwen om gegevens van uw EPD door te geven aan de API's en de reacties af te handelen.

In het voorbeeld van de logische app worden Beheerde identiteiten van Microsoft Entra ID gebruikt voor verificatie tussen de logische app-instantie en de twee services.

Vereisten beoordelen

U moet ervoor zorgen dat u aan de volgende vereisten voldoet voordat u een logische app kunt maken:

  • Een Azure-account en -abonnement. Als u geen abonnement hebt, meld u dan aan voor een gratis Azure-account voordat u begint.
  • Een Azure-resourcegroep die is geconfigureerd met de juiste resources om Logic Apps te maken.
  • Toegang binnen de resourcegroep om logische apps en beheerde identiteiten te maken en te bewerken.
  • Naleving van de beveiligingsrichtlijnen die zijn beschreven door Azure-beheerders en het organisatiebeleid.

Verificatie instellen

Voordat u de logische app maakt en configureert, moet u een beheerde identiteit instellen zodat verificatie van de externe services met de logische app mogelijk is. Het gebruik van beheerde identiteiten is één benadering voor het configureren van verificatie. Zorg ervoor dat u de best practices en het organisatiebeleid volgt bij het instellen van verificatie.

Beheerde identiteiten in Azure maken verificatie tussen services mogelijk zonder permanente referenties binnen de logische app. Deze logische app gebruikt een door de gebruiker toegewezen beheerde identiteit voor verificatie tussen services. Azure-beheerders beperken deze configuratie doorgaans. Als toegang beschikbaar is, kunt u de volgende stappen gebruiken om een beheerde identiteit te maken die verbinding kan maken met zowel het Azure Health Data Services-eindpunt als het Dataverse Healthcare API-eindpunt.

Ga voor meer informatie over beheerde identiteiten naar Wat zijn beheerde identiteiten voor Azure-resources?

Als u verificatie met een beheerde identiteit wilt instellen, voert u de volgende stappen uit:

Een beheerde identiteit maken

Maak een door de gebruiker toegewezen beheerde identiteit met de volgende stappen:

  1. Selecteer via het menu Azure Portal Een resource maken en zoek naar Beheerde identiteit. Selecteer in de beschikbare opties Door gebruiker toegewezen beheerde identiteit en selecteer vervolgens Maken.

  2. Selecteer de juiste waarden bij Abonnement, Resourcegroep en Regio. De regio moet hetzelfde zijn als de logische app.

  3. Selecteer in het veld Naam FHIRRelayManagedIdentity of een andere naam die uniek is voor de resourcegroep. De rest van dit artikel verwijst naar de naam FHIRRelayManagedIdentity voor de beheerde identiteit.

    Selecteer Maken.

  4. Nadat de implementatie is voltooid, opent u de resource van de beheerde identiteit.

Toegang verlenen tot Azure Health Data Services

Voor toegang tot Azure Health Data Services vanuit de logische app is de roltoewijzing Inzender FHIR-gegevens vereist, waarmee nieuwe gegevens naar de service kunnen worden gepost. U moet deze Azure-roltoewijzing toevoegen aan de beheerde identiteit die door de logische app wordt gebruikt.

  1. Ga naar het Azure Health Data Service-exemplaar, selecteer Toegangscontrole (IAM) en selecteer vervolgens Roltoewijzing toevoegen.

  2. Selecteer op het tabblad Rol de rol Inzender van FHIR-gegevens.

  3. Selecteer het tabblad Leden. Selecteer Beheerde identiteit en selecteer vervolgens + Leden selecteren. Voeg de beheerde identiteit toe die u hebt gemaakt in Een beheerde identiteit maken.

  4. Het kan enkele minuten duren voordat de toewijzing de beheerde identiteit weerspiegelt. U kunt de roltoewijzing op de beheerde identiteit bekijken door Azure-roltoewijzingen te selecteren.

Toegang verlenen tot Dataverse Healthcare APIs

Dezelfde beheerde identiteit wordt gebruikt in de logische app om toegang te krijgen tot de Dataverse Healthcare APIs door deze te verbinden met een gebruiker van de toepassings in het doelvoorbeeld in Dataverse. Ga voor meer informatie over toepassingsgebruikers naar Toepassingsgebruikers beheren in het Power Platform-beheercentrum.

  1. U hebt de client-id voor Azure van de beheerde identiteit nodig om de toepassingsgebruiker te configureren. Als u de client-id wilt ophalen, opent u de beheerde identiteit FHIRRelayManagedIdentity en kopieert u de waarde van Client-id vanuit het gebied Overzicht.

  2. Open in het Power Platform-beheercentrum de Microsoft Cloud for Healthcare-doelomgeving. Selecteer in de sectie Toegang de optie S2S-apps en selecteer vervolgens Nieuwe app-gebruiker.

    Selecteer in het deelvenster Een nieuwe app-gebruiker maken de juiste Business unit en selecteer vervolgens Een app toevoegen.

  3. Zoek in het deelvenster Een app uit Microsoft Entra ID toevoegen naar de client-id die u van de beheerde identiteit hebt gekopieerd. Selecteer FHIRRelayManagedIdentity in de lijst, selecteer Toevoegen en bewerk vervolgens de beveiligingsrollen.

  4. Selecteer de rol Reg User voor Synchronisatiebeheer voor FHIR-app en selecteer vervolgens Opslaan. Selecteer Maken om de nieuwe toepassingsgebruiker te maken.

Logische app maken

  1. Selecteer via het menu Azure Portal Een resource maken, zoek naar Logische app en selecteer vervolgens het item in de zoekresultaten.

  2. Selecteer Maken.

  3. Geef in het deelvenster Logische app maken de relevante informatie voor de logische app op. Bekijk het abonnementstype, de beveiliging en de netwerkdetails met Azure-beheerders op basis van de verwachte verwerkingsbelasting.

    De volgende instellingen zijn voorbeelden voor een eenvoudige logische app-orchestrator om de connectiviteit te testen die u later in dit artikel kunt gebruiken. Als een instelling niet wordt opgegeven, ga er dan vanuit dat er standaardwaarden worden gebruikt.

    Instelling Weergegeven als
    Logic App-naam FhirRelaySample
    Publiceren Werkstroom
    Regio US - oost
    Abonnementtype Verbruik
  4. Selecteer Maken. Het kan een paar minuten duren voordat de nieuwe logische app is ingericht.

Logische app configureren

Nadat u de logische app hebt gemaakt, opent u de resource van de logische app om Logic Apps Designer onder Ontwikkelhulpprogramma´s te openen. Ga als volgt te werk om de logische app te configureren:

Identiteit configureren

Nu de logische app en de beheerde identiteit beide zijn gemaakt, moet u ze koppelen.

  1. Selecteer Identiteit in het menu van de logische app, selecteer het tabblad Gebruiker toegewezen en selecteer vervolgens + Toevoegen.

  2. Selecteer in het geopende deelvenster de gemaakte beheerde identiteit en selecteer vervolgens Toevoegen.

De logische app moet nu koppelen naar de nieuwe beheerde identiteit. Het kan worden gebruikt voor het verwerken van stappen en acties.

Trigger configureren

De eerste stap bij het configureren van een werkstroom voor een logische app is het definiëren van het toegangspunt of de trigger. Met de trigger Wanneer een HTTP-aanvraag is ontvangen kunnen externe systemen gegevens via HTTP-aanvragen naar de logische app posten voor verwerking. Met deze trigger kan de logische app voor FHIR-relay een HTTP-aanvraag ontvangen met een JSON-payload. Ga voor meer informatie over het maken van een trigger naar Een aanvraagtrigger toevoegen.

Deze logische app verwacht een binnenkomend verzoek dat een standaard FHIR-bundel bevat. JSON-schema aanvraagtekst wordt leeg gelaten, omdat elke binnenkomende bundel uniek kan zijn. Met deze configuratie kan de logische app verschillende JSON-payloads ontvangen in plaats van deze aan een specifiek gegevenscontract te koppelen.

Een schermopname van de trigger van de logische app.

Sla de instellingen op om URL HTTP POST te genereren. Gebruik deze URL later om de logische app te testen.

Parameters configureren

Parameters bieden flexibiliteit bij het bouwen en implementeren van logische apps via Azure Resource Manager-sjablonen. Voeg in dit voorbeeld de volgende twee parameters toe aan de logische app-acties:

  • DataverseURL: de volledig gekwalificeerde URL naar het Dataverse-exemplaar dat de Dataverse Healthcare APIs host.
  • FhirURL: de volledig gekwalificeerde URL naar de Azure Health Data Services.
  1. Als u een nieuwe parameter wilt maken, selecteert u Parameters via de werkbalk om het parametervenster te openen.

  2. Voer de volgende stappen uit voor elke nieuwe parameter:

    1. Selecteer Parameter toevoegen.

    2. Voer een Naam in voor de parameter. Selecteer voor Type de optie Tekenreeks en voer de standaardwaarde voor elke parameter in op basis van de organisatieconfiguratie.

      Een schermopname waarin het parametervenster van de logische app wordt weergegeven.

  3. Selecteer Opslaan via de werkbalk om de nieuwe parameters met de logische app op te slaan.

FHIR-API aanroepen

U hebt een nieuwe actie nodig om de nettolading van het inkomende verzoek naar het Azure Health Data Services-eindpunt te posten via HTTP-methode POST.

  1. Selecteer bij Logic Apps Designer Nieuwe stap om een nieuwe HTTP POST-actie toe te voegen. De HTTP-actie is algemeen en kan worden weergegeven als een aanbevolen actie. Als de actie verschijnt, selecteert u HTTP als de bewerking voor deze stap.

    Als de aanbeveling niet aanwezig is, zoekt u naar HTTP en selecteert u vervolgens HTTP in de lijst met beschikbare acties.

  2. Geef deze actie de naam FHIR-API aanroepen. Werk de volgende instellingen bij in de instellingen van de HTTP-actie:

    Instelling Weergegeven als
    Wijze POSTEN
    URI FhirURL
    Headers Voeg een nieuwe waarde toe voor elk van de volgende headers:

    Inhoudstype: toepassing/json
    OData-versie: 4.0
    Hoofdgedeelte Hoofdgedeelte

    Voor de velden URI en Hoofdtekst is dynamische inhoud vereist. De URI gebruikt de parameterwaarde FhirURL en het veld Hoofdtekst gebruikt de hoofdtekst van het inkomende verzoek dat wordt afgehandeld door de trigger.

  3. Selecteer Opslaan om ervoor te zorgen dat u de huidige instellingen opslaat voordat u naar de volgende stap gaat.

  4. Selecteer Een nieuwe parameter toevoegen en vervolgens Verificatie.

    • Selecteer voor het veld Verificatietype Beheerde identiteit.
    • Selecteer voor het veld Beheerde identiteit de beheerde identiteit die eerder is gemaakt en gekoppeld aan de resource Azure Health Data Services.
    • Selecteer de parameterwaarde FhirURL voor het veld Doelgroep.

    Een schermopname van de prameter voor beheerde identiteit.

De HTTP-aanroep heeft nu toegang om de FHIR-gegevens naar het service-eindpunt te POSTEN.

FHIR-respons evalueren

Gebruik na het posten van de FHIR-gegevens een voorwaardeactie om de respons van het Azure Health Data Services-eindpunt te evalueren.

  1. Selecteer Nieuwe stap.

  2. Selecteer in het dialoogvenster Actie het tabblad Ingebouwd en het pictogram Besturingselement en selecteer vervolgens Voorwaarde voor de actie. Geef deze actie de naam FHIR-respons evalueren.

  3. Selecteer in de parameter Voorwaarde de dynamische waarde van de Statuscode die is geretourneerd door de vorige HTTP-actie. Stel de voorwaarde-operator in op is gelijk aan en de resultaatwaarde van 200 voor de succescode.

    Als aan deze voorwaarde is voldaan, wordt de branche True geëvalueerd.

    Een schermopname met de voorwaardeparameter.

  4. Om ervoor te zorgen dat de actie FHIR-respons evalueren wordt uitgevoerd, selecteert u het beletselteken bovenaan de actiekaart en selecteert u vervolgens Uitvoering configureren na. Selecteer alle vermelde opties zodat de logische app een respons kan geven aan de aanroeper. Deze updates zorgen ervoor dat de actie wordt uitgevoerd, zelfs als in de vorige stap een foutvoorwaarde wordt aangetroffen.

    Een schermopname die de uitvoering toont na instellingen.

Voorwaarde: succesvolle respons

Als de Azure Health Data Services-POST slaagt, wordt de aanvraagbody vervolgens naar de Dataverse Healthcare APIs gepost.

Een Dataverse-aanvraagbody maken

  1. Selecteer binnen de vertakking Waar Een actie toevoegen en selecteer vervolgens Ingebouwd.

  2. Zoek naar Opstellen. Selecteer onder Gegevensbewerkingen de actie Opstellen.

  3. Voeg voor het veld Invoer het volgende JSON-fragment toe:

      {
       "msind_BundleTag": "",
       "msind_JSON": ""
      }
    
  4. Voeg tussen de lege aanhalingstekens voor het msind_JSON-knooppunt de dynamische inhoud toe voor de waarde van de triggerbody.

    Een schermopname waarin wordt weergegeven hoe de Dataverse-aanvraagbody wordt gemaakt.

    Deze stap voegt de JSON-waarden van de triggerbody toe als parameter aan de Dataverse Healthcare API-aanroep. Geef deze stap de naam Dataverse-aanvraagbody maken.

Dataverse-API aanroepen

Met de volgende stap wordt deze nieuwe JSON gepost naar het eindpunt van de Dataverse Healthcare APIs.

  1. Selecteer Een actie toevoegen en maak nog een HTTP-actie. Geef deze actie de naam Dataverse-API aanroepen.

  2. Werk de volgende instellingen bij in de instellingen van de HTTP-actie:

    Instelling Weergegeven als
    Wijze POSTEN
    URI (expressie)
    Headers Voeg een nieuwe waarde toe voor elk van de volgende headers:

    Inhoudstype: toepassing/json
    OData-versie: 4.0
    Hoofdgedeelte (uitvoer opstellingsstap)

    Het URI-veld is een dynamische expressiewaarde waarmee de parameter DataverseURL en de aangepaste API-naam van het eindpunt worden gecombineerd. De volledige expressie is als volgt:

    concat(parameters('DataverseURL'), '/api/data/v9.1/msind_UpsertBundle')

    Een schermopname van de URI-expressie van de actie Dataverse-API aanroepen.

    Het veld Body is een dynamische waarde waarmee de uitvoer van de stap Opstellen wordt vastgelegd.

    Een schermopname van de body van de actie Dataverse-API aanroepen.

  3. Selecteer Een nieuwe parameter toevoegen en vervolgens Verificatie. Selecteer onder Verificatietype Beheerde identiteit.

    Selecteer voor het veld Beheerde identiteit de beheerde identiteit die eerder is gemaakt en gekoppeld aan de resource Azure Health Data Services. Selecteer voor deze actie de parameterwaarde DataverseURL voor het veld Doelgroep.

    Een schermopname met de parameter voor verificatie van beheerde identiteit voor de actie Dataverse-API aanroepen.

De HTTP-aanroep heeft nu toegang om naar het service-eindpunt van de Dataverse Healthcare APIs te POSTEN.

Reageren met Dataverse-respons

Nadat u de gegevens naar Dataverse hebt gepost, stelt u de code respons samen voor de aanroep van de logische app met behulp van de code respons uit de actie Dataverse API aanroepen .

  1. Selecteer Een actie toevoegen en selecteer vervolgens Ingebouwd.

  2. Selecteer Respons in de lijst met beschikbare acties. Geef deze nieuwe actie de naam Reageren met Dataverse-respons.

    Bij deze actie worden de geretourneerde waarden van de Dataverse Healthcare APIs geretourneerd als het antwoord voor de logische app door gebruik te maken van dynamische waarden in de overeenkomstige velden.

    Een schermopname met de configuratie van de actie Reageren met Dataverse-respons.

  3. Om ervoor te zorgen dat de actie Reageren met Dataverse-respons wordt uitgevoerd, selecteert u de ellips boven aan de actiekaart en selecteert u vervolgens Uitvoeren configureren na. Selecteer alle weergegeven opties zodat de logische app een respons kan geven aan de aanroeper, zelfs als de actie Dataverse API aanroepen mislukt.

Voorwaarde: mislukte respons

Als de aanroep naar het Azure Health Data Services-eindpunt mislukt, retourneert de logische app de waarden van de actie FHIR API-aanroep als het antwoord.

Reageren met FHIR-foutrespons

  1. Selecteer binnen de vertakking Onwaar van de voorwaarde Een actie toevoegen en selecteer vervolgens Ingebouwd.

  2. Selecteer Respons in de lijst met beschikbare acties. Geef deze nieuwe actie de naam Reageren met FHIR-foutrespons.

    Bij deze actie worden de retourwaarden van de Azure Health Data Services geretourneerd als de respons voor de logische app door dynamische waarden in de overeenkomstige velden te gebruiken.

JSON-bundel naar de URL van de logische app verzenden

  1. Om de logische app met de ontwerper te testen, selecteert u Trigger uitvoeren en selecteert u vervolgens de optie Uitvoeren met payload. Met deze actie wordt het aanroepen van de URL van de logische app gesimuleerd en kunt u eventuele problemen opsporen.

  2. Geef voor het veld Body een geldige FHIR-bundel op. Deze stap gaat ervan uit dat de rest van de Microsoft Cloud for Healthcare-configuratie is voltooid en de Dataverse API's voor gezondheidszorg klaar zijn om een inkomend bericht te ontvangen.

Het uitvoeren van de huidige versie met onjuiste URL's voor de service-eindpunten resulteert in een succesvolle uitvoering van de logische app, ook al is de actie FHIR-API aanroepen mislukt. U kunt de resultaten van de run bekijken op de hoofdpagina van de logische app onder Uitvoeringsgeschiedenis.

Wanneer u alle parameterwaarden correct bijwerkt, wordt de uitvoering van de logische app succesvol bijgehouden in de uitvoeringsgeschiedenis.

Een schermopname met een weergave van de uitvoeringsgeschiedenis van de logische app voor een succesvolle aanroep.

Logic Apps beveiligen

Nadat u de instelling van de logische app hebt voltooid en getest, kunt u de tracering vergrendelen door de invoer- en uitvoeracties te beveiligen.

  1. Selecteer het beletselteken in de rechterbovenhoek van de actiekaart en selecteer vervolgens Instellingen.

  2. Stel de waardeschakelaars in op Aan voor Beveiligde invoer en Beveiligde uitvoer.

  3. Alle daaropvolgende logische app-uitvoerbewerkingen beperken het bekijken van de gegevens wanneer de logboeken voor uitvoering worden bekeken. De resultaten voor de trigger geven nu als volgt een beperkte weergave van de gegevens:

    Een schermopname van de beveiligde uitvoeringsgeschiedenis.

U kunt deze instellingen toepassen op elke actie die deze functie ondersteunt. Ga voor meer informatie naar Beveiligde toegang en gegevens voor workflows in Azure Logic Apps.