+1 we have similar requirements where we like to use different themes for
hybrid mobile app clients and traditional responsive web (site) clients
Date: Thu, 31 Dec 2015 10:49:28 +0200
From: Thomas Raehalme <thomas.raehalme(a)aitiofinland.com>
Subject: Re: [keycloak-user] Different theme for each client
To: keycloak-user <keycloak-user(a)lists.jboss.org>
Message-ID:
<CAPyAMobFqJRKzfJdN9=-EUTxUKPr68vCwuwuKzQ9rwaoO6tuoA(a)mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
+1 as I have a similar use-case from a customer.
On Thu, Dec 31, 2015 at 10:46 AM, Travis De Silva <traviskds(a)gmail.com>
wrote:
Hi,
My vote is to provide this feature at a client level as per the original
request.
I think realms should be used for completely different domains when we
want to isolate users etc. Should not try and use it for something that it
was not intended in the design.
The reason why you might need theming at client level is iif you really
think that clients which are essentially different applications most of
the
time and each of these applications might have different look and
feel
themes (either due to different development teams or vendors building
different applications).
So when someone logins via KeyCloak, its true that we are logging into a
realm but for an end user, it is really logging into a application and
there is a need for the login page theme to look similar to the
application
look and feel.
Also I have a use case where I have a back office application that
requires login for admin users and then I have the front office of this
application where in addition to the admin users, you also can have other
users as well who can self register and login to the front end which is a
consumer facing site.
How I handle this is by having two clients in the same realm. This works
fine if you are happy with the same backend login theme to be there for
the
consumer facing frontend. But we cannot do that as the front end is
a
consumer facing SaaS site, so each front end needs to have the client's
website theme. This becomes very hard to do if we don't have theming at a
client level.
I came across this post from Bill a few months ago
http://lists.jboss.org/pipermail/keycloak-user/2015-July/002537.html
I am thinking to make use of the client variable that is available in
login.ftl and load different freemarker fragments that will then theme it
differently for each client. As mentioned by Bill, having many if
conditions might not be ideal but it might meet the requirement.
Cheers
Travis