Graph Modeling OAuth2 Authentication Integration with GraphDB
09/04/2026
This guide outlines the procedure for implementing OAuth2 authentication between Graph Modeling (GM) and GraphDB using Keycloak as the Identity Provider (IdP).
Note
Please note that this topic is targeted primarily at existing Graph Modeling customers if they want to use this new functionality respectively if they do not use Keycloak. New Graph Modeling customers will be provided a preconfigured Keycloak realm supporting this functionality.
1. Keycloak Configuration (Identity Provider)
Before configuring the applications the Keycloak realm (typically poolparty) must be prepared with the appropriate client scopes and client definitions. This configuration is comprised of four phases:
Creating a Client Scope & Audience Mapping
Configuring the GraphDB Client
Configuring the Application Client
Assigning User Permission
2. Graph Modeling (GM) Application Configuration
To activate OAuth2 update the application configuration file. The property poolparty.graphdb.oauth.clientId is the minimum requirement to toggle this feature.
Configuration Key | Description | Default Value | Required |
|---|---|---|---|
| The GraphDB OAuth2 client ID defined in Keycloak. | Yes | |
| Authentication method. Allowed values: |
| No |
| Comma-separated list of OIDC scopes. |
| No |
3. GraphDB Database Configuration
The following properties must be set within GraphDB to enable OpenID Connect and OAuth2 authentication.
Configuration Key | Value | Notes |
|---|---|---|
|
| Enables OpenID Connect authentication. |
|
| Specifies the authentication database. |
|
| Uses your specific Keycloak realm URL. |
ImportantThis realm has to match the actual realm configured in Graph Modeling under | ||
|
| Must match the Keycloak Client ID. |
|
| Specifies token type for authentication. |
|
| Claim used to identify the user. |
|
| Specifies the OAuth2 Authorization Code flow. |
|
| Must match |
|
| Enforces audience claim validation. |
|
| Path to roles; |
|
| Fallback role if no claims are found. |
Tip
For more details on the configuration also refer to the following section.