OAuth setup with Entra ID
This page is relevant for Hackolade Studio client connection to a Collibra instance using an identified user. It does not apply to a server or CLI instance of Hackolade Studio establishing a machine-to-machine connection to Collibra using a service account.
1. Register an Application in Microsoft Entra ID
Note
We start by the setup in Azure Entra ID
- Go to Azure Portal > Microsoft Entra ID > App registrations
- Click New registration
- Configure:
- Name (example):
Collibra Integration
- Supported account types: usually Single tenant
- After creation:
- Save Application (client) ID
- Save Directory (tenant) ID
More detailed instructions in the official Microsoft documentation
2. Configure API Permissions of the Application
- Go to API Permissions in the left panel
- Add:
User.Read(required)openid profile offline_access(optional)

- Click Grant admin consent
3. Retrieve OpenID Configuration from the Overview of the Application
Copy the Entra well-known endpoint:
https://login.microsoftonline.com/{tenant-id}/v2.0/.well-known/openid-configuration
Or:
Go to Overview > Endpoints
Copy and open the link from the OpenID Connect metadata document

From this JSON, extract:
jwks_uri→ used in Collibraissuer→ used in Collibra
4. Map Values to Collibra Configuration
Note
Need to configure Collibra using Collibra console
1. Open Collibra console: https://console-{company-domain}.collibra.com\ 2. Select your environment -> Data Governance Center > Configuration > Security configuration > JWT

Next properties should be mapped:
| Collibra JWT property name | From Entra ID | Example | Comment |
|---|---|---|---|
| JSON Web Key Set URL | jwks_uri - from well-known endpoint endpoint | https://login.microsoftonline.com/{tenant-id}/discovery/v2.0/keys | |
| JWT Token Types | at+jwt,jwt | Keep default Collibra's value (if not changed token configuration in Entra ID) | |
| JWT Algorithms | RS256 | Leave it blank (if not changed token configuration in Entra ID) | |
| JWT Issuer | issuer - from well-known endpoint endpoint | https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token | |
| JWT Audience | from Access token for Entra ID application | To determine the JWT Audience, retrieve an access token from Microsoft Entra ID and decode it (for example, using jwt.io or Postman). Note In some configurations, the Application ID URI may not be defined. In such cases, the audience is determined by the resource requested during token generation, so decoding the token is the only reliable method. | |
| JWT Principal ID Claim Name | One of the supported values from claims_supported - from well-known endpoint endpoint | preferred_username | Collibra uses sub by default. Enter the claim whose value is exactly the Collibra username, for example preferred_username when Collibra usernames are sign-in names. A Collibra user with this exact username must exist. See section 5 below. |
| JWT Maximum Clock Skew | Leave it blank |
5. How Collibra matches the token to a user
When you connect from Hackolade Studio, Microsoft Entra ID issues an access token for your user, and Hackolade Studio sends this token to Collibra. Collibra reads one value from the token and looks for a Collibra user with exactly this username. If no user matches, Collibra refuses the connection, even when all other JWT properties are correct.
An access token contains several fields, called claims. Each claim has a name and a value. For example, the decoded token of John Doe contains these claims, among others (Microsoft lists all of them in its access token claims reference, if you want to know what each claim contains):
sub: "AAAAAAAAAAAAAAAAAAAAAIkzqFVrSaSaFHy782bbtaQ"
preferred_username: "john.doe@yourcompany.com"
aud: "..."
iss: "..."
In the JWT Principal ID Claim Name property, you set which claim Collibra reads. The default value is sub, as described in the Collibra JWT authentication guide. Entra ID fills sub with an identifier generated for your application. The default value works only if your Collibra usernames contain exactly this identifier.
In this example, the Collibra username of John Doe is his sign-in name, john.doe@yourcompany.com. This value is in the preferred_username claim, not in sub. With sub, no user matches. With preferred_username, Collibra finds the user:

To check which claim to use for your organization:
- Retrieve an access token for a test user and decode it, as described for the JWT Audience above.
- In Collibra, open this user and note the username.
- In the decoded token, find the claim whose value is exactly this username, and enter the name of this claim in
JWT Principal ID Claim Name. If this claim issub, keep the default value.
If no claim of the token contains the Collibra username, add the missing claim in Entra ID as an optional claim (App registrations > your application > Token configuration), or align the Collibra usernames with a claim that the token already contains.
Note
The value of preferred_username can change in Entra ID, for example after a name change. When it changes, update the username in Collibra as well, otherwise Collibra refuses the connection of this user.