Keycloak is an open-source identity and access management solution that provides features such as Single Sign-On, social login, and user federation. It is widely used by organizations to secure their web applications and APIs.
One of the main advantages of Keycloak is its Java Admin Client, which allows developers to automate the management of Keycloak through Java code. The Java Admin Client provides a rich set of APIs that allow developers to perform a wide range of administrative tasks, such as creating and managing realms, users, roles, groups, and clients. In this hands-on blog series, we will work towards a fully automated configuration, exclusively using such Java code configurations. Whether you are a Keycloak beginner or an experienced developer, this blog series will provide valuable insights into the configuration of Keycloak using Java code and how it can make your life easier.
What we have seen so far:
- Identity and Access Management with Keycloak – In this blog post, we get to know some basic building blocks that we have at our disposal in Keycloak.
- Keycloak – Configuration as Code Pt. 1 – In this blog post, we cover how to create the basic project setup for our ‘Keycloak – Configuration as Code’ endeavour.
- Keycloak – Configuration as Code Pt. 2 – In this blog post, we add the Keycloak distribution to our project and containerize it with Docker.
Update of the Keycloak version
A CVE has been identified in the version of Keycloak we are currently using in this blog post series (20.0.3).
Hence, we will update it to the most recent version 20.0.5. We achieve this by updating the
and the ./Dockerfile:7
The Keycloak Java Admin Client
In this blog post (and the following), we will take a closer look at the Keycloak Java Admin Client and how it can help developers streamline their Keycloak management tasks. We will explore the features and capabilities of the Java Admin Client and provide examples of how to use it to configure Keycloak.
Kom in contact met ons als je vragen hebt of wanneer je klaar bent om gezamenlijk een project te starten!