Query Connector IDP Configuration
The Query Connector delegates user authentication and authorization assignment to your organization’s identity provider (IdP). This ensures user access to protected parts of the application have the same level of protection as the rest of your enterprise applications.
Before using the Query Connector, a member of your IT Admin team who has access to your IdP will need to create and assign users to the correct application roles. Following are instructions for the IdPs the Query Connector supports.
Keycloak
Keycloak allows you to isolate role assignment to individual applications via client scopes. This will ensure the Query Connector role assignments don’t conflict with assignments in your other application clients or Keycloak realms.
- Follow the deployment instructions to set up Keycloak as your IdP for the Query Connector.
- Log into the Keycloak security admin console with an account that has
admin
role access. - Open the side navigation panel and navigate to Clients >
query_connector
-
Select the
Roles
tab and create the following three roles (case sensitive). For a detailed explanation for each role, refer to our user guide. You can add a description if you wish to make the roles understandable to other members of your organization.super-admin
(notice the hyphen)admin
standard
After creation, you should have the following three roles available for assignment: super admin, admin, and standard.
-
Navigate to the Users tab in the left side nav: you should see a list of all the users within your organization that have access to Keycloak. Based on your organization’s structure, assign users to the role they should have within the Query Connector by selecting a user, navigating to the
Role mapping
tab, clickingAssign role
, and filling out the associated details. -
Your users should be properly configured! To verify, have your users log in and check that they have appropriate permissions in the application.
- Standard users should only have access to the query execution flow.
-
Admin users should have access to all the pages standard users do, and also have access to the query and code libraries and the user management page.
-
Super admin users should have access to all the pages admin users do, and should also have access to the FHIR server configuration page and the audit log.
Microsoft Entra ID
Microsoft Entra allows you to isolate role assignment to individual enterprise applications. This will ensure that Query Connector role assignments don’t conflict with assignments in your other application clients or overall Azure organization.
-
Follow the deployment instructions to set up Entra as your IdP for the Query Connector.
-
Navigate to the Entra admin console for your organization. There are two places you’ll need to configure access. Make sure that the account that you’re using is an owner in the Enterprise application (this will allow you to assign roles).
And the app registration (which will allow you to create roles).
-
Navigate to the
App registrations
page under applications and click on theApp roles
tab. Create the following three roles by clickingCreate app role
at the top of the screen with the following values:- Super Admin
- Display name -
Super admin
- Allowed member types -
Users / Groups
- Value -
super-admin
(case sensitive, with the hyphen) - Description - Add a description that’ll help you remember what the role can do.
- Display name -
- Admin
- Display name -
Admin
- Allowed member types -
Users / Groups
- Value -
admin
(case sensitive) - Description - Add a description that’ll help you remember what the role can do.
- Display name -
- Standard
- Display name -
Standard
- Allowed member types -
Users / Groups
- Value -
standard
(case sensitive) - Description - Add a description that’ll help you remember what the role can do.
- Display name -
- Super Admin
-
Navigate to
Applications > Enterprise applications
and selectManage > Users and Groups
. Start the role assignment for each user by checking the box next to their name and then clickingEdit Assignment
-
Assign roles by selecting the
None selected
link on the pane that appears and then selecting the correct role based on your organization’s structure. Save the selection by hittingAssign
after the selection.
Azure should give you a confirmation after the assignment succeeds. -
Your users should be properly configured! To verify, have your users log in and check that they have appropriate permissions in the application.
- Standard users should only have access to the query execution flow.
-
Admin users should have access to all the pages standard users do, and should also have access to the query and code libraries and user management page.
-
Super admin users should have access to all the pages admin users do, and should also have access to the FHIR server configuration page and the audit log.