Set up SSO with Auth0
This guide explains how to set up single sign-on features (SSO) with Auth0
This guide expands Set up SMARTbox.
Create an application in Auth0
To create an application:
- Login to the Auth0
- Open the
Applications
page - Press the
Create Application
button - Give the name of the application
- Choose the type of application. Consider, Native type
- Press the
Create
button
After the app is created add the details:
- Application callback URLs:
http://localhost:8888/tenant/my-clinic/patient/auth/callback/?
- Press the
Save Changes
button
Open the Advanced settings
of the application and copy:
OAuth Authorization URL
OAuth Token URL
OAuth User Info URL
Create a user in Auth0
To create a new user:
- Open the
Users
page - Press the
Create User
button - Provide email and password
- Press the
Create
button
Copy the user_id
. It looks like auth0|6310e2d143b66b669906d775
Create a Tenant in Aidbox Portal
As the administrator of the Portal create an Tenant
resource. Please, see What is Tenant for more details.
id: my-clinic
resourceType: Tenant
name: My Clinic Name
logoUrl: https://example.com/my-clinic-logo.png
identityProvider:
scopes:
- user
- read:org
- openid
- profile
system: aidbox:tenant:my-clinic
userinfo_endpoint: https://dev-nei1uq73.us.auth0.com/userinfo
authorize_endpoint: https://dev-nei1uq73.us.auth0.com/authorize
token_endpoint: https://dev-nei1uq73.us.auth0.com/oauth/token
client:
id: ziW...lv0
secret: 7HoQ...gvb
The URLs copied from the Auth0 are used here:
OAuth Authorization URL as authorize_endpoint
OAuth Token URL as token_endpoint
OAuth User Info URL as userinfo_endpoint
It's important to provide the system
attribute
Create a user in Aidbox Portal
The user should be linked to a Patient to be able to launch SMART Apps. And at the same time, it should be related to the Auth0 user. Please, see What is Tenant for more details.
id: test-user-1
resourceType: User
identifier:
- value: auth0|6310e2d143b66b669906d775
system: aidbox:tenant:my-clinic
fhirUser:
id: test-pt-1
resourceType: Patient
roles:
- type: patient
active: true
meta:
tenant:
id: my-clinic
resourceType: Tenant
1. identifier
contains the link to the Auth0 user 2. fhirUser
links the user to the Patient
Checking it works together
- Open the link
https://f81a-5-161-99-84.ngrok.io/tenant/my-clinic/patient/portal
in the Invisible (Stealth) mode - Click the
Sign In
link - Enter
email
andpassword
of the user, we created in the Auth0 - Press the
Login
button
Launch the Growth Chart
- On the SMARTbox page
Applications
- Press the
Launch
button against the Growth Chart application - Press the
Allow
button on the consent screen - Get the Growth Chart works
Last updated 2025-05-07T10:12:39Z