Update login theme to login v2

Fixes: #29009

Signed-off-by: Hynek Mlnarik <hmlnarik@redhat.com>
This commit is contained in:
Hynek Mlnarik 2024-07-18 09:50:47 +02:00 committed by Hynek Mlnařík
parent ab6ca323db
commit a7374f92be
4 changed files with 14 additions and 6 deletions

View file

@ -59,7 +59,9 @@ public class Profile {
ADMIN2("New Admin Console", Type.DEFAULT, Feature.ADMIN_API), ADMIN2("New Admin Console", Type.DEFAULT, Feature.ADMIN_API),
LOGIN2("New Login Theme", Type.EXPERIMENTAL), LOGIN2("New Login Theme", Type.DEFAULT),
LOGIN1("Legacy Login Theme", Type.DEPRECATED),
DOCKER("Docker Registry protocol", Type.DISABLED_BY_DEFAULT), DOCKER("Docker Registry protocol", Type.DISABLED_BY_DEFAULT),

View file

@ -49,3 +49,9 @@ For more details, see link:{adminguide_link}#_ldap_connection_pool[Configuring t
The `java-keystore` key provider, which allows loading a realm key from an external java keystore file, has been modified to manage all {project_name} algorithms. Besides, the keystore and key secrets, needed to retrieve the actual key from the store, can be configured using the link:{adminguide_link}#_vault-administration[vault]. Therefore a {project_name} realm can externalize any key to the encrypted file without sensitive data stored in the database. The `java-keystore` key provider, which allows loading a realm key from an external java keystore file, has been modified to manage all {project_name} algorithms. Besides, the keystore and key secrets, needed to retrieve the actual key from the store, can be configured using the link:{adminguide_link}#_vault-administration[vault]. Therefore a {project_name} realm can externalize any key to the encrypted file without sensitive data stored in the database.
For more information about this subject, see link:{adminguide_link}#realm_keys[Configuring realm keys]. For more information about this subject, see link:{adminguide_link}#realm_keys[Configuring realm keys].
= Deprecating `keycloak` login theme
The `keycloak` login theme has been deprecated in favour of the new `keycloak.v2` and will be removed in a future version.
While it remains the default for the new realms for compatibility reasons, it is strongly recommended to switch all the
realm themes to `keycloak.v2`.

View file

@ -52,9 +52,9 @@ public interface ThemeSelectorProvider extends Provider {
return DEFAULT_V2; return DEFAULT_V2;
} }
if ((type == Theme.Type.LOGIN) && Profile.isFeatureEnabled(Profile.Feature.LOGIN2)) { // if ((type == Theme.Type.LOGIN) && Profile.isFeatureEnabled(Profile.Feature.LOGIN2)) {
return DEFAULT_V2; // return DEFAULT_V2;
} // }
return DEFAULT; return DEFAULT;
} }

View file

@ -59,7 +59,7 @@ public class ServerInfoTest extends AbstractKeycloakTest {
Assert.assertNames(info.getThemes().get("account"), "base", "keycloak.v3", "custom-account-provider"); Assert.assertNames(info.getThemes().get("account"), "base", "keycloak.v3", "custom-account-provider");
Assert.assertNames(info.getThemes().get("admin"), "base", "keycloak.v2"); Assert.assertNames(info.getThemes().get("admin"), "base", "keycloak.v2");
Assert.assertNames(info.getThemes().get("email"), "base", "keycloak"); Assert.assertNames(info.getThemes().get("email"), "base", "keycloak");
Assert.assertNames(info.getThemes().get("login"), "address", "base", "environment-agnostic", "keycloak", "organization"); Assert.assertNames(info.getThemes().get("login"), "address", "base", "environment-agnostic", "keycloak", "keycloak.v2", "organization");
Assert.assertNames(info.getThemes().get("welcome"), "keycloak"); Assert.assertNames(info.getThemes().get("welcome"), "keycloak");
assertNotNull(info.getEnums()); assertNotNull(info.getEnums());