Skip to content

Commit 78b4d0f

Browse files
authored
Merge pull request #220496 from EXPEkesheth/patch-22
Update smart-on-fhir.md
2 parents b5deb97 + f11d62c commit 78b4d0f

File tree

1 file changed

+16
-18
lines changed

1 file changed

+16
-18
lines changed

articles/healthcare-apis/fhir/smart-on-fhir.md

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,9 @@ Substitutable Medical Applications and Reusable Technologies([SMART on FHIR](htt
1717
- Users accessing a FHIR repository with SMART on FHIR are restricted to resources associated with the user, rather than having access to all data in the repository.
1818
- Users have the ability to grant applications access to a limited set of their data by using SMART clinical scopes.
1919

20-
<!---SMART Implementation Guide v1.0.0 is supported by Azure Health Data Services and Azure API Management (APIM). This is our recommended approach, as it enabled Health IT developers to comply with 21st Century Act Criterion §170.315(g)(10) Standardized API for patient and population services.
20+
SMART Implementation Guide v1.0.0 is supported by Azure Health Data Services and Azure API Management (APIM). This is our recommended approach, as it enables Health IT developers to comply with 21st Century Act Criterion §170.315(g)(10) Standardized API for patient and population services.
2121

22-
--->
23-
One of the main purposes of the specification is to describe how an application should discover authentication endpoints for an FHIR server and start an authentication sequence. SMART on FHIR uses parameter naming conventions that aren’t immediately compatible with Azure Active Directory (Azure AD). Azure Health Data Services (FHIR Service) has a built-in Azure AD SMART on FHIR proxy that enables a subset of the SMART on FHIR launch sequences. Specifically, the proxy enables the [EHR launch sequence](https://hl7.org/fhir/smart-app-launch/#ehr-launch-sequence).
24-
25-
Below tutorial describes steps to enable SMART on FHIR applications with FHIR Service.
22+
Below tutorials provide steps to enable SMART on FHIR applications with FHIR Service.
2623

2724
## Prerequisites
2825

@@ -32,23 +29,24 @@ Below tutorial describes steps to enable SMART on FHIR applications with FHIR Se
3229
- [Register public client application in Azure AD](https://learn.microsoft.com/azure/healthcare-apis/azure-api-for-fhir/register-public-azure-ad-client-app)
3330
- After registering the application, make note of the applicationId for client application.
3431

35-
<!--- Tutorial : To enable SMART on FHIR using APIM, follow below steps
32+
## SMART on FHIR using samples (Recommended approach)
33+
3634
As a pre-requisite , ensure you have access to Azure Subscription of FHIR service, to create resources and add role assignments.
3735

38-
Step 1 : Set up FHIR SMART user role
36+
### Step 1 : Set up FHIR SMART user role
3937
Follow the steps listed under section [Manage Users: Assign Users to Role](https://learn.microsoft.com/azure/active-directory/fundamentals/active-directory-users-assign-role-azure-portal). Any user added to this role will be able to access the FHIR Service if their requests comply with the SMART on FHIR implementation Guide, such as request having access token which includes a fhirUser claim and a clinical scopes claim. The access granted to the users in this role will then be limited by the resources associated to their fhirUser compartment and the restrictions in the clinical scopes.
4038

41-
Step 2 : [Follow the steps](https://github.com/microsoft/fhir-server/tree/feature/smart-onc-g10-sample/samples/smart) for setting up the FHIR server integrated with APIM in production.
39+
### Step 2 : FHIR server integration with samples
40+
[Follow the steps](https://github.com/Azure-Samples/azure-health-data-services-samples/blob/main/samples/Patient%20and%20Population%20Services%20G10/docs/deployment.md) for integrating FHIR server with APIM in production.
4241

4342
This link provides sample code, which enables integration with FHIR server and other Azure Services (such as APIM, Azure functions and more).
4443

45-
[!Note]
46-
Samples are released under the MIT License and are not supported by Microsoft Support. Samples are provided to demonstrate how Azure Health Data Services can be used to pass the Inferno test for ONC (g)(10) compliance, using Azure Active Directory as the identity provider workflow.
44+
> [!NOTE]
45+
> These samples are open-source code, and you should review the information and licensing terms on GitHub before using it. They are not part of the Azure Health Data Service and are not supported by Microsoft Support. These samples can be used to demonstrate how Azure Health Data Services and other open-source tools can be used together to demonstrate ONC (g)(10) compliance, using Azure Active Directory as the identity provider workflow.
4746
48-
--->
4947

50-
Lets go over individual steps to enable SMART on FHIR
51-
## Step 1 : Set admin consent for your client application
48+
## SMART on FHIR Proxy
49+
### Step 1 : Set admin consent for your client application
5250

5351
To use SMART on FHIR, you must first authenticate and authorize the app. The first time you use SMART on FHIR, you also must get administrative consent to let the app access your FHIR resources.
5452

@@ -65,7 +63,7 @@ To add yourself or another user as owner of an app:
6563
5. Select **Add owners**, and then add yourself or the user you want to have admin consent.
6664
6. Select **Save**
6765

68-
## Step 2: Enable the SMART on FHIR proxy
66+
### Step 2: Enable the SMART on FHIR proxy
6967

7068

7169
SMART on FHIR requires that `Audience` has an identifier URI equal to the URI of the FHIR service. The standard configuration of the FHIR service uses an `Audience` value of `https://fhir.azurehealthcareapis.com`. However, you can also set a value matching the specific URL of your FHIR service (for example `https://MYFHIRAPI.fhir.azurehealthcareapis.com`). This is required when working with the SMART on FHIR proxy.
@@ -101,11 +99,11 @@ Add the reply URL to the public client application that you created earlier for
10199
<!---![Reply URL configured for the public client](media/tutorial-smart-on-fhir/configure-reply-url.png)--->
102100

103101

104-
## Step 3 : Get a test patient
102+
### Step 3 : Get a test patient
105103

106104
To test the FHIR service and the SMART on FHIR proxy, you'll need to have at least one patient in the database. If you've not interacted with the API yet, and you don't have data in the database, see [Access the FHIR service using Postman](./../fhir/use-postman.md) to load a patient. Make a note of the ID of a specific patient.
107105

108-
## Step 4 : Download the SMART on FHIR app launcher
106+
### Step 4 : Download the SMART on FHIR app launcher
109107

110108
The open-source [FHIR Server for Azure repository](https://github.com/Microsoft/fhir-server) includes a simple SMART on FHIR app launcher and a sample SMART on FHIR app. In this tutorial, use this SMART on FHIR launcher locally to test the setup.
111109

@@ -139,7 +137,7 @@ Use this command to run the application:
139137
dotnet run
140138
```
141139

142-
## Step 5 : Test the SMART on FHIR proxy
140+
### Step 5 : Test the SMART on FHIR proxy
143141

144142
After you start the SMART on FHIR app launcher, you can point your browser to `https://localhost:5001`, where you should see the following screen:
145143

@@ -162,6 +160,6 @@ Notice that the SMART on FHIR app launcher updates the **Launch URL** informatio
162160
![Screenshot showing SMART on FHIR app.](media/smart-on-fhir/smart-on-fhir-app.png)
163161

164162
Inspect the token response to see how the launch context fields are passed on to the app.
165-
163+
</span>
166164

167165
FHIR&#174; is a registered trademark of [HL7](https://hl7.org/fhir/) and is used with the permission of HL7.

0 commit comments

Comments
 (0)