PDC JWT Token
Understanding the WHO & WHAT ..
JWT Token
In this hands-on workshop, you'll learn how to implement enterprise-grade identity federation using Keycloak and Pentaho Data Catalog (PDC). We'll walk through establishing a clear separation of concerns where Keycloak manages WHO people are (identity + organizational structure) and PDC manages WHAT data they can access (Communities + data governance). This WHO/WHAT separation is the proven enterprise approach for scaling data governance across thousands of users.
By the end of this workshop, you will be able to:
Configure enterprise identity federation between Keycloak and PDC
Understand the role of JWT tokens in identity management
Implement secure authentication workflows using JWT tokens
Decode and analyze JWT token contents for troubleshooting
Map organizational hierarchies to data access permissions
Create scalable data governance frameworks that separate identity from authorization
Bridge organizational structures with data catalog security models
This workshop will demonstrate how JWT tokens serve as the essential bridge between Adventure Works' organizational hierarchy and PDC's data governance model, enabling seamless, automated, and secure data access control at enterprise scale.

Examine the PDC JWT Login token
We need to confirm that PDC can authenticate users through Keycloak and receive role information via JWT tokens.
Log into Data Catalog:
Username: [email protected]
Password: Welcome123!
Verify successful return to PDC with user context.
JWT Token
JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity-protected with a Message Authentication Code (MAC) and/or encrypted.
In a terminal enter the following command:
curl -k -L -X POST 'https://pdc.pentaho.lab/keycloak/realms/pdc/protocol/openid-connect/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=pdc-client' \
--data-urlencode 'grant_type=password' \
--data-urlencode '[email protected]' \
--data-urlencode 'password=Welcome123!' | jq -r '.access_token'

Copy the
access_token
value in the token_response.json to: https://jwt.io to decode it.

The scope
parameter directly controls what information Keycloak includes in the JWT token.
The JWT token essentially is the bridge between Adventure Works' organizational hierarchy and PDC's data governance model, enabling seamless, automated, and secure data access control.
Last updated
Was this helpful?