In a cloud infrastructure, a multi-tenant architecture means that several customers share one installation. This mutualization generally enables economies of scale.
First, we'll compare it with the simple tenant approach, then detail the advantages and limitations of multi-tenant architectures with Keycloak. Finally, we'll show how SaaS solutions for hosting Keycloak can meet these challenges.
In this architecture, a Keycloak installation is associated with a single tenant and application. Each of these deployments has its own domain and connection theme.
Pro :
Cons :
Multi-realm architecture means that a single Keycloak instance contains one realm per tenant.
Pros:
Cons:
Multi-client architecture means a single realm for all users and stakeholders. With this architecture, the management of user roles is delegated to the application. By default, all users are able to "see" all clients within the realm.
Pros:
Cons:
Keycloak v25 will introduce a concept of organization within the kingdoms that will act as tenants.
The organization concept reinforces partitioning within a deployment. Tenants containing users can be grouped within an organization. Creating several organizations within a single realm will be possible, adding more depth to realms.
For obvious security reasons, our architecture is single-tenant, enabling us to isolate our customers completely. In the event of a problem or outage, this will not impact all our customers. Our product and our expertise enable us to deploy, observe and maintain hundreds of Keycloaks in operational condition every day.
When it comes to multi-tenancy at Cloud-IAM, we have two options: