Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
May 22, 2025 6:45:09 PM
May 20, 2025 8:34:23 AM
Content
Qlik Cloud is designed to support a single interactive Identity Provider (IdP) per tenant.
As my friend @DaveChannon explains in Why Qlik doesn't support multiple interactive identity providers on a Qlik Cloud tenant, only one interactive identity provider can be enabled at any one time for Qlik Cloud (Which includes Qlik Cloud Analytics and Qlik Talend Cloud Data Integration). Without restating the points Dave made, the short answer is we do not plan to change this as we don't consider this good practice.
So, if your organisation needs to support multiple IDPs, what can you do? There are many use-cases that require this, such as:
These are just a few examples but this is a very common use case for most large organisations. So what do you have to do? Well, you could solve this with multiple tenants, but that's often a high-maintenance solution and isn't ideal. That's why, as Dave mentioned, we recommend that customers use Identity federation to address this.
Identity federation is a mechanism that links a user's identity across multiple identity management systems, allowing them to access different applications and resources without needing separate logins or credentials. Almost all major providers support this. For example, these IDPs all support federation:
While this is not a 'how-to' article, at a high level, what I've set up is:
This may not always be what you want to do. You may wish to use the groups coming from Auth0 also, and that is possible, but not needed for my use case.
Finally, here are my users set up in Auth0:
So what happens when I log in?
First, let's look at jane@qmi.com. Jane is set up in KeyCloak. After opening the URL for our Qlik Cloud tenant, I am redirected to the keycloak login screen:
I can log in directly here or choose to sign in with Auth0. Jane logs into KeyCloak directly and is then sent back to the Qlik Tenant:
To understand what information Qlik Clouid has been provided, we can append "/api/v1/diagnose-claims" to the end of our tenant URL. This will show us the metadata Qlik has received about Jane, such as:
We are most concerned about Jane's groups, as that is how we will control access. Jane is in the Finance and Human Resources groups.
In our tenant, we have the following spaces and access rules:
Space Name | Space Type | Groups with Access |
External | Managed | External: Read Only |
External_development | Shared | Finance: full access Sales: full access Human Resources: full access |
Finance | Shared | Finance: Read Only |
Sales | Shared | Sales: Read Only |
Human Resources | Shared | Human Resources: Read Only |
So Jane sees the Finance, Human Resources, and External_development spaces:
As this user has never logged in before, KeyCloak asks for some details:
After logging in, we can look at the "/api/v1/diagnose-claims" endpoint to see the user's metadata. We see the External group, which we hard-coded for Auth0 users in KeyCloak:
And when looking at the user's space access, we can only see the External space as expected:
This is a simple example I put together in a couple of hours. I selected KeyCloak and Auth0 simply because I have some experience with them - most IDPs could do this (and also, I could have chosen to reverse the order and have Auth0 as the primary IDP).
Neither Qlik nor I make any specific recommendations as to what identity providers customers should use.
While we haven't looked at it here, it's also possible to use social services (such as LinkedIn, GitHub, Facebook, etc.) as external Identity providers, which may well be a better solution for some use-cases. And you can support many of these at the same time as your needs require.
If you require assistance in this, your friendly neighbourhood Qlik Services team can assist, as can our partners.