From de7d4476de3ac797e8a2f9e2ed427d3c0eab6c9f Mon Sep 17 00:00:00 2001 From: v-gkuber <138763846+v-gkuber@users.noreply.github.com> Date: Fri, 27 Oct 2023 20:53:15 +0530 Subject: [PATCH] Personal/gkuber/smartonfhir (#147) * Script to setup the Application Registration instead of modifying JSON app manifest manually. This will support latest version of azure cli. Also updated the documents for prerequisite versions * Specified prerequisite versions in document --------- Co-authored-by: Ganesh Kuber --- .../ad-apps/fhir-resource-app-registration.md | 25 +- samples/smartonfhir/docs/deployment.md | 10 +- .../Configure-FhirResourceAppRegistration.ps1 | 6 +- .../oauth2-permissions.json | 1039 ++++++++--------- 4 files changed, 493 insertions(+), 587 deletions(-) diff --git a/samples/smartonfhir/docs/ad-apps/fhir-resource-app-registration.md b/samples/smartonfhir/docs/ad-apps/fhir-resource-app-registration.md index 9a05c8b8..be14458d 100644 --- a/samples/smartonfhir/docs/ad-apps/fhir-resource-app-registration.md +++ b/samples/smartonfhir/docs/ad-apps/fhir-resource-app-registration.md @@ -4,28 +4,25 @@ This application registration is used to customize the access token sent to the ## Deployment (manual) -1. Find your Primary Domain in Azure Active Directory - - Open Azure AD in the Azure Portal - - Note your `Primary Domain` in the Overview blade of Azure AD. 1. Create a FHIR Resource Application Registration - Go to `App Registrations` - Create a new application. It's easiest if this matches the name of your Azure Developer CLI environment. - Click `Register` (ignore redirect URI). -1. Set the application URL - - Go to `Expose an API` blade. - - Set the application URL to https://.. - - For example `https://my-app-1.mytenant.onmicrosoft.com`. - - Save the `Application URL` for later. -1. Add all the applicable FHIR Scopes. - - Go to the Manifest blade for your application. - - Change `acceptMappedClaims` from null to true. - - Copy the `appRoles` JSON element from [fhir-app-manifest.json](./fhir-app-manifest.json) to the `appRoles` JSON element in your application manifest. - - Copy the `oauth2Permissions` JSON element from [fhir-app-manifest.json](./fhir-app-manifest.json) to the `oauth2Permissions` JSON element in your application manifest. 1. Inform your Azure Developer CLI environment of this application with: ``` - azd env set FhirAudience azd env set FhirResourceAppId ``` +1. Run below command to configure a FHIR Resource Application Registration. + + Windows: + ```powershell + powershell ./scripts/Configure-FhirResourceAppRegistration.ps1 + ``` + + Mac/Linux + ```bash + pwsh ./scripts/Configure-FhirResourceAppRegistration.ps1 + ``` 1. Create a Microsoft Graph Directory Extension to hold the `fhirUser` information for users. Windows: diff --git a/samples/smartonfhir/docs/deployment.md b/samples/smartonfhir/docs/deployment.md index f6985613..3856f6b4 100644 --- a/samples/smartonfhir/docs/deployment.md +++ b/samples/smartonfhir/docs/deployment.md @@ -11,12 +11,12 @@ In order to deploy this sample, you will need to install some Azure tools, ensur Make sure you have the pre-requisites listed below - **Installation:** - [Git](https://git-scm.com/) to access the files in this repository. - - [Azure CLI](https://learn.microsoft.com/cli/azure/install-azure-cli) to run scripts that interact with Azure. - - [Azure Developer CLI](https://learn.microsoft.com/azure/developer/azure-developer-cli/install-azd?tabs=baremetal%2Cwindows) to deploy the infrastructure and code for this sample. + - [Azure CLI Version 2.51.0 or Greater](https://learn.microsoft.com/cli/azure/install-azure-cli) to run scripts that interact with Azure. + - [Azure Developer CLI Version 1.2.0 or Greater](https://learn.microsoft.com/azure/developer/azure-developer-cli/install-azd?tabs=baremetal%2Cwindows) to deploy the infrastructure and code for this sample. - [Visual Studio](https://visualstudio.microsoft.com/), [Visual Studio Code](https://code.visualstudio.com/), or another development environment (for changing configuration debugging the sample code). - - [Node / NPM](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) for building the frontend application and installing the US Core FHIR Profile. - - [.NET SDK 6+](https://learn.microsoft.com/dotnet/core/sdk) installed (for building the sample). - - [PowerShell](https://learn.microsoft.com/powershell/scripting/install/installing-powershell) installed for running scripts (works for Mac and Linux too!) + - [Node Version 18.17.1/ NPM Version 10.2.0](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) for building the frontend application and installing the US Core FHIR Profile. + - [.NET SDK Version 7.0.400](https://learn.microsoft.com/dotnet/core/sdk) installed (for building the sample). + - [PowerShell Version 5.1.22621.2428 or Greater](https://learn.microsoft.com/powershell/scripting/install/installing-powershell) installed for running scripts (works for Mac and Linux too!). - **Access:** - Access to an Azure Subscription where you can create resources and add role assignments. diff --git a/samples/smartonfhir/scripts/Configure-FhirResourceAppRegistration.ps1 b/samples/smartonfhir/scripts/Configure-FhirResourceAppRegistration.ps1 index 514c652a..a0b4affe 100644 --- a/samples/smartonfhir/scripts/Configure-FhirResourceAppRegistration.ps1 +++ b/samples/smartonfhir/scripts/Configure-FhirResourceAppRegistration.ps1 @@ -36,8 +36,8 @@ if (-not $FhirResourceAppId) { $AppRoles = "$SCRIPT_PATH/manifest-json-contents/app-roles.json" $OAuth2Permissions = "$SCRIPT_PATH/manifest-json-contents/oauth2-permissions.json" - -$APP_NAME=$(az ad app show --id $FhirResourceAppId --query 'displayName' --output tsv) + + $APP_NAME=$(az ad app show --id $FhirResourceAppId --query 'displayName' --output tsv) $DOMAIN_INFO=$(az rest --method get --url 'https://graph.microsoft.com/v1.0/domains?$select=id') $DOMAIN_JSON = $DOMAIN_INFO | ConvertFrom-Json @@ -45,6 +45,6 @@ $PRIMARY_DOMAIN = $DOMAIN_JSON.value[0].id azd env set FhirAudience "https://$APP_NAME.$PRIMARY_DOMAIN" -az ad app update --id $FhirResourceAppId --identifier-uris "https://$APP_NAME.$PRIMARY_DOMAIN" --set acceptMappedClaims=true appRoles=@$AppRoles oauth2Permissions=@$OAuth2Permissions +az ad app update --id $FhirResourceAppId --identifier-uris "https://$APP_NAME.$PRIMARY_DOMAIN" --set appRoles=@$AppRoles api=@$OAuth2Permissions Write-Host "Done." \ No newline at end of file diff --git a/samples/smartonfhir/scripts/manifest-json-contents/oauth2-permissions.json b/samples/smartonfhir/scripts/manifest-json-contents/oauth2-permissions.json index 522485ba..531d167f 100644 --- a/samples/smartonfhir/scripts/manifest-json-contents/oauth2-permissions.json +++ b/samples/smartonfhir/scripts/manifest-json-contents/oauth2-permissions.json @@ -1,566 +1,475 @@ -[ - { - "adminConsentDescription": "Allows user to read all resources in a patient's compartment.", - "adminConsentDisplayName": "patient.all.read", - "id": "c71e9482-f052-461b-80e1-7cfeba7b2b12", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read all resources in a patient's compartment.", - "userConsentDisplayName": "patient.all.read", - "value": "patient.all.read" - }, - { - "adminConsentDescription": "Allows a user to read all resources in their compartment.", - "adminConsentDisplayName": "user.all.read", - "id": "5a03b38d-4081-4265-9558-aab5f2a18b8b", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows a user to read all resources in their compartment.", - "userConsentDisplayName": "user.all.read", - "value": "user.all.read" - }, - { - "adminConsentDescription": "Grants permission to obtain launch context.", - "adminConsentDisplayName": "launch", - "id": "fa5f9b76-5f20-4466-8b3d-6718de9744e2", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Grants permission to obtain launch context.", - "userConsentDisplayName": "launch", - "value": "launch" - }, - { - "adminConsentDescription": "Asks for a patient to be selected at launch time.", - "adminConsentDisplayName": "launch.patient", - "id": "f6c8eb20-e799-4de7-a7ce-74ca0c7270e1", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Asks for a patient to be selected at launch time.", - "userConsentDisplayName": "launch.patient", - "value": "launch.patient" - }, - { - "adminConsentDescription": "Grants permission for a refresh token to be used to obtain a new access token as long as the user is still online.", - "adminConsentDisplayName": "online_access", - "id": "8f4fe9ac-b7f2-43ca-a0ef-070f4a8ae5dc", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Grants permission for a refresh token to be used to obtain a new access token as long as the user is still online.", - "userConsentDisplayName": "online_access", - "value": "online_access" - }, - { - "adminConsentDescription": "Grants permission to read information about the current logged-in user.", - "adminConsentDisplayName": "fhirUser", - "id": "a86144c7-3e19-4b56-9675-15803eb1e617", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Grants permission to read information about the current logged-in user.", - "userConsentDisplayName": "fhirUser", - "value": "fhirUser" - }, - { - "adminConsentDescription": "Allows user to read Medication resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Medication.read", - "id": "058fa58e-ac09-4308-970e-2f2da3bf49b4", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "samples readAllows user to read Medication resources in a patient's compartment.", - "userConsentDisplayName": "patient.Medication.read", - "value": "patient.Medication.read" - }, - { - "adminConsentDescription": "Allows user to read Medication resources in their own compartment.", - "adminConsentDisplayName": "user.Medication.read", - "id": "e5a7cdb9-3edb-4b0a-a43d-40a377726680", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Medication resources in their own compartment.", - "userConsentDisplayName": "user.Medication.read", - "value": "user.Medication.read" - }, - { - "adminConsentDescription": "Allows user to read AllergyIntolerance resources in a patient's compartment.", - "adminConsentDisplayName": "patient.AllergyIntolerance.read", - "id": "fa23e5cb-b06f-4d07-bcf8-f5ce114dd847", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read AllergyIntolerance resources in a patient's compartment.", - "userConsentDisplayName": "patient.AllergyIntolerance.read", - "value": "patient.AllergyIntolerance.read" - }, - { - "adminConsentDescription": "Allows user to read AllergyIntolerance resources in their own compartment.", - "adminConsentDisplayName": "user.AllergyIntolerance.read", - "id": "263687ba-ab05-41b1-98ad-f057c7365c91", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read AllergyIntolerance resources in their own compartment.", - "userConsentDisplayName": "user.AllergyIntolerance.read", - "value": "user.AllergyIntolerance.read" - }, - { - "adminConsentDescription": "Allows user to read CarePlan resources in their own compartment.", - "adminConsentDisplayName": "user.CarePlan.read", - "id": "c2c62692-9cd2-4612-9f15-cf5641284e41", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read CarePlan resources in their own compartment.", - "userConsentDisplayName": "user.CarePlan.read", - "value": "user.CarePlan.read" - }, - { - "adminConsentDescription": "Allows user to read CarePlan resources in a patient's compartment.", - "adminConsentDisplayName": "patient.CarePlan.read", - "id": "4fcc09b8-fd6b-430f-9b2b-7bbd2c2b7e8f", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read CarePlan resources in a patient's compartment.", - "userConsentDisplayName": "patient.CarePlan.read", - "value": "patient.CarePlan.read" - }, - { - "adminConsentDescription": "Allows user to read CareTeam resources in a patient's compartment.", - "adminConsentDisplayName": "patient.CareTeam.read", - "id": "4860ad86-f40e-4e2b-8661-ba03ee154b19", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read CareTeam resources in a patient's compartment.", - "userConsentDisplayName": "patient.CareTeam.read", - "value": "patient.CareTeam.read" - }, - { - "adminConsentDescription": "Allows user to read Condition resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Condition.read", - "id": "60fd617d-0d96-4c44-9cf3-ee91c0c45161", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Condition resources in a patient's compartment.", - "userConsentDisplayName": "patient.Condition.read", - "value": "patient.Condition.read" - }, - { - "adminConsentDescription": "Allows user to read Device resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Device.read", - "id": "f7b318b5-9bf5-46d0-8701-845c568925d9", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Device resources in a patient's compartment.", - "userConsentDisplayName": "patient.Device.read", - "value": "patient.Device.read" - }, - { - "adminConsentDescription": "Allows user to read DiagnosticReport resources in a patient's compartment.", - "adminConsentDisplayName": "patient.DiagnosticReport.read", - "id": "ef9475b2-f7da-4a86-b385-9fffe030c310", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read DiagnosticReport resources in a patient's compartment.", - "userConsentDisplayName": "patient.DiagnosticReport.read", - "value": "patient.DiagnosticReport.read" - }, - { - "adminConsentDescription": "Allows user to read DocumentReference resources in a patient's compartment.", - "adminConsentDisplayName": "patient.DocumentReference.read", - "id": "e2a5290a-59c6-4847-af7f-c5b16c692f24", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read DocumentReference resources in a patient's compartment.", - "userConsentDisplayName": "patient.DocumentReference.read", - "value": "patient.DocumentReference.read" - }, - { - "adminConsentDescription": "Allows user to read Encounter resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Encounter.read", - "id": "9e7cdd6e-af8a-4e6d-9170-4274b35864bc", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Encounter resources in a patient's compartment.", - "userConsentDisplayName": "patient.Encounter.read", - "value": "patient.Encounter.read" - }, - { - "adminConsentDescription": "Allows user to read Goal resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Goal.read", - "id": "e6e32ed0-c9a2-4f1b-adb5-e3d59e47bb54", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Goal resources in a patient's compartment.", - "userConsentDisplayName": "patient.Goal.read", - "value": "patient.Goal.read" - }, - { - "adminConsentDescription": "Allows user to read Immunization resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Immunization.read", - "id": "f6c2728b-b49d-4d10-bb69-7798f1603807", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Immunization resources in a patient's compartment.", - "userConsentDisplayName": "patient.Immunization.read", - "value": "patient.Immunization.read" - }, - { - "adminConsentDescription": "Allows user to read MedicationRequest resources in a patient's compartment.", - "adminConsentDisplayName": "patient.MedicationRequest.read", - "id": "16352d13-6c69-4eee-adbb-f7420b3f252b", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read MedicationRequest resources in a patient's compartment.", - "userConsentDisplayName": "patient.MedicationRequest.read", - "value": "patient.MedicationRequest.read" - }, - { - "adminConsentDescription": "Allows user to read Observation resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Observation.read", - "id": "890da85b-b5ad-4981-8966-4b80fd75a5b8", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Observation resources in a patient's compartment.", - "userConsentDisplayName": "patient.Observation.read", - "value": "patient.Observation.read" - }, - { - "adminConsentDescription": "Allows user to read Organization resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Organization.read", - "id": "81882045-ad54-4a5f-926c-a2a09d7dd2b5", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Organization resources in a patient's compartment.", - "userConsentDisplayName": "patient.Organization.read", - "value": "patient.Organization.read" - }, - { - "adminConsentDescription": "Allows user to read Patient resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Patient.read", - "id": "d23f0b68-a2f5-4647-987b-b58fdd86b49d", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Patient resources in a patient's compartment.", - "userConsentDisplayName": "patient.Patient.read", - "value": "patient.Patient.read" - }, - { - "adminConsentDescription": "Allows user to read Practitioner resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Practitioner.read", - "id": "ad27d725-86ff-4bc9-86fb-afdb2f007089", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Practitioner resources in a patient's compartment.", - "userConsentDisplayName": "patient.Practitioner.read", - "value": "patient.Practitioner.read" - }, - { - "adminConsentDescription": "Allows user to read Procedure resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Procedure.read", - "id": "be1c7593-9057-4947-a456-424dde696627", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Procedure resources in a patient's compartment.", - "userConsentDisplayName": "patient.Procedure.read", - "value": "patient.Procedure.read" - }, - { - "adminConsentDescription": "Allows user to read Provenance resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Provenance.read", - "id": "d56c68f3-ec5f-4e12-82cc-afa8921337f0", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Provenance resources in a patient's compartment.", - "userConsentDisplayName": "patient.Provenance.read", - "value": "patient.Provenance.read" - }, - { - "adminConsentDescription": "Allows user to read PractitionerRole resources in a patient's compartment.", - "adminConsentDisplayName": "patient.PractitionerRole.read", - "id": "1d6a9f65-62f4-42b0-93d7-fc3437112f46", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read PractitionerRole resources in a patient's compartment.", - "userConsentDisplayName": "patient.PractitionerRole.read", - "value": "patient.PractitionerRole.read" - }, - { - "adminConsentDescription": "Allows user to read PractitionerRole resources in their own compartment.", - "adminConsentDisplayName": "user.PractitionerRole.read", - "id": "ae77fe95-13db-47f8-968c-5eee9d973273", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read PractitionerRole resources in their own compartment.", - "userConsentDisplayName": "user.PractitionerRole.read", - "value": "user.PractitionerRole.read" - }, - { - "adminConsentDescription": "Allows user to read CareTeam resources in their own compartment.", - "adminConsentDisplayName": "user.CareTeam.read", - "id": "3cb5f829-1e8d-4224-9e87-678b02c8f9b1", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read CareTeam resources in their own compartment.", - "userConsentDisplayName": "user.CareTeam.read", - "value": "user.CareTeam.read" - }, - { - "adminConsentDescription": "Allows user to read Condition resources in their own compartment.", - "adminConsentDisplayName": "user.Condition.read", - "id": "dd554abf-e473-4190-8382-9b096fe49efa", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Condition resources in their own compartment.", - "userConsentDisplayName": "user.Condition.read", - "value": "user.Condition.read" - }, - { - "adminConsentDescription": "Allows user to read Device resources in their own compartment.", - "adminConsentDisplayName": "user.Device.read", - "id": "a246e7b9-d55c-43a2-9b5a-b3341bc1a57d", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Device resources in their own compartment.", - "userConsentDisplayName": "user.Device.read", - "value": "user.Device.read" - }, - { - "adminConsentDescription": "Allows user to read DocumentReference resources in their own compartment.", - "adminConsentDisplayName": "user.DocumentReference.read", - "id": "23b15307-5f89-4954-b86c-00e2c4279a8f", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read DocumentReference resources in their own compartment.", - "userConsentDisplayName": "user.DocumentReference.read", - "value": "user.DocumentReference.read" - }, - { - "adminConsentDescription": "Allows user to read DiagnosticReport resources in their own compartment.", - "adminConsentDisplayName": "user.DiagnosticReport.read", - "id": "588567a0-59db-4598-8bd7-0cbea9ff1811", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read DiagnosticReport resources in their own compartment.", - "userConsentDisplayName": "user.DiagnosticReport.read", - "value": "user.DiagnosticReport.read" - }, - { - "adminConsentDescription": "Allows user to read Encounter resources in their own compartment.", - "adminConsentDisplayName": "user.Encounter.read", - "id": "0e5be5d5-7b95-4583-aa3c-2de990f139c9", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Encounter resources in their own compartment.", - "userConsentDisplayName": "user.Encounter.read", - "value": "user.Encounter.read" - }, - { - "adminConsentDescription": "Allows user to read Goal resources in their own compartment.", - "adminConsentDisplayName": "user.Goal.read", - "id": "81d580ea-26f6-4822-9d91-31fb29019023", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Goal resources in their own compartment.", - "userConsentDisplayName": "user.Goal.read", - "value": "user.Goal.read" - }, - { - "adminConsentDescription": "Allows user to read Location resources in their own compartment.", - "adminConsentDisplayName": "user.Location.read", - "id": "cf8b4a64-fb79-401f-94a4-28d9d7cd6a8d", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Location resources in their own compartment.", - "userConsentDisplayName": "user.Location.read", - "value": "user.Location.read" - }, - { - "adminConsentDescription": "Allows user to read MedicationRequest resources in their own compartment.", - "adminConsentDisplayName": "user.MedicationRequest.read", - "id": "c1519c05-9e3c-4656-844a-c83845bbaa9a", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read MedicationRequest resources in their own compartment.", - "userConsentDisplayName": "user.MedicationRequest.read", - "value": "user.MedicationRequest.read" - }, - { - "adminConsentDescription": "Allows user to read Observation resources in their own compartment.", - "adminConsentDisplayName": "user.Observation.read", - "id": "556e34b1-56e8-4c27-b6be-679d856c0efa", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Observation resources in their own compartment.", - "userConsentDisplayName": "user.Observation.read", - "value": "user.Observation.read" - }, - { - "adminConsentDescription": "Allows user to read Organization resources in their own compartment.", - "adminConsentDisplayName": "user.Organization.read", - "id": "e75606ef-f141-4339-a248-f4c9b07886b2", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Organization resources in their own compartment.", - "userConsentDisplayName": "user.Organization.read", - "value": "user.Organization.read" - }, - { - "adminConsentDescription": "Allows user to read Patient resources in their own compartment.", - "adminConsentDisplayName": "user.Patient.read", - "id": "56998e01-1f00-4832-a130-c358e252acf2", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Patient resources in their own compartment.", - "userConsentDisplayName": "user.Patient.read", - "value": "user.Patient.read" - }, - { - "adminConsentDescription": "Allows user to read Practitioner resources in their own compartment.", - "adminConsentDisplayName": "user.Practitioner.read", - "id": "079186df-3044-4484-a785-d9750101f8f3", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Practitioner resources in their own compartment.", - "userConsentDisplayName": "user.Practitioner.read", - "value": "user.Practitioner.read" - }, - { - "adminConsentDescription": "Allows user to read Procedure resources in their own compartment.", - "adminConsentDisplayName": "user.Procedure.read", - "id": "81d46baa-aaff-454b-9a35-b6fdaa0eb2d9", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Procedure resources in their own compartment.", - "userConsentDisplayName": "user.Procedure.read", - "value": "user.Procedure.read" - }, - { - "adminConsentDescription": "Allows user to read Provenance resources in their own compartment.", - "adminConsentDisplayName": "user.Provenance.read", - "id": "8d821765-6bbb-4f52-8b7f-0dfe9ce5cb1e", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Provenance resources in their own compartment.", - "userConsentDisplayName": "user.Provenance.read", - "value": "user.Provenance.read" - }, - { - "adminConsentDescription": "Allows a user to read Location resources in a patient's compartment.", - "adminConsentDisplayName": "patient.Location.read", - "id": "6fbb6a2c-cd2f-486c-a421-b188f2184df8", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows a user to read Location resources in a patient's compartment.", - "userConsentDisplayName": "patient.Location.read", - "value": "patient.Location.read" - }, - { - "adminConsentDescription": "Allows user to read Immunization resources in their compartment.", - "adminConsentDisplayName": "user.Immunization.read", - "id": "97d73b5a-b052-4953-a6da-3e3f159a2f85", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allows user to read Immunization resources in their compartment.", - "userConsentDisplayName": "user.Immunization.read", - "value": "user.Immunization.read" - }, - { - "adminConsentDescription": "Allow the application to access Azure Healthcare APIs on behalf of the signed-in user.", - "adminConsentDisplayName": "Access Azure Healthcare APIs", - "id": "db75143a-8f20-4238-9450-8b73ef4992f4", - "isEnabled": true, - "lang": null, - "origin": "Application", - "type": "User", - "userConsentDescription": "Allow the application to access Azure Healthcare APIs on your behalf.", - "userConsentDisplayName": "Access Azure Healthcare APIs", - "value": "user_impersonation" +{ + "acceptMappedClaims": true, + "oauth2PermissionScopes": [ + { + "adminConsentDescription": "Allows user to read all resources in a patient's compartment.", + "adminConsentDisplayName": "patient.all.read", + "id": "c71e9482-f052-461b-80e1-7cfeba7b2b12", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read all resources in a patient's compartment.", + "userConsentDisplayName": "patient.all.read", + "value": "patient.all.read" + }, + { + "adminConsentDescription": "Allows a user to read all resources in their compartment.", + "adminConsentDisplayName": "user.all.read", + "id": "5a03b38d-4081-4265-9558-aab5f2a18b8b", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows a user to read all resources in their compartment.", + "userConsentDisplayName": "user.all.read", + "value": "user.all.read" + }, + { + "adminConsentDescription": "Grants permission to obtain launch context.", + "adminConsentDisplayName": "launch", + "id": "fa5f9b76-5f20-4466-8b3d-6718de9744e2", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Grants permission to obtain launch context.", + "userConsentDisplayName": "launch", + "value": "launch" + }, + { + "adminConsentDescription": "Asks for a patient to be selected at launch time.", + "adminConsentDisplayName": "launch.patient", + "id": "f6c8eb20-e799-4de7-a7ce-74ca0c7270e1", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Asks for a patient to be selected at launch time.", + "userConsentDisplayName": "launch.patient", + "value": "launch.patient" + }, + { + "adminConsentDescription": "Grants permission for a refresh token to be used to obtain a new access token as long as the user is still online.", + "adminConsentDisplayName": "online_access", + "id": "8f4fe9ac-b7f2-43ca-a0ef-070f4a8ae5dc", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Grants permission for a refresh token to be used to obtain a new access token as long as the user is still online.", + "userConsentDisplayName": "online_access", + "value": "online_access" + }, + { + "adminConsentDescription": "Grants permission to read information about the current logged-in user.", + "adminConsentDisplayName": "fhirUser", + "id": "a86144c7-3e19-4b56-9675-15803eb1e617", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Grants permission to read information about the current logged-in user.", + "userConsentDisplayName": "fhirUser", + "value": "fhirUser" + }, + { + "adminConsentDescription": "Allows user to read Medication resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Medication.read", + "id": "058fa58e-ac09-4308-970e-2f2da3bf49b4", + "isEnabled": true, + "type": "User", + "userConsentDescription": "samples readAllows user to read Medication resources in a patient's compartment.", + "userConsentDisplayName": "patient.Medication.read", + "value": "patient.Medication.read" + }, + { + "adminConsentDescription": "Allows user to read Medication resources in their own compartment.", + "adminConsentDisplayName": "user.Medication.read", + "id": "e5a7cdb9-3edb-4b0a-a43d-40a377726680", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Medication resources in their own compartment.", + "userConsentDisplayName": "user.Medication.read", + "value": "user.Medication.read" + }, + { + "adminConsentDescription": "Allows user to read AllergyIntolerance resources in a patient's compartment.", + "adminConsentDisplayName": "patient.AllergyIntolerance.read", + "id": "fa23e5cb-b06f-4d07-bcf8-f5ce114dd847", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read AllergyIntolerance resources in a patient's compartment.", + "userConsentDisplayName": "patient.AllergyIntolerance.read", + "value": "patient.AllergyIntolerance.read" + }, + { + "adminConsentDescription": "Allows user to read AllergyIntolerance resources in their own compartment.", + "adminConsentDisplayName": "user.AllergyIntolerance.read", + "id": "263687ba-ab05-41b1-98ad-f057c7365c91", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read AllergyIntolerance resources in their own compartment.", + "userConsentDisplayName": "user.AllergyIntolerance.read", + "value": "user.AllergyIntolerance.read" + }, + { + "adminConsentDescription": "Allows user to read CarePlan resources in their own compartment.", + "adminConsentDisplayName": "user.CarePlan.read", + "id": "c2c62692-9cd2-4612-9f15-cf5641284e41", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read CarePlan resources in their own compartment.", + "userConsentDisplayName": "user.CarePlan.read", + "value": "user.CarePlan.read" + }, + { + "adminConsentDescription": "Allows user to read CarePlan resources in a patient's compartment.", + "adminConsentDisplayName": "patient.CarePlan.read", + "id": "4fcc09b8-fd6b-430f-9b2b-7bbd2c2b7e8f", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read CarePlan resources in a patient's compartment.", + "userConsentDisplayName": "patient.CarePlan.read", + "value": "patient.CarePlan.read" + }, + { + "adminConsentDescription": "Allows user to read CareTeam resources in a patient's compartment.", + "adminConsentDisplayName": "patient.CareTeam.read", + "id": "4860ad86-f40e-4e2b-8661-ba03ee154b19", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read CareTeam resources in a patient's compartment.", + "userConsentDisplayName": "patient.CareTeam.read", + "value": "patient.CareTeam.read" + }, + { + "adminConsentDescription": "Allows user to read Condition resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Condition.read", + "id": "60fd617d-0d96-4c44-9cf3-ee91c0c45161", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Condition resources in a patient's compartment.", + "userConsentDisplayName": "patient.Condition.read", + "value": "patient.Condition.read" + }, + { + "adminConsentDescription": "Allows user to read Device resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Device.read", + "id": "f7b318b5-9bf5-46d0-8701-845c568925d9", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Device resources in a patient's compartment.", + "userConsentDisplayName": "patient.Device.read", + "value": "patient.Device.read" + }, + { + "adminConsentDescription": "Allows user to read DiagnosticReport resources in a patient's compartment.", + "adminConsentDisplayName": "patient.DiagnosticReport.read", + "id": "ef9475b2-f7da-4a86-b385-9fffe030c310", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read DiagnosticReport resources in a patient's compartment.", + "userConsentDisplayName": "patient.DiagnosticReport.read", + "value": "patient.DiagnosticReport.read" + }, + { + "adminConsentDescription": "Allows user to read DocumentReference resources in a patient's compartment.", + "adminConsentDisplayName": "patient.DocumentReference.read", + "id": "e2a5290a-59c6-4847-af7f-c5b16c692f24", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read DocumentReference resources in a patient's compartment.", + "userConsentDisplayName": "patient.DocumentReference.read", + "value": "patient.DocumentReference.read" + }, + { + "adminConsentDescription": "Allows user to read Encounter resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Encounter.read", + "id": "9e7cdd6e-af8a-4e6d-9170-4274b35864bc", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Encounter resources in a patient's compartment.", + "userConsentDisplayName": "patient.Encounter.read", + "value": "patient.Encounter.read" + }, + { + "adminConsentDescription": "Allows user to read Goal resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Goal.read", + "id": "e6e32ed0-c9a2-4f1b-adb5-e3d59e47bb54", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Goal resources in a patient's compartment.", + "userConsentDisplayName": "patient.Goal.read", + "value": "patient.Goal.read" + }, + { + "adminConsentDescription": "Allows user to read Immunization resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Immunization.read", + "id": "f6c2728b-b49d-4d10-bb69-7798f1603807", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Immunization resources in a patient's compartment.", + "userConsentDisplayName": "patient.Immunization.read", + "value": "patient.Immunization.read" + }, + { + "adminConsentDescription": "Allows user to read MedicationRequest resources in a patient's compartment.", + "adminConsentDisplayName": "patient.MedicationRequest.read", + "id": "16352d13-6c69-4eee-adbb-f7420b3f252b", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read MedicationRequest resources in a patient's compartment.", + "userConsentDisplayName": "patient.MedicationRequest.read", + "value": "patient.MedicationRequest.read" + }, + { + "adminConsentDescription": "Allows user to read Observation resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Observation.read", + "id": "890da85b-b5ad-4981-8966-4b80fd75a5b8", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Observation resources in a patient's compartment.", + "userConsentDisplayName": "patient.Observation.read", + "value": "patient.Observation.read" + }, + { + "adminConsentDescription": "Allows user to read Organization resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Organization.read", + "id": "81882045-ad54-4a5f-926c-a2a09d7dd2b5", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Organization resources in a patient's compartment.", + "userConsentDisplayName": "patient.Organization.read", + "value": "patient.Organization.read" + }, + { + "adminConsentDescription": "Allows user to read Patient resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Patient.read", + "id": "d23f0b68-a2f5-4647-987b-b58fdd86b49d", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Patient resources in a patient's compartment.", + "userConsentDisplayName": "patient.Patient.read", + "value": "patient.Patient.read" + }, + { + "adminConsentDescription": "Allows user to read Practitioner resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Practitioner.read", + "id": "ad27d725-86ff-4bc9-86fb-afdb2f007089", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Practitioner resources in a patient's compartment.", + "userConsentDisplayName": "patient.Practitioner.read", + "value": "patient.Practitioner.read" + }, + { + "adminConsentDescription": "Allows user to read Procedure resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Procedure.read", + "id": "be1c7593-9057-4947-a456-424dde696627", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Procedure resources in a patient's compartment.", + "userConsentDisplayName": "patient.Procedure.read", + "value": "patient.Procedure.read" + }, + { + "adminConsentDescription": "Allows user to read Provenance resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Provenance.read", + "id": "d56c68f3-ec5f-4e12-82cc-afa8921337f0", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Provenance resources in a patient's compartment.", + "userConsentDisplayName": "patient.Provenance.read", + "value": "patient.Provenance.read" + }, + { + "adminConsentDescription": "Allows user to read PractitionerRole resources in a patient's compartment.", + "adminConsentDisplayName": "patient.PractitionerRole.read", + "id": "1d6a9f65-62f4-42b0-93d7-fc3437112f46", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read PractitionerRole resources in a patient's compartment.", + "userConsentDisplayName": "patient.PractitionerRole.read", + "value": "patient.PractitionerRole.read" + }, + { + "adminConsentDescription": "Allows user to read PractitionerRole resources in their own compartment.", + "adminConsentDisplayName": "user.PractitionerRole.read", + "id": "ae77fe95-13db-47f8-968c-5eee9d973273", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read PractitionerRole resources in their own compartment.", + "userConsentDisplayName": "user.PractitionerRole.read", + "value": "user.PractitionerRole.read" + }, + { + "adminConsentDescription": "Allows user to read CareTeam resources in their own compartment.", + "adminConsentDisplayName": "user.CareTeam.read", + "id": "3cb5f829-1e8d-4224-9e87-678b02c8f9b1", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read CareTeam resources in their own compartment.", + "userConsentDisplayName": "user.CareTeam.read", + "value": "user.CareTeam.read" + }, + { + "adminConsentDescription": "Allows user to read Condition resources in their own compartment.", + "adminConsentDisplayName": "user.Condition.read", + "id": "dd554abf-e473-4190-8382-9b096fe49efa", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Condition resources in their own compartment.", + "userConsentDisplayName": "user.Condition.read", + "value": "user.Condition.read" + }, + { + "adminConsentDescription": "Allows user to read Device resources in their own compartment.", + "adminConsentDisplayName": "user.Device.read", + "id": "a246e7b9-d55c-43a2-9b5a-b3341bc1a57d", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Device resources in their own compartment.", + "userConsentDisplayName": "user.Device.read", + "value": "user.Device.read" + }, + { + "adminConsentDescription": "Allows user to read DocumentReference resources in their own compartment.", + "adminConsentDisplayName": "user.DocumentReference.read", + "id": "23b15307-5f89-4954-b86c-00e2c4279a8f", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read DocumentReference resources in their own compartment.", + "userConsentDisplayName": "user.DocumentReference.read", + "value": "user.DocumentReference.read" + }, + { + "adminConsentDescription": "Allows user to read DiagnosticReport resources in their own compartment.", + "adminConsentDisplayName": "user.DiagnosticReport.read", + "id": "588567a0-59db-4598-8bd7-0cbea9ff1811", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read DiagnosticReport resources in their own compartment.", + "userConsentDisplayName": "user.DiagnosticReport.read", + "value": "user.DiagnosticReport.read" + }, + { + "adminConsentDescription": "Allows user to read Encounter resources in their own compartment.", + "adminConsentDisplayName": "user.Encounter.read", + "id": "0e5be5d5-7b95-4583-aa3c-2de990f139c9", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Encounter resources in their own compartment.", + "userConsentDisplayName": "user.Encounter.read", + "value": "user.Encounter.read" + }, + { + "adminConsentDescription": "Allows user to read Goal resources in their own compartment.", + "adminConsentDisplayName": "user.Goal.read", + "id": "81d580ea-26f6-4822-9d91-31fb29019023", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Goal resources in their own compartment.", + "userConsentDisplayName": "user.Goal.read", + "value": "user.Goal.read" + }, + { + "adminConsentDescription": "Allows user to read Location resources in their own compartment.", + "adminConsentDisplayName": "user.Location.read", + "id": "cf8b4a64-fb79-401f-94a4-28d9d7cd6a8d", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Location resources in their own compartment.", + "userConsentDisplayName": "user.Location.read", + "value": "user.Location.read" + }, + { + "adminConsentDescription": "Allows user to read MedicationRequest resources in their own compartment.", + "adminConsentDisplayName": "user.MedicationRequest.read", + "id": "c1519c05-9e3c-4656-844a-c83845bbaa9a", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read MedicationRequest resources in their own compartment.", + "userConsentDisplayName": "user.MedicationRequest.read", + "value": "user.MedicationRequest.read" + }, + { + "adminConsentDescription": "Allows user to read Observation resources in their own compartment.", + "adminConsentDisplayName": "user.Observation.read", + "id": "556e34b1-56e8-4c27-b6be-679d856c0efa", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Observation resources in their own compartment.", + "userConsentDisplayName": "user.Observation.read", + "value": "user.Observation.read" + }, + { + "adminConsentDescription": "Allows user to read Organization resources in their own compartment.", + "adminConsentDisplayName": "user.Organization.read", + "id": "e75606ef-f141-4339-a248-f4c9b07886b2", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Organization resources in their own compartment.", + "userConsentDisplayName": "user.Organization.read", + "value": "user.Organization.read" + }, + { + "adminConsentDescription": "Allows user to read Patient resources in their own compartment.", + "adminConsentDisplayName": "user.Patient.read", + "id": "56998e01-1f00-4832-a130-c358e252acf2", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Patient resources in their own compartment.", + "userConsentDisplayName": "user.Patient.read", + "value": "user.Patient.read" + }, + { + "adminConsentDescription": "Allows user to read Practitioner resources in their own compartment.", + "adminConsentDisplayName": "user.Practitioner.read", + "id": "079186df-3044-4484-a785-d9750101f8f3", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Practitioner resources in their own compartment.", + "userConsentDisplayName": "user.Practitioner.read", + "value": "user.Practitioner.read" + }, + { + "adminConsentDescription": "Allows user to read Procedure resources in their own compartment.", + "adminConsentDisplayName": "user.Procedure.read", + "id": "81d46baa-aaff-454b-9a35-b6fdaa0eb2d9", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Procedure resources in their own compartment.", + "userConsentDisplayName": "user.Procedure.read", + "value": "user.Procedure.read" + }, + { + "adminConsentDescription": "Allows user to read Provenance resources in their own compartment.", + "adminConsentDisplayName": "user.Provenance.read", + "id": "8d821765-6bbb-4f52-8b7f-0dfe9ce5cb1e", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Provenance resources in their own compartment.", + "userConsentDisplayName": "user.Provenance.read", + "value": "user.Provenance.read" + }, + { + "adminConsentDescription": "Allows a user to read Location resources in a patient's compartment.", + "adminConsentDisplayName": "patient.Location.read", + "id": "6fbb6a2c-cd2f-486c-a421-b188f2184df8", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows a user to read Location resources in a patient's compartment.", + "userConsentDisplayName": "patient.Location.read", + "value": "patient.Location.read" + }, + { + "adminConsentDescription": "Allows user to read Immunization resources in their compartment.", + "adminConsentDisplayName": "user.Immunization.read", + "id": "97d73b5a-b052-4953-a6da-3e3f159a2f85", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allows user to read Immunization resources in their compartment.", + "userConsentDisplayName": "user.Immunization.read", + "value": "user.Immunization.read" + }, + { + "adminConsentDescription": "Allow the application to access Azure Healthcare APIs on behalf of the signed-in user.", + "adminConsentDisplayName": "Access Azure Healthcare APIs", + "id": "db75143a-8f20-4238-9450-8b73ef4992f4", + "isEnabled": true, + "type": "User", + "userConsentDescription": "Allow the application to access Azure Healthcare APIs on your behalf.", + "userConsentDisplayName": "Access Azure Healthcare APIs", + "value": "user_impersonation" } -] \ No newline at end of file + ] +} \ No newline at end of file