Keycloak主题未针对从应用程序登录的领域进行更新
我有一个在 docker 上运行的 KeyCloak 12.0.2 应用程序。现在我正在尝试更新 Realms 登录屏幕的主题。每当我从 Realm 主题设置 - UC1 - 打开 KeyCloak 实例更改主题时,就会出现正确选择的主题登录页面。没有问题!UC2 - 打开我的应用程序,单击登录,登录页面将始终具有 KeyCloak 主题,即使我尝试为 master 或特定领域选择不同的主题。
这是每当我从任何配置为使用 KeyCloak 作为 SSO 的应用程序访问这里时出现在我的登录屏幕上的主题,无论我始终从 Realm 设置中选择哪个主题 -
我已经在 KeyCloak 登录屏幕上进行了检查和配置,主题将根据 Master 领域的主题选择而改变 -
我对与主题缓存相关的 standalone.xml 文件进行了如下更改 -
<theme>
<staticMaxAge>-1</staticMaxAge>
<cacheThemes>false</cacheThemes>
<cacheTemplates>false</cacheTemplates>
<welcomeTheme>${env.KEYCLOAK_WELCOME_THEME:keycloak}</welcomeTheme>
<default>${env.KEYCLOAK_DEFAULT_THEME:keycloak}</default>
<dir>${jboss.home.dir}/themes</dir>
</theme>
我有点卡在这里,因为我必须根据 KeyCloak 中的领域添加多个主题。我还尝试重新启动运行 KeyCloak 的容器,但没有成功。
回答
经过大量挖掘,我发现我在错误的地方更改了主题。要更新 SSO 登录页面的主题,您需要使用 - Realm -> Clients -> Appropriate Client Name -> Theme 选择主题。
如果您尝试使用 Realm -> Realm Settings -> Themes 更改主题,则只会更改管理控制台的登录屏幕。